Re: [PATCH 03/14] Add simple xlogdump tool
От
Andres Freund
Тема
Re: [PATCH 03/14] Add simple xlogdump tool
Дата
Msg-id
20121206161352.GB1000@alap2
Ответ на
Re: [PATCH 03/14] Add simple xlogdump tool (Peter Eisentraut)
Список
Дерево обсуждения
logical changeset generation v3 andres@anarazel.de (Andres Freund)
[PATCH 01/14] Add minimal binary heap implementation Andres Freund <andres@2ndquadrant.com>
[PATCH 10/14] Allow walsender's to connect to a specific database Andres Freund <andres@2ndquadrant.com>
[PATCH 11/14] Introduce wal decoding via catalog timetravel Andres Freund <andres@2ndquadrant.com>
Re: [PATCH 11/14] Introduce wal decoding via catalog timetravel Steve Singer <steve@ssinger.info>
Re: [PATCH 11/14] Introduce wal decoding via catalog
timetravel Andres Freund <andres@2ndquadrant.com>
Re: [PATCH 11/14] Introduce wal decoding via catalog
timetravel Andres Freund <andres@2ndquadrant.com>
Re: [PATCH 11/14] Introduce wal decoding via catalog timetravel Steve Singer <steve@ssinger.info>
Re: [PATCH 11/14] Introduce wal decoding via catalog timetravel Andres Freund <andres@2ndquadrant.com>
Re: [PATCH 11/14] Introduce wal decoding via catalog timetravel Steve Singer <steve@ssinger.info>
[PATCH 12/14] Add a simple decoding module in contrib named 'test_decoding' Andres Freund <andres@2ndquadrant.com>
[PATCH 13/14] Introduce pg_receivellog, the pg_receivexlog equivalent for logical changes Andres Freund <andres@2ndquadrant.com>
Re: [PATCH 13/14] Introduce pg_receivellog, the
pg_receivexlog equivalent for logical changes Michael Paquier <michael.paquier@gmail.com>
[PATCH 14/14] design document v2.3 and snapshot building design doc v0.2 Andres Freund <andres@2ndquadrant.com>
[PATCH 02/14] Add support for a generic wal reading facility dubbed XLogReader Andres Freund <andres@2ndquadrant.com>
Re: [PATCH 02/14] Add support for a generic wal reading
facility dubbed XLogReader Heikki Linnakangas <hlinnakangas@vmware.com>
Re: [PATCH 02/14] Add support for a generic wal reading facility
dubbed XLogReader Andres Freund <andres@2ndquadrant.com>
Re: [PATCH 02/14] Add support for a generic wal reading
facility dubbed XLogReader Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [PATCH 02/14] Add support for a generic wal reading
facility dubbed XLogReader Andres Freund <andres@2ndquadrant.com>
Re: [PATCH 02/14] Add support for a generic wal reading
facility dubbed XLogReader Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [PATCH 02/14] Add support for a generic wal reading
facility dubbed XLogReader Heikki Linnakangas <hlinnakangas@vmware.com>
Re: [PATCH 02/14] Add support for a generic wal reading
facility dubbed XLogReader Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [PATCH 02/14] Add support for a generic wal reading
facility dubbed XLogReader Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [PATCH 02/14] Add support for a generic wal reading
facility dubbed XLogReader Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [PATCH 02/14] Add support for a generic wal reading facility
dubbed XLogReader Andres Freund <andres@2ndquadrant.com>
Re: [PATCH 02/14] Add support for a generic wal reading facility
dubbed XLogReader Heikki Linnakangas <hlinnakangas@vmware.com>
Re: [PATCH 02/14] Add support for a generic wal reading facility
dubbed XLogReader Heikki Linnakangas <hlinnakangas@vmware.com>
Re: [PATCH 02/14] Add support for a generic wal reading facility
dubbed XLogReader Heikki Linnakangas <hlinnakangas@vmware.com>
Re: [PATCH 02/14] Add support for a generic wal reading facility
dubbed XLogReader Andres Freund <andres@2ndquadrant.com>
Re: Re: [PATCH 02/14] Add support for a generic wal
reading facility dubbed XLogReader Andres Freund <andres@2ndquadrant.com>
Re: Re: [PATCH 02/14] Add support for a generic wal
reading facility dubbed XLogReader Andres Freund <andres@2ndquadrant.com>
Re: Re: [PATCH 02/14] Add support for a generic wal reading
facility dubbed XLogReader Robert Haas <robertmhaas@gmail.com>
Re: Re: [PATCH 02/14] Add support for a generic wal reading facility dubbed XLogReader Dimitri Fontaine <dimitri@2ndQuadrant.fr>
Re: Re: [PATCH 02/14] Add support for a generic wal reading facility dubbed XLogReader Tom Lane <tgl@sss.pgh.pa.us>
Re: Re: [PATCH 02/14] Add support for a generic wal reading
facility dubbed XLogReader Peter Geoghegan <peter@2ndquadrant.com>
Re: Re: [PATCH 02/14] Add support for a generic wal
reading facility dubbed XLogReader Andres Freund <andres@2ndquadrant.com>
Re: Re: [PATCH 02/14] Add support for a generic wal reading facility dubbed XLogReader Dimitri Fontaine <dimitri@2ndQuadrant.fr>
Re: Re: [PATCH 02/14] Add support for a generic wal reading facility dubbed XLogReader Dimitri Fontaine <dimitri@2ndQuadrant.fr>
Re: [PATCH 02/14] Add support for a generic wal reading facility
dubbed XLogReader Andres Freund <andres@2ndquadrant.com>
Re: [PATCH 02/14] Add support for a generic wal reading facility
dubbed XLogReader Heikki Linnakangas <hlinnakangas@vmware.com>
Re: Re: [PATCH 02/14] Add support for a generic wal
reading facility dubbed XLogReader Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [PATCH 02/14] Add support for a generic wal reading facility
dubbed XLogReader Heikki Linnakangas <hlinnakangas@vmware.com>
[PATCH 03/14] Add simple xlogdump tool Andres Freund <andres@2ndquadrant.com>
Re: [PATCH 03/14] Add simple xlogdump tool Peter Eisentraut <peter_e@gmx.net>
Re: [PATCH 03/14] Add simple xlogdump tool Andres Freund <andres@2ndquadrant.com>
Re: [PATCH 03/14] Add simple xlogdump tool Andres Freund <andres@2ndquadrant.com>
Re: [PATCH 03/14] Add simple xlogdump tool Jeff Janes <jeff.janes@gmail.com>
Re: [PATCH 03/14] Add simple xlogdump tool Andres Freund <andres@2ndquadrant.com>
Re: [PATCH 03/14] Add simple xlogdump tool Jeff Janes <jeff.janes@gmail.com>
Re: [PATCH 03/14] Add simple xlogdump tool Andres Freund <andres@2ndquadrant.com>
[PATCH 04/14] Add a new RELFILENODE syscache to fetch a pg_class entry via (reltablespace, relfilenode) Andres Freund <andres@2ndquadrant.com>
[PATCH 05/14] Add a new relmapper.c function RelationMapFilenodeToOid that acts as a reverse of RelationMapOidToFilenode Andres Freund <andres@2ndquadrant.com>
Re: [PATCH 05/14] Add a new relmapper.c function
RelationMapFilenodeToOid that acts as a reverse of RelationMapOidToFilenode Michael Paquier <michael.paquier@gmail.com>
Re: [PATCH 05/14] Add a new relmapper.c function
RelationMapFilenodeToOid that acts as a reverse of RelationMapOidToFilenode Andres Freund <andres@2ndquadrant.com>
Re: [PATCH 05/14] Add a new relmapper.c function
RelationMapFilenodeToOid that acts as a reverse of RelationMapOidToFilenode Michael Paquier <michael.paquier@gmail.com>
Re: [PATCH 05/14] Add a new relmapper.c function
RelationMapFilenodeToOid that acts as a reverse of RelationMapOidToFilenode Andres Freund <andres@2ndquadrant.com>
[PATCH 06/14] Add a new function pg_relation_by_filenode to lookup up a relation given the tablespace and the filenode OIDs Andres Freund <andres@2ndquadrant.com>
[PATCH 07/14] Introduce InvalidCommandId and declare that to be the new maximum for CommandCounterIncrement Andres Freund <andres@2ndquadrant.com>
[PATCH 08/14] Store the number of subtransactions in xl_running_xacts separately from toplevel xids Andres Freund <andres@2ndquadrant.com>
Re: [PATCH 08/14] Store the number of subtransactions in
xl_running_xacts separately from toplevel xids Simon Riggs <simon@2ndQuadrant.com>
Re: [PATCH 08/14] Store the number of subtransactions in
xl_running_xacts separately from toplevel xids Andres Freund <andres@2ndquadrant.com>
Re: [PATCH 08/14] Store the number of subtransactions in
xl_running_xacts separately from toplevel xids Simon Riggs <simon@2ndQuadrant.com>
[PATCH 09/14] Adjust all *Satisfies routines to take a HeapTuple instead of a HeapTupleHeader Andres Freund <andres@2ndquadrant.com>
Re: [PATCH 09/14] Adjust all *Satisfies routines to take
a HeapTuple instead of a HeapTupleHeader Steve Singer <steve@ssinger.info>
Re: logical changeset generation v3 - git repository Andres Freund <andres@2ndquadrant.com>
Re: logical changeset generation v3 - git repository Andres Freund <andres@2ndquadrant.com>
Re: logical changeset generation v3 - git repository Peter Geoghegan <peter@2ndquadrant.com>
Re: logical changeset generation v3 - git repository Andres Freund <andres@2ndquadrant.com>
Re: logical decoding - GetOldestXmin Andres Freund <andres@2ndquadrant.com>
Re: logical decoding - GetOldestXmin Robert Haas <robertmhaas@gmail.com>
Re: logical decoding - GetOldestXmin Andres Freund <andres@2ndquadrant.com>
Re: logical decoding - GetOldestXmin Simon Riggs <simon@2ndQuadrant.com>
Re: logical decoding - GetOldestXmin Andres Freund <andres@2ndquadrant.com>
Re: logical decoding - GetOldestXmin Robert Haas <robertmhaas@gmail.com>
Re: logical decoding - GetOldestXmin Andres Freund <andres@2ndquadrant.com>
Re: logical decoding - GetOldestXmin Andres Freund <andres@2ndquadrant.com>
Re: logical decoding - GetOldestXmin Robert Haas <robertmhaas@gmail.com>
Re: logical decoding - GetOldestXmin "anarazel@anarazel.de" <andres@anarazel.de>
Re: logical decoding - GetOldestXmin Robert Haas <robertmhaas@gmail.com>
Re: logical decoding - GetOldestXmin Andres Freund <andres@2ndquadrant.com>
Re: logical decoding - GetOldestXmin Robert Haas <robertmhaas@gmail.com>
Re: logical decoding - GetOldestXmin Michael Paquier <michael.paquier@gmail.com>
Re: logical decoding - GetOldestXmin Simon Riggs <simon@2ndQuadrant.com>
Re: logical decoding - GetOldestXmin Andres Freund <andres@2ndquadrant.com>
Re: lcr - walsender integration Andres Freund <andres@2ndquadrant.com>
Re: logical changeset generation v3 Josh Berkus <josh@agliodbs.com>
Re: logical changeset generation v3 - comparison to Postgres-R
change set format Markus Wanner <markus@bluegap.ch>
Re: logical changeset generation v3 - comparison to
Postgres-R change set format Andres Freund <andres@2ndquadrant.com>
Re: logical changeset generation v3 - comparison to Postgres-R
change set format Markus Wanner <markus@bluegap.ch>
Re: logical changeset generation v3 - comparison to
Postgres-R change set format Andres Freund <andres@2ndquadrant.com>
Re: logical changeset generation v3 - comparison to Postgres-R
change set format Markus Wanner <markus@bluegap.ch>
Re: logical changeset generation v3 - comparison to Postgres-R
change set format Hannu Krosing <hannu@2ndQuadrant.com>
Re: logical changeset generation v3 - comparison to Postgres-R
change set format Markus Wanner <markus@bluegap.ch>
Re: logical changeset generation v3 - comparison to Postgres-R
change set format Hannu Krosing <hannu@2ndQuadrant.com>
Re: logical changeset generation v3 - comparison to Postgres-R
change set format Noah Misch <noah@leadboat.com>
Re: logical changeset generation v3 - comparison to Postgres-R change
set format Hannu Krosing <hannu@2ndQuadrant.com>
Re: logical changeset generation v3 - comparison to Postgres-R change
set format Hannu Krosing <hannu@2ndQuadrant.com>
Re: Re: logical changeset generation v3 - comparison to Postgres-R change set format Tom Lane <tgl@sss.pgh.pa.us>
Re: logical changeset generation v3 - comparison to Postgres-R
change set format Andres Freund <andres@2ndquadrant.com>
Re: Re: logical changeset generation v3 - comparison to
Postgres-R change set format Markus Wanner <markus@bluegap.ch>
Re: Re: logical changeset generation v3 - comparison to
Postgres-R change set format Hannu Krosing <hannu@2ndQuadrant.com>
Re: Re: logical changeset generation v3 - comparison to
Postgres-R change set format Markus Wanner <markus@bluegap.ch>
Re: Re: logical changeset generation v3 - comparison to Postgres-R change set format Dimitri Fontaine <dimitri@2ndQuadrant.fr>
Re: Re: logical changeset generation v3 - comparison to
Postgres-R change set format Hannu Krosing <hannu@2ndQuadrant.com>
Re: logical changeset generation v3 - comparison to Postgres-R change
set format Hannu Krosing <hannu@2ndQuadrant.com>
Re: logical changeset generation v3 - comparison to Postgres-R
change set format Markus Wanner <markus@bluegap.ch>
Re: logical changeset generation v3 - comparison to Postgres-R
change set format Hannu Krosing <hannu@2ndQuadrant.com>
Re: logical changeset generation v3 - Source for Slony Steve Singer <steve@ssinger.info>
Re: logical changeset generation v3 - Source for Slony Andres Freund <andres@2ndquadrant.com>
Re: logical changeset generation v3 - Source for Slony Steve Singer <steve@ssinger.info>
Re: logical changeset generation v3 - Source for Slony Andres Freund <andres@2ndquadrant.com>
Re: logical changeset generation v3 Michael Paquier <michael.paquier@gmail.com>
Re: logical changeset generation v3 Andres Freund <andres@anarazel.de>
Re: logical changeset generation v3 Michael Paquier <michael.paquier@gmail.com>
Re: logical changeset generation v3 Andrea Suisani <sickpig@opinioni.net>
Re: logical changeset generation v3 Michael Paquier <michael.paquier@gmail.com>
Re: logical changeset generation v3 Michael Paquier <michael.paquier@gmail.com>
Re: logical changeset generation v3 Andres Freund <andres@2ndquadrant.com>
Re: logical changeset generation v3 Andres Freund <andres@2ndquadrant.com>
Re: logical changeset generation v3 Michael Paquier <michael.paquier@gmail.com>
Re: logical changeset generation v3 Andres Freund <andres@2ndquadrant.com>
Re: logical changeset generation v3 Michael Paquier <michael.paquier@gmail.com>
Re: logical changeset generation v3 Andres Freund <andres@2ndquadrant.com>
Re: logical changeset generation v3 Michael Paquier <michael.paquier@gmail.com>
Re: logical changeset generation v3 Andres Freund <andres@2ndquadrant.com>
Re: logical changeset generation v3 Michael Paquier <michael.paquier@gmail.com>
Re: logical changeset generation v3 Andres Freund <andres@2ndquadrant.com>
Re: logical changeset generation v3 Michael Paquier <michael.paquier@gmail.com>
Re: logical changeset generation v3 Andres Freund <andres@2ndquadrant.com>
Re: logical changeset generation v3 Michael Paquier <michael.paquier@gmail.com>
Re: logical changeset generation v3 Andres Freund <andres@2ndquadrant.com>
Re: logical changeset generation v3 Michael Paquier <michael.paquier@gmail.com>
Re: logical changeset generation v3 Andres Freund <andres@2ndquadrant.com>
Hi,
I tried to address most (all?) your comments in the version from
http://archives.postgresql.org/message-id/20121204175212.GB12055%40awork2.anarazel.de
.
On 2012-11-15 11:31:55 -0500, Peter Eisentraut wrote:
> > +xlogdump: $(OBJS) $(shell find ../../backend ../../timezone -name objfiles.txt|xargs cat|tr -s " " "\012"|grep -v /main.o|sed 's/^/..\/..\/..\//')
> > + $(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
>
> This looks pretty evil, and there is no documentation about what it is
> supposed to do.
>
> Windows build support needs some thought.
Ok, since Alvaro made it possible the build now only has rules like:
xlogreader.c: % : $(top_srcdir)/src/backend/access/transam/% rm -f $@ && $(LN_S) $< .
clogdesc.c: % : $(top_srcdir)/src/backend/access/rmgrdesc/% rm -f $@ && $(LN_S) $< .
and
OBJS = \ clogdesc.o dbasedesc.o gindesc.o gistdesc.o hashdesc.o heapdesc.o \ mxactdesc.o nbtdesc.o relmapdesc.o seqdesc.o smgrdesc.o spgdesc.o \ standbydesc.o tblspcdesc.o xactdesc.o xlogdesc.o assert.o \ $(WIN32RES) \ pg_xlogdump.o pqexpbuf_strinfo.o compat.o tables.o xlogreader.o \
pg_xlogdump: $(OBJS) | submake-libpq submake-libpgport $(CC) $(CFLAGS) $(OBJS) $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) $(libpq_pgport) -o $@$(X)
Thats easier easier to integrate into the windows build?
> > +static void
> > +usage(void)
> > +{
> > + printf(_("%s reads/writes postgres transaction logs for debugging.\n\n"),
> > + progname);
> > + printf(_("Usage:\n"));
> > + printf(_(" %s [OPTION]...\n"), progname);
> > + printf(_("\nOptions:\n"));
> > + printf(_(" -v, --version output version information, then exit\n"));
> > + printf(_(" -h, --help show this help, then exit\n"));
> > + printf(_(" -s, --start from where recptr onwards to read\n"));
> > + printf(_(" -e, --end up to which recptr to read\n"));
> > + printf(_(" -t, --timeline which timeline do we want to read\n"));
> > + printf(_(" -i, --inpath from where do we want to read? cwd/pg_xlog is the default\n"));
> > + printf(_(" -o, --output where to write [start, end]\n"));
> > + printf(_(" -f, --file wal file to parse\n"));
> > +}
>
> Options list should be in alphabetic order (or some other less random
> order). Most of these descriptions are not very intelligible (at least
> without additional documentation).
I tried to improve the help, its now:
pg_xlogdump: reads/writes postgres transaction logs for debugging.
Usage: pg_xlogdump [OPTION]...
Options: -b, --bkp-details output detailed information about backup blocks -e, --end RECPTR read wal up to RECPTR -f, --file FILE wal file to parse, cannot be specified together with -p -h, --help show this help, then exit -p, --path PATH from where do we want to read? cwd/pg_xlog is the default -s, --start RECPTR read wal in directory indicated by -p starting at RECPTR -t, --timeline TLI which timeline do we want to read, defaults to 1 -v, --version output version information, then exit
I wonder whether it would make sense to split the help into different
sections? It seems likely we will gain some more options...
> no nls.mk
Do I need to do anything for that besides:
# src/bin/pg_xlogdump/nls.mk
CATALOG_NAME = pg_xlogdump
AVAIL_LANGUAGES =
GETTEXT_FILES = pg_xlogdump.c
?
Greetings,
Andres Freund
--Andres Freund http://www.2ndQuadrant.com/PostgreSQL Development, 24x7 Support, Training & Services
В списке pgsql-hackers по дате отправления