1 /*-------------------------------------------------------------------------
4 * prototypes for postgres.c.
7 * Portions Copyright (c) 1996-2010, PostgreSQL Global Development Group
8 * Portions Copyright (c) 1994, Regents of the University of California
10 * $PostgreSQL: pgsql/src/include/tcop/tcopprot.h,v 1.102 2010/01/02 16:58:09 momjian Exp $
13 * This file was created so that other c files could get the two
14 * function prototypes without having to include tcop.h which single
15 * handedly includes the whole f*cking tree -- mer 5 Nov. 1991
17 *-------------------------------------------------------------------------
22 #include "executor/execdesc.h"
23 #include "nodes/parsenodes.h"
24 #include "utils/guc.h"
27 /* Required daylight between max_stack_depth and the kernel limit, in bytes */
28 #define STACK_DEPTH_SLOP (512 * 1024L)
30 extern CommandDest whereToSendOutput;
31 extern PGDLLIMPORT const char *debug_query_string;
32 extern int max_stack_depth;
33 extern int PostAuthDelay;
35 /* GUC-configurable parameters */
39 LOGSTMT_NONE, /* log no statements */
40 LOGSTMT_DDL, /* log data definition statements */
41 LOGSTMT_MOD, /* log modification statements, plus DDL */
42 LOGSTMT_ALL /* log all statements */
45 extern int log_statement;
47 extern List *pg_parse_and_rewrite(const char *query_string,
48 Oid *paramTypes, int numParams);
49 extern List *pg_parse_query(const char *query_string);
50 extern List *pg_analyze_and_rewrite(Node *parsetree, const char *query_string,
51 Oid *paramTypes, int numParams);
52 extern List *pg_analyze_and_rewrite_params(Node *parsetree,
53 const char *query_string,
54 ParserSetupHook parserSetup,
55 void *parserSetupArg);
56 extern PlannedStmt *pg_plan_query(Query *querytree, int cursorOptions,
57 ParamListInfo boundParams);
58 extern List *pg_plan_queries(List *querytrees, int cursorOptions,
59 ParamListInfo boundParams);
61 extern bool assign_max_stack_depth(int newval, bool doit, GucSource source);
63 extern void die(SIGNAL_ARGS);
64 extern void quickdie(SIGNAL_ARGS);
65 extern void StatementCancelHandler(SIGNAL_ARGS);
66 extern void FloatExceptionHandler(SIGNAL_ARGS);
67 extern void prepare_for_client_read(void);
68 extern void client_read_ended(void);
69 extern const char *process_postgres_switches(int argc, char *argv[],
71 extern int PostgresMain(int argc, char *argv[], const char *username);
72 extern long get_stack_depth_rlimit(void);
73 extern void ResetUsage(void);
74 extern void ShowUsage(const char *title);
75 extern int check_log_duration(char *msec_str, bool was_logged);
76 extern void set_debug_options(int debug_flag,
77 GucContext context, GucSource source);
78 extern bool set_plan_disabling_options(const char *arg,
79 GucContext context, GucSource source);
80 extern const char *get_stats_option_name(const char *arg);
82 #endif /* TCOPPROT_H */