Move logging.h and logging.c from src/fe_utils/ to src/common/.
The original placement of this module in src/fe_utils/ is ill-considered, because several src/common/ modules have dependencies on it, meaning that libpgcommon and libpgfeutils now have mutual dependencies. That makes it pointless to have distinct libraries at all. The intended design is that libpgcommon is lower-level than libpgfeutils, so only dependencies from the latter to the former are acceptable. We already have the precedent that fe_memutils and a couple of other modules in src/common/ are frontend-only, so it's not stretching anything out of whack to treat logging.c as a frontend-only module in src/common/. To the extent that such modules help provide a common frontend/backend environment for the rest of common/ to use, it's a reasonable design. (logging.c does not yet provide an ereport() emulation, but one can dream.) Hence, move these files over, and revert basically all of the build-system changes made by commit cc8d41511. There are no places that need to grow new dependencies on libpgcommon, further reinforcing the idea that this is the right solution. Discussion: https://postgr.es/m/a912ffff-f6e4-778a-c86a-cf5c47a12933@2ndquadrant.com
This commit is contained in:
parent
b71dad22ce
commit
fc9a62af3f
@ -65,9 +65,9 @@
|
||||
#include "catalog/pg_collation_d.h"
|
||||
#include "common/file_perm.h"
|
||||
#include "common/file_utils.h"
|
||||
#include "common/logging.h"
|
||||
#include "common/restricted_token.h"
|
||||
#include "common/username.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "fe_utils/string_utils.h"
|
||||
#include "getaddrinfo.h"
|
||||
#include "getopt_long.h"
|
||||
|
@ -7,13 +7,11 @@ subdir = src/bin/pg_archivecleanup
|
||||
top_builddir = ../../..
|
||||
include $(top_builddir)/src/Makefile.global
|
||||
|
||||
LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
|
||||
|
||||
OBJS = pg_archivecleanup.o $(WIN32RES)
|
||||
|
||||
all: pg_archivecleanup
|
||||
|
||||
pg_archivecleanup: $(OBJS) | submake-libpgport submake-libpgfeutils
|
||||
pg_archivecleanup: $(OBJS) | submake-libpgport
|
||||
$(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
|
||||
|
||||
install: all installdirs
|
||||
|
@ -17,7 +17,7 @@
|
||||
|
||||
#include "pg_getopt.h"
|
||||
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
|
||||
#include "access/xlog_internal.h"
|
||||
|
||||
|
@ -29,8 +29,8 @@
|
||||
#include "access/xlog_internal.h"
|
||||
#include "common/file_perm.h"
|
||||
#include "common/file_utils.h"
|
||||
#include "common/logging.h"
|
||||
#include "common/string.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "fe_utils/string_utils.h"
|
||||
#include "getopt_long.h"
|
||||
#include "libpq-fe.h"
|
||||
|
@ -20,7 +20,7 @@
|
||||
#include <unistd.h>
|
||||
|
||||
#include "common/file_perm.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
#include "libpq-fe.h"
|
||||
#include "access/xlog_internal.h"
|
||||
#include "getopt_long.h"
|
||||
|
@ -25,7 +25,7 @@
|
||||
#include "access/xlog_internal.h"
|
||||
#include "common/file_perm.h"
|
||||
#include "common/fe_memutils.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
#include "getopt_long.h"
|
||||
#include "libpq-fe.h"
|
||||
#include "libpq/pqsignal.h"
|
||||
|
@ -27,7 +27,7 @@
|
||||
#include "libpq-fe.h"
|
||||
#include "access/xlog_internal.h"
|
||||
#include "common/file_utils.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
|
||||
|
||||
/* fd and filename for currently open WAL file */
|
||||
|
@ -24,9 +24,9 @@
|
||||
#include "access/xlog_internal.h"
|
||||
#include "common/fe_memutils.h"
|
||||
#include "common/file_perm.h"
|
||||
#include "common/logging.h"
|
||||
#include "datatype/timestamp.h"
|
||||
#include "fe_utils/connect.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "port/pg_bswap.h"
|
||||
#include "pqexpbuffer.h"
|
||||
|
||||
|
@ -15,13 +15,11 @@ subdir = src/bin/pg_checksums
|
||||
top_builddir = ../../..
|
||||
include $(top_builddir)/src/Makefile.global
|
||||
|
||||
LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
|
||||
|
||||
OBJS= pg_checksums.o $(WIN32RES)
|
||||
|
||||
all: pg_checksums
|
||||
|
||||
pg_checksums: $(OBJS) | submake-libpgport submake-libpgfeutils
|
||||
pg_checksums: $(OBJS) | submake-libpgport
|
||||
$(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
|
||||
|
||||
install: all installdirs
|
||||
|
@ -23,7 +23,7 @@
|
||||
#include "common/controldata_utils.h"
|
||||
#include "common/file_perm.h"
|
||||
#include "common/file_utils.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
#include "getopt_long.h"
|
||||
#include "pg_getopt.h"
|
||||
#include "storage/bufpage.h"
|
||||
|
@ -15,13 +15,11 @@ subdir = src/bin/pg_controldata
|
||||
top_builddir = ../../..
|
||||
include $(top_builddir)/src/Makefile.global
|
||||
|
||||
LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
|
||||
|
||||
OBJS= pg_controldata.o $(WIN32RES)
|
||||
|
||||
all: pg_controldata
|
||||
|
||||
pg_controldata: $(OBJS) | submake-libpgport submake-libpgfeutils
|
||||
pg_controldata: $(OBJS) | submake-libpgport
|
||||
$(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
|
||||
|
||||
install: all installdirs
|
||||
|
@ -25,7 +25,7 @@
|
||||
#include "access/xlog_internal.h"
|
||||
#include "catalog/pg_control.h"
|
||||
#include "common/controldata_utils.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
#include "pg_getopt.h"
|
||||
#include "getopt_long.h"
|
||||
|
||||
|
@ -16,8 +16,6 @@ subdir = src/bin/pg_ctl
|
||||
top_builddir = ../../..
|
||||
include $(top_builddir)/src/Makefile.global
|
||||
|
||||
LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
|
||||
|
||||
# On Windows, we need to link with libpq, just for use of pqexpbuffer;
|
||||
# but let's not pull that in on platforms where we don't need it.
|
||||
ifeq ($(PORTNAME), win32)
|
||||
@ -30,7 +28,7 @@ OBJS= pg_ctl.o $(WIN32RES)
|
||||
|
||||
all: pg_ctl
|
||||
|
||||
pg_ctl: $(OBJS) | submake-libpgport submake-libpgfeutils $(SUBMAKE_LIBPQ)
|
||||
pg_ctl: $(OBJS) | submake-libpgport $(SUBMAKE_LIBPQ)
|
||||
$(CC) $(CFLAGS) $(OBJS) $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
|
||||
|
||||
install: all installdirs
|
||||
|
@ -26,7 +26,7 @@
|
||||
#include "catalog/pg_control.h"
|
||||
#include "common/controldata_utils.h"
|
||||
#include "common/file_perm.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
#include "getopt_long.h"
|
||||
#include "utils/pidfile.h"
|
||||
|
||||
|
@ -22,7 +22,6 @@
|
||||
#include <ctype.h>
|
||||
|
||||
#include "catalog/pg_class_d.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "fe_utils/string_utils.h"
|
||||
|
||||
|
||||
|
@ -35,7 +35,6 @@
|
||||
#include "pg_backup_db.h"
|
||||
#include "pg_backup_utils.h"
|
||||
#include "dumputils.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "fe_utils/string_utils.h"
|
||||
|
||||
#include "libpq/libpq-fs.h"
|
||||
|
@ -29,7 +29,7 @@
|
||||
#include "parallel.h"
|
||||
#include "pg_backup_utils.h"
|
||||
#include "common/file_utils.h"
|
||||
#include "fe_utils/logging.h"
|
||||
|
||||
|
||||
/*--------
|
||||
* Routines in the format interface
|
||||
|
@ -11,10 +11,10 @@
|
||||
*/
|
||||
#include "postgres_fe.h"
|
||||
|
||||
#include "dumputils.h"
|
||||
#include "fe_utils/connect.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "fe_utils/string_utils.h"
|
||||
|
||||
#include "dumputils.h"
|
||||
#include "parallel.h"
|
||||
#include "pg_backup_archiver.h"
|
||||
#include "pg_backup_db.h"
|
||||
|
@ -15,7 +15,7 @@
|
||||
#ifndef PG_BACKUP_UTILS_H
|
||||
#define PG_BACKUP_UTILS_H
|
||||
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
|
||||
typedef enum /* bits returned by set_dump_section */
|
||||
{
|
||||
|
@ -63,7 +63,6 @@
|
||||
#include "pg_backup_utils.h"
|
||||
#include "pg_dump.h"
|
||||
#include "fe_utils/connect.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "fe_utils/string_utils.h"
|
||||
|
||||
|
||||
|
@ -20,7 +20,6 @@
|
||||
#include "pg_dump.h"
|
||||
|
||||
#include "catalog/pg_class_d.h"
|
||||
#include "fe_utils/logging.h"
|
||||
|
||||
/*
|
||||
* Sort priority for database object types.
|
||||
|
@ -23,8 +23,8 @@
|
||||
#include "dumputils.h"
|
||||
#include "pg_backup.h"
|
||||
#include "common/file_utils.h"
|
||||
#include "common/logging.h"
|
||||
#include "fe_utils/connect.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "fe_utils/string_utils.h"
|
||||
|
||||
/* version string we expect back from pg_dump */
|
||||
|
@ -51,8 +51,6 @@
|
||||
#include "parallel.h"
|
||||
#include "pg_backup_utils.h"
|
||||
|
||||
#include "fe_utils/logging.h"
|
||||
|
||||
|
||||
static void usage(const char *progname);
|
||||
|
||||
|
@ -15,13 +15,11 @@ subdir = src/bin/pg_resetwal
|
||||
top_builddir = ../../..
|
||||
include $(top_builddir)/src/Makefile.global
|
||||
|
||||
LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
|
||||
|
||||
OBJS= pg_resetwal.o $(WIN32RES)
|
||||
|
||||
all: pg_resetwal
|
||||
|
||||
pg_resetwal: $(OBJS) | submake-libpgport submake-libpgfeutils
|
||||
pg_resetwal: $(OBJS) | submake-libpgport
|
||||
$(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
|
||||
|
||||
install: all installdirs
|
||||
|
@ -52,8 +52,8 @@
|
||||
#include "common/controldata_utils.h"
|
||||
#include "common/fe_memutils.h"
|
||||
#include "common/file_perm.h"
|
||||
#include "common/logging.h"
|
||||
#include "common/restricted_token.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "storage/large_object.h"
|
||||
#include "pg_getopt.h"
|
||||
#include "getopt_long.h"
|
||||
|
@ -16,7 +16,7 @@ top_builddir = ../../..
|
||||
include $(top_builddir)/src/Makefile.global
|
||||
|
||||
override CPPFLAGS := -I$(libpq_srcdir) -DFRONTEND $(CPPFLAGS)
|
||||
LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils $(libpq_pgport)
|
||||
LDFLAGS_INTERNAL += $(libpq_pgport)
|
||||
|
||||
OBJS = pg_rewind.o parsexlog.o xlogreader.o datapagemap.o timeline.o \
|
||||
fetch.o file_ops.o copy_fetch.o libpq_fetch.o filemap.o \
|
||||
@ -26,7 +26,7 @@ EXTRA_CLEAN = xlogreader.c
|
||||
|
||||
all: pg_rewind
|
||||
|
||||
pg_rewind: $(OBJS) | submake-libpq submake-libpgport submake-libpgfeutils
|
||||
pg_rewind: $(OBJS) | submake-libpq submake-libpgport
|
||||
$(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
|
||||
|
||||
xlogreader.c: % : $(top_srcdir)/src/backend/access/transam/%
|
||||
|
@ -14,7 +14,7 @@
|
||||
|
||||
#include "datapagemap.h"
|
||||
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
|
||||
struct datapagemap_iterator
|
||||
{
|
||||
|
@ -17,7 +17,7 @@
|
||||
#include "storage/block.h"
|
||||
#include "storage/relfilenode.h"
|
||||
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
|
||||
/* Configuration options */
|
||||
extern char *datadir_target;
|
||||
|
@ -7,13 +7,11 @@ subdir = src/bin/pg_test_fsync
|
||||
top_builddir = ../../..
|
||||
include $(top_builddir)/src/Makefile.global
|
||||
|
||||
LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
|
||||
|
||||
OBJS = pg_test_fsync.o $(WIN32RES)
|
||||
|
||||
all: pg_test_fsync
|
||||
|
||||
pg_test_fsync: $(OBJS) | submake-libpgport submake-libpgfeutils
|
||||
pg_test_fsync: $(OBJS) | submake-libpgport
|
||||
$(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
|
||||
|
||||
install: all installdirs
|
||||
|
@ -14,7 +14,7 @@
|
||||
|
||||
#include "getopt_long.h"
|
||||
#include "access/xlogdefs.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
|
||||
|
||||
/*
|
||||
|
@ -40,8 +40,8 @@
|
||||
#include "pg_upgrade.h"
|
||||
#include "catalog/pg_class_d.h"
|
||||
#include "common/file_perm.h"
|
||||
#include "common/logging.h"
|
||||
#include "common/restricted_token.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "fe_utils/string_utils.h"
|
||||
|
||||
#ifdef HAVE_LANGINFO_H
|
||||
|
@ -11,7 +11,6 @@ OBJS = pg_waldump.o compat.o xlogreader.o rmgrdesc.o \
|
||||
$(RMGRDESCOBJS) $(WIN32RES)
|
||||
|
||||
override CPPFLAGS := -DFRONTEND $(CPPFLAGS)
|
||||
LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
|
||||
|
||||
RMGRDESCSOURCES = $(sort $(notdir $(wildcard $(top_srcdir)/src/backend/access/rmgrdesc/*desc.c)))
|
||||
RMGRDESCOBJS = $(patsubst %.c,%.o,$(RMGRDESCSOURCES))
|
||||
@ -19,7 +18,7 @@ RMGRDESCOBJS = $(patsubst %.c,%.o,$(RMGRDESCSOURCES))
|
||||
|
||||
all: pg_waldump
|
||||
|
||||
pg_waldump: $(OBJS) | submake-libpgport submake-libpgfeutils
|
||||
pg_waldump: $(OBJS) | submake-libpgport
|
||||
$(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
|
||||
|
||||
xlogreader.c: % : $(top_srcdir)/src/backend/access/transam/%
|
||||
|
@ -21,7 +21,7 @@
|
||||
#include "access/xlog_internal.h"
|
||||
#include "access/transam.h"
|
||||
#include "common/fe_memutils.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
#include "getopt_long.h"
|
||||
#include "rmgrdesc.h"
|
||||
|
||||
|
@ -33,8 +33,8 @@
|
||||
|
||||
#include "postgres_fe.h"
|
||||
#include "common/int.h"
|
||||
#include "common/logging.h"
|
||||
#include "fe_utils/conditional.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "getopt_long.h"
|
||||
#include "libpq-fe.h"
|
||||
#include "portability/instr_time.h"
|
||||
|
@ -28,7 +28,8 @@
|
||||
|
||||
#include "libpq-fe.h"
|
||||
#include "pqexpbuffer.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
#include "fe_utils/print.h"
|
||||
#include "fe_utils/string_utils.h"
|
||||
|
||||
#include "common.h"
|
||||
@ -39,7 +40,6 @@
|
||||
#include "input.h"
|
||||
#include "large_obj.h"
|
||||
#include "mainloop.h"
|
||||
#include "fe_utils/print.h"
|
||||
#include "psqlscanslash.h"
|
||||
#include "settings.h"
|
||||
#include "variables.h"
|
||||
|
@ -6,7 +6,6 @@
|
||||
* src/bin/psql/common.c
|
||||
*/
|
||||
#include "postgres_fe.h"
|
||||
#include "common.h"
|
||||
|
||||
#include <ctype.h>
|
||||
#include <limits.h>
|
||||
@ -19,15 +18,16 @@
|
||||
#include <win32.h>
|
||||
#endif
|
||||
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
#include "fe_utils/mbprint.h"
|
||||
#include "fe_utils/string_utils.h"
|
||||
#include "portability/instr_time.h"
|
||||
|
||||
#include "settings.h"
|
||||
#include "command.h"
|
||||
#include "common.h"
|
||||
#include "copy.h"
|
||||
#include "crosstabview.h"
|
||||
#include "fe_utils/mbprint.h"
|
||||
#include "settings.h"
|
||||
|
||||
|
||||
static bool DescribeQuery(const char *query, double *elapsed_msec);
|
||||
|
@ -24,7 +24,7 @@
|
||||
#include "prompt.h"
|
||||
#include "stringutils.h"
|
||||
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
|
||||
/*
|
||||
* parse_slash_copy
|
||||
|
@ -13,7 +13,7 @@
|
||||
#include "psqlscanslash.h"
|
||||
#include "settings.h"
|
||||
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
|
||||
/*
|
||||
* Value/position from the resultset that goes into the horizontal or vertical
|
||||
|
@ -18,13 +18,14 @@
|
||||
#include "catalog/pg_cast_d.h"
|
||||
#include "catalog/pg_class_d.h"
|
||||
#include "catalog/pg_default_acl_d.h"
|
||||
#include "fe_utils/logging.h"
|
||||
|
||||
#include "common/logging.h"
|
||||
#include "fe_utils/mbprint.h"
|
||||
#include "fe_utils/print.h"
|
||||
#include "fe_utils/string_utils.h"
|
||||
|
||||
#include "common.h"
|
||||
#include "describe.h"
|
||||
#include "fe_utils/mbprint.h"
|
||||
#include "fe_utils/print.h"
|
||||
#include "settings.h"
|
||||
#include "variables.h"
|
||||
|
||||
|
@ -21,15 +21,15 @@
|
||||
#include <termios.h>
|
||||
#endif
|
||||
|
||||
#include "common.h"
|
||||
#include "common/logging.h"
|
||||
#include "common/username.h"
|
||||
|
||||
#include "common.h"
|
||||
#include "help.h"
|
||||
#include "input.h"
|
||||
#include "settings.h"
|
||||
#include "sql_help.h"
|
||||
|
||||
#include "fe_utils/logging.h"
|
||||
|
||||
/*
|
||||
* PLEASE:
|
||||
* If you change something in this file, also make the same changes
|
||||
|
@ -18,7 +18,7 @@
|
||||
#include "tab-complete.h"
|
||||
#include "common.h"
|
||||
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
|
||||
#ifndef WIN32
|
||||
#define PSQLHISTORY ".psql_history"
|
||||
|
@ -11,7 +11,7 @@
|
||||
#include "settings.h"
|
||||
#include "common.h"
|
||||
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
|
||||
static void print_lo_result(const char *fmt,...) pg_attribute_printf(1, 2);
|
||||
|
||||
|
@ -14,7 +14,7 @@
|
||||
#include "prompt.h"
|
||||
#include "settings.h"
|
||||
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
#include "mb/pg_wchar.h"
|
||||
|
||||
|
||||
|
@ -19,8 +19,8 @@
|
||||
#include "postgres_fe.h"
|
||||
|
||||
#include "psqlscanslash.h"
|
||||
#include "common/logging.h"
|
||||
#include "fe_utils/conditional.h"
|
||||
#include "fe_utils/logging.h"
|
||||
|
||||
#include "libpq-fe.h"
|
||||
}
|
||||
|
@ -16,14 +16,15 @@
|
||||
|
||||
#include "getopt_long.h"
|
||||
|
||||
#include "common/logging.h"
|
||||
#include "fe_utils/print.h"
|
||||
|
||||
#include "command.h"
|
||||
#include "common.h"
|
||||
#include "describe.h"
|
||||
#include "help.h"
|
||||
#include "input.h"
|
||||
#include "mainloop.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "fe_utils/print.h"
|
||||
#include "settings.h"
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
#include "common.h"
|
||||
#include "variables.h"
|
||||
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
|
||||
|
||||
/*
|
||||
|
@ -11,7 +11,7 @@
|
||||
|
||||
#include "postgres_fe.h"
|
||||
#include "common.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
#include "fe_utils/simple_list.h"
|
||||
#include "fe_utils/string_utils.h"
|
||||
|
||||
|
@ -18,8 +18,8 @@
|
||||
#include <unistd.h>
|
||||
|
||||
#include "common.h"
|
||||
#include "common/logging.h"
|
||||
#include "fe_utils/connect.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "fe_utils/string_utils.h"
|
||||
|
||||
|
||||
|
@ -12,7 +12,7 @@
|
||||
#include "postgres_fe.h"
|
||||
|
||||
#include "common.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
#include "fe_utils/string_utils.h"
|
||||
|
||||
|
||||
|
@ -12,7 +12,7 @@
|
||||
|
||||
#include "postgres_fe.h"
|
||||
#include "common.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
#include "fe_utils/simple_list.h"
|
||||
#include "fe_utils/string_utils.h"
|
||||
|
||||
|
@ -12,7 +12,7 @@
|
||||
|
||||
#include "postgres_fe.h"
|
||||
#include "common.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
#include "fe_utils/string_utils.h"
|
||||
|
||||
|
||||
|
@ -12,7 +12,7 @@
|
||||
|
||||
#include "postgres_fe.h"
|
||||
#include "common.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
#include "fe_utils/string_utils.h"
|
||||
|
||||
|
||||
|
@ -11,7 +11,7 @@
|
||||
|
||||
#include "postgres_fe.h"
|
||||
#include "common.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
|
||||
#define DEFAULT_CONNECT_TIMEOUT "3"
|
||||
|
||||
|
@ -11,7 +11,7 @@
|
||||
|
||||
#include "postgres_fe.h"
|
||||
#include "common.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
#include "fe_utils/simple_list.h"
|
||||
#include "fe_utils/string_utils.h"
|
||||
|
||||
|
@ -19,8 +19,8 @@
|
||||
#include "catalog/pg_class_d.h"
|
||||
|
||||
#include "common.h"
|
||||
#include "common/logging.h"
|
||||
#include "fe_utils/connect.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "fe_utils/simple_list.h"
|
||||
#include "fe_utils/string_utils.h"
|
||||
|
||||
|
@ -59,7 +59,9 @@ OBJS_COMMON += sha2.o
|
||||
endif
|
||||
|
||||
# A few files are currently only built for frontend, not server
|
||||
OBJS_FRONTEND = $(OBJS_COMMON) fe_memutils.o file_utils.o restricted_token.o
|
||||
# (Mkvcbuild.pm has a copy of this list, too)
|
||||
OBJS_FRONTEND = $(OBJS_COMMON) fe_memutils.o file_utils.o \
|
||||
logging.o restricted_token.o
|
||||
|
||||
# foo.o, foo_shlib.o, and foo_srv.o are all built from foo.c
|
||||
OBJS_SHLIB = $(OBJS_FRONTEND:%.o=%_shlib.o)
|
||||
|
@ -29,7 +29,7 @@
|
||||
#include "common/controldata_utils.h"
|
||||
#include "common/file_perm.h"
|
||||
#ifdef FRONTEND
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
#endif
|
||||
#include "port/pg_crc32c.h"
|
||||
|
||||
|
@ -20,7 +20,7 @@
|
||||
#include <unistd.h>
|
||||
|
||||
#include "common/file_utils.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
|
||||
|
||||
/* Define PG_FLUSH_DATA_WORKS if we have an implementation for pg_flush_data */
|
||||
|
@ -1,9 +1,9 @@
|
||||
/*-------------------------------------------------------------------------
|
||||
* Logging framework for frontend programs
|
||||
*
|
||||
* Copyright (c) 2018, PostgreSQL Global Development Group
|
||||
* Copyright (c) 2018-2019, PostgreSQL Global Development Group
|
||||
*
|
||||
* src/fe_utils/logging.c
|
||||
* src/common/logging.c
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@ -11,14 +11,15 @@
|
||||
|
||||
#include <unistd.h>
|
||||
|
||||
#include "fe_utils/logging.h"
|
||||
|
||||
static const char *progname;
|
||||
#include "common/logging.h"
|
||||
|
||||
enum pg_log_level __pg_log_level;
|
||||
|
||||
static const char *progname;
|
||||
static int log_flags;
|
||||
void (*log_pre_callback)(void);
|
||||
void (*log_locus_callback)(const char **, uint64 *);
|
||||
|
||||
static void (*log_pre_callback)(void);
|
||||
static void (*log_locus_callback)(const char **, uint64 *);
|
||||
|
||||
static const char *sgr_error = NULL;
|
||||
static const char *sgr_warning = NULL;
|
||||
@ -146,7 +147,12 @@ pg_log_generic_v(enum pg_log_level level, const char * pg_restrict fmt, va_list
|
||||
Assert(fmt);
|
||||
Assert(fmt[strlen(fmt) - 1] != '\n');
|
||||
|
||||
/*
|
||||
* Flush stdout before output to stderr, to ensure sync even when stdout
|
||||
* is buffered.
|
||||
*/
|
||||
fflush(stdout);
|
||||
|
||||
if (log_pre_callback)
|
||||
log_pre_callback();
|
||||
|
||||
@ -220,9 +226,10 @@ pg_log_generic_v(enum pg_log_level level, const char * pg_restrict fmt, va_list
|
||||
vsnprintf(buf, required_len, fmt, ap);
|
||||
|
||||
/* strip one newline, for PQerrorMessage() */
|
||||
if (buf[required_len - 2] == '\n')
|
||||
if (required_len >= 2 && buf[required_len - 2] == '\n')
|
||||
buf[required_len - 2] = '\0';
|
||||
|
||||
fprintf(stderr, "%s\n", buf);
|
||||
|
||||
free(buf);
|
||||
}
|
@ -23,7 +23,7 @@
|
||||
#ifndef FRONTEND
|
||||
#define pg_log_warning(...) elog(WARNING, __VA_ARGS__)
|
||||
#else
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
@ -20,8 +20,8 @@
|
||||
|
||||
#include "postgres_fe.h"
|
||||
|
||||
#include "common/logging.h"
|
||||
#include "common/restricted_token.h"
|
||||
#include "fe_utils/logging.h"
|
||||
|
||||
#ifdef WIN32
|
||||
|
||||
|
@ -23,7 +23,7 @@
|
||||
#ifndef FRONTEND
|
||||
#define pg_log_warning(...) elog(WARNING, __VA_ARGS__)
|
||||
#else
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
#endif
|
||||
|
||||
|
||||
|
@ -19,7 +19,7 @@ include $(top_builddir)/src/Makefile.global
|
||||
|
||||
override CPPFLAGS := -DFRONTEND -I$(libpq_srcdir) $(CPPFLAGS)
|
||||
|
||||
OBJS = logging.o mbprint.o print.o psqlscan.o simple_list.o string_utils.o conditional.o
|
||||
OBJS = mbprint.o print.o psqlscan.o simple_list.o string_utils.o conditional.o
|
||||
|
||||
all: libpgfeutils.a
|
||||
|
||||
|
@ -34,7 +34,7 @@
|
||||
*/
|
||||
#include "postgres_fe.h"
|
||||
|
||||
#include "fe_utils/logging.h"
|
||||
#include "common/logging.h"
|
||||
#include "fe_utils/psqlscan.h"
|
||||
|
||||
#include "libpq-fe.h"
|
||||
|
@ -1,14 +1,14 @@
|
||||
/*-------------------------------------------------------------------------
|
||||
* Logging framework for frontend programs
|
||||
*
|
||||
* Copyright (c) 2018, PostgreSQL Global Development Group
|
||||
* Copyright (c) 2018-2019, PostgreSQL Global Development Group
|
||||
*
|
||||
* src/include/fe_utils/logging.h
|
||||
* src/include/common/logging.h
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
#ifndef FE_UTILS_LOGGING_H
|
||||
#define FE_UTILS_LOGGING_H
|
||||
#ifndef COMMON_LOGGING_H
|
||||
#define COMMON_LOGGING_H
|
||||
|
||||
/*
|
||||
* Log levels are informational only. They do not affect program flow.
|
||||
@ -92,4 +92,4 @@ void pg_log_generic_v(enum pg_log_level level, const char * pg_restrict fmt, va_
|
||||
if (unlikely(__pg_log_level <= PG_LOG_DEBUG)) pg_log_generic(PG_LOG_DEBUG, __VA_ARGS__); \
|
||||
} while(0)
|
||||
|
||||
#endif /* FE_UTILS_LOGGING_H */
|
||||
#endif /* COMMON_LOGGING_H */
|
@ -15,8 +15,6 @@ override CPPFLAGS := \
|
||||
'-DDLSUFFIX="$(DLSUFFIX)"' \
|
||||
$(CPPFLAGS)
|
||||
|
||||
LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
|
||||
|
||||
# default encoding for regression tests
|
||||
ENCODING = SQL_ASCII
|
||||
|
||||
|
@ -67,7 +67,7 @@ BACKEND_COMMON_GETTEXT_FLAGS = \
|
||||
errhint:1:c-format \
|
||||
errcontext:1:c-format
|
||||
|
||||
FRONTEND_COMMON_GETTEXT_FILES = $(top_srcdir)/src/fe_utils/logging.c
|
||||
FRONTEND_COMMON_GETTEXT_FILES = $(top_srcdir)/src/common/logging.c
|
||||
|
||||
FRONTEND_COMMON_GETTEXT_TRIGGERS = \
|
||||
pg_log_fatal pg_log_error pg_log_warning pg_log_info pg_log_generic:2 pg_log_generic_v:2
|
||||
|
@ -10,7 +10,6 @@ top_builddir = ../../..
|
||||
include $(top_builddir)/src/Makefile.global
|
||||
|
||||
override CPPFLAGS := -I$(srcdir) -I$(libpq_srcdir) -I$(srcdir)/../regress $(CPPFLAGS)
|
||||
LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
|
||||
|
||||
OBJS = specparse.o isolationtester.o $(WIN32RES)
|
||||
|
||||
@ -32,7 +31,7 @@ pg_regress.o: | submake-regress
|
||||
pg_isolation_regress$(X): isolation_main.o pg_regress.o $(WIN32RES)
|
||||
$(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@
|
||||
|
||||
isolationtester$(X): $(OBJS) | submake-libpq submake-libpgport submake-libpgfeutils
|
||||
isolationtester$(X): $(OBJS) | submake-libpq submake-libpgport
|
||||
$(CC) $(CFLAGS) $^ $(libpq_pgport) $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@
|
||||
|
||||
distprep: specparse.c specscanner.c
|
||||
|
@ -23,8 +23,6 @@ ifdef MAX_CONNECTIONS
|
||||
MAXCONNOPT += --max-connections=$(MAX_CONNECTIONS)
|
||||
endif
|
||||
|
||||
LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils
|
||||
|
||||
# stuff to pass into build of pg_regress
|
||||
EXTRADEFS = '-DHOST_TUPLE="$(host_tuple)"' \
|
||||
'-DSHELLPROG="$(SHELL)"' \
|
||||
@ -38,7 +36,7 @@ EXTRADEFS = '-DHOST_TUPLE="$(host_tuple)"' \
|
||||
|
||||
all: pg_regress$(X)
|
||||
|
||||
pg_regress$(X): pg_regress.o pg_regress_main.o $(WIN32RES) | submake-libpgport submake-libpgfeutils
|
||||
pg_regress$(X): pg_regress.o pg_regress_main.o $(WIN32RES) | submake-libpgport
|
||||
$(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@
|
||||
|
||||
# dependencies ensure that path changes propagate
|
||||
|
@ -31,9 +31,9 @@
|
||||
|
||||
#include "pg_regress.h"
|
||||
|
||||
#include "common/logging.h"
|
||||
#include "common/restricted_token.h"
|
||||
#include "common/username.h"
|
||||
#include "fe_utils/logging.h"
|
||||
#include "getopt_long.h"
|
||||
#include "libpq/pqcomm.h" /* needed for UNIXSOCK_PATH() */
|
||||
#include "pg_config_paths.h"
|
||||
|
@ -136,12 +136,12 @@ sub mkvcbuild
|
||||
|
||||
our @pgcommonfrontendfiles = (
|
||||
@pgcommonallfiles, qw(fe_memutils.c file_utils.c
|
||||
restricted_token.c));
|
||||
logging.c restricted_token.c));
|
||||
|
||||
our @pgcommonbkndfiles = @pgcommonallfiles;
|
||||
|
||||
our @pgfeutilsfiles = qw(
|
||||
conditional.c logging.c mbprint.c print.c psqlscan.l psqlscan.c simple_list.c string_utils.c);
|
||||
conditional.c mbprint.c print.c psqlscan.l psqlscan.c simple_list.c string_utils.c);
|
||||
|
||||
$libpgport = $solution->AddProject('libpgport', 'lib', 'misc');
|
||||
$libpgport->AddDefine('FRONTEND');
|
||||
@ -321,7 +321,7 @@ sub mkvcbuild
|
||||
$pgregress_ecpg->AddDefine('HOST_TUPLE="i686-pc-win32vc"');
|
||||
$pgregress_ecpg->AddLibrary('ws2_32.lib');
|
||||
$pgregress_ecpg->AddDirResourceFile('src/interfaces/ecpg/test');
|
||||
$pgregress_ecpg->AddReference($libpgfeutils, $libpgcommon, $libpgport);
|
||||
$pgregress_ecpg->AddReference($libpgcommon, $libpgport);
|
||||
|
||||
my $isolation_tester =
|
||||
$solution->AddProject('isolationtester', 'exe', 'misc');
|
||||
@ -347,7 +347,7 @@ sub mkvcbuild
|
||||
$pgregress_isolation->AddDefine('HOST_TUPLE="i686-pc-win32vc"');
|
||||
$pgregress_isolation->AddLibrary('ws2_32.lib');
|
||||
$pgregress_isolation->AddDirResourceFile('src/test/isolation');
|
||||
$pgregress_isolation->AddReference($libpgfeutils, $libpgcommon, $libpgport);
|
||||
$pgregress_isolation->AddReference($libpgcommon, $libpgport);
|
||||
|
||||
# src/bin
|
||||
my $D;
|
||||
@ -826,7 +826,7 @@ sub mkvcbuild
|
||||
$pgregress->AddDefine('HOST_TUPLE="i686-pc-win32vc"');
|
||||
$pgregress->AddLibrary('ws2_32.lib');
|
||||
$pgregress->AddDirResourceFile('src/test/regress');
|
||||
$pgregress->AddReference($libpgfeutils, $libpgcommon, $libpgport);
|
||||
$pgregress->AddReference($libpgcommon, $libpgport);
|
||||
|
||||
# fix up pg_waldump once it's been set up
|
||||
# files symlinked on Unix are copied on windows
|
||||
|
Loading…
x
Reference in New Issue
Block a user