Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
Postgres FD Implementation
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Abuhujair Javed
Postgres FD Implementation
Commits
606c9b9d
Commit
606c9b9d
authored
Aug 21, 2002
by
Peter Eisentraut
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add --help and --version options. Message cleanup. NLS.
parent
d46e3dc0
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
281 additions
and
60 deletions
+281
-60
src/bin/pg_controldata/nls.mk
src/bin/pg_controldata/nls.mk
+5
-0
src/bin/pg_controldata/pg_controldata.c
src/bin/pg_controldata/pg_controldata.c
+79
-60
src/bin/pg_controldata/po/de.po
src/bin/pg_controldata/po/de.po
+197
-0
No files found.
src/bin/pg_controldata/nls.mk
0 → 100644
View file @
606c9b9d
# $Header: /cvsroot/pgsql/src/bin/pg_controldata/nls.mk,v 1.1 2002/08/21 22:24:34 petere Exp $
CATALOG_NAME
:=
pg_controldata
AVAIL_LANGUAGES
:=
de
GETTEXT_FILES
:=
pg_controldata.c
GETTEXT_TRIGGERS
:=
_
src/bin/pg_controldata/pg_controldata.c
View file @
606c9b9d
...
...
@@ -6,7 +6,7 @@
* copyright (c) Oliver Elphick <olly@lfix.co.uk>, 2001;
* licence: BSD
*
* $Header: /cvsroot/pgsql/src/bin/pg_controldata/pg_controldata.c,v 1.
2 2002/08/18 02:48:41 tgl
Exp $
* $Header: /cvsroot/pgsql/src/bin/pg_controldata/pg_controldata.c,v 1.
3 2002/08/21 22:24:34 petere
Exp $
*/
#include "postgres.h"
...
...
@@ -15,9 +15,23 @@
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <locale.h>
#include <errno.h>
#include "catalog/pg_control.h"
#define _(x) gettext((x))
static
void
usage
(
const
char
*
progname
)
{
printf
(
_
(
"%s displays PostgreSQL database cluster control information.
\n
"
),
progname
);
printf
(
_
(
"Usage:
\n
%s [DATADIR]
\n\n
"
),
progname
);
printf
(
_
(
"If not data directory is specified, the environment variable PGDATA
\n
is used.
\n\n
"
));
printf
(
_
(
"Report bugs to <pgsql-bugs@postgresql.org>.
\n
"
));
}
static
const
char
*
dbState
(
DBState
state
)
...
...
@@ -35,7 +49,7 @@ dbState(DBState state)
case
DB_IN_PRODUCTION
:
return
"IN_PRODUCTION"
;
}
return
"unrecognized status code"
;
return
_
(
"unrecognized status code"
)
;
}
...
...
@@ -50,6 +64,32 @@ main(int argc, char *argv[])
char
pgctime_str
[
32
];
char
ckpttime_str
[
32
];
char
*
strftime_fmt
=
"%c"
;
char
*
progname
;
setlocale
(
LC_ALL
,
""
);
#ifdef ENABLE_NLS
bindtextdomain
(
"pg_controldata"
,
LOCALEDIR
);
textdomain
(
"pg_controldata"
);
#endif
if
(
!
strrchr
(
argv
[
0
],
'/'
))
progname
=
argv
[
0
];
else
progname
=
strrchr
(
argv
[
0
],
'/'
)
+
1
;
if
(
argc
>
1
)
{
if
(
strcmp
(
argv
[
1
],
"--help"
)
==
0
||
strcmp
(
argv
[
1
],
"-?"
)
==
0
)
{
usage
(
progname
);
exit
(
0
);
}
if
(
strcmp
(
argv
[
1
],
"--version"
)
==
0
||
strcmp
(
argv
[
1
],
"-V"
)
==
0
)
{
puts
(
"pg_controldata (PostgreSQL) "
PG_VERSION
);
exit
(
0
);
}
}
if
(
argc
>
1
)
DataDir
=
argv
[
1
];
...
...
@@ -57,7 +97,7 @@ main(int argc, char *argv[])
DataDir
=
getenv
(
"PGDATA"
);
if
(
DataDir
==
NULL
)
{
fprintf
(
stderr
,
"no data directory specified
\n
"
);
fprintf
(
stderr
,
_
(
"%s: no data directory specified
\n
"
),
progname
);
exit
(
1
);
}
...
...
@@ -65,13 +105,15 @@ main(int argc, char *argv[])
if
((
fd
=
open
(
ControlFilePath
,
O_RDONLY
))
==
-
1
)
{
perror
(
"Failed to open $PGDATA/global/pg_control for reading"
);
fprintf
(
stderr
,
_
(
"%s: could not open file
\"
%s
\"
for reading (%s)
\n
"
),
progname
,
ControlFilePath
,
strerror
(
errno
));
exit
(
2
);
}
if
(
read
(
fd
,
&
ControlFile
,
sizeof
(
ControlFileData
))
!=
sizeof
(
ControlFileData
))
{
perror
(
"Failed to read $PGDATA/global/pg_control"
);
fprintf
(
stderr
,
_
(
"%s: could not read file
\"
%s
\"
(%s)
\n
"
),
progname
,
ControlFilePath
,
strerror
(
errno
));
exit
(
2
);
}
close
(
fd
);
...
...
@@ -84,9 +126,9 @@ main(int argc, char *argv[])
FIN_CRC64
(
crc
);
if
(
!
EQ_CRC64
(
crc
,
ControlFile
.
crc
))
printf
(
"WARNING: Calculated CRC checksum does not match value stored in file.
\n
"
"Either the file is corrupt, or it has a different layout than this program
\n
"
"is expecting. The results below are untrustworthy.
\n\n
"
);
printf
(
_
(
"WARNING: Calculated CRC checksum does not match value stored in file.
\n
"
"Either the file is corrupt, or it has a different layout than this program
\n
"
"is expecting. The results below are untrustworthy.
\n\n
"
)
);
/*
* Use variable for format to suppress overly-anal-retentive gcc warning
...
...
@@ -97,56 +139,33 @@ main(int argc, char *argv[])
strftime
(
ckpttime_str
,
sizeof
(
ckpttime_str
),
strftime_fmt
,
localtime
(
&
(
ControlFile
.
checkPointCopy
.
time
)));
printf
(
"pg_control version number: %u
\n
"
"Catalog version number: %u
\n
"
"Database state: %s
\n
"
"pg_control last modified: %s
\n
"
"Current log file id: %u
\n
"
"Next log file segment: %u
\n
"
"Latest checkpoint location: %X/%X
\n
"
"Prior checkpoint location: %X/%X
\n
"
"Latest checkpoint's REDO location: %X/%X
\n
"
"Latest checkpoint's UNDO location: %X/%X
\n
"
"Latest checkpoint's StartUpID: %u
\n
"
"Latest checkpoint's NextXID: %u
\n
"
"Latest checkpoint's NextOID: %u
\n
"
"Time of latest checkpoint: %s
\n
"
"Database block size: %u
\n
"
"Blocks per segment of large relation: %u
\n
"
"Maximum length of names: %u
\n
"
"Maximum number of function arguments: %u
\n
"
"Date/time type storage: %s
\n
"
"Maximum length of locale name: %u
\n
"
"LC_COLLATE: %s
\n
"
"LC_CTYPE: %s
\n
"
,
ControlFile
.
pg_control_version
,
ControlFile
.
catalog_version_no
,
dbState
(
ControlFile
.
state
),
pgctime_str
,
ControlFile
.
logId
,
ControlFile
.
logSeg
,
ControlFile
.
checkPoint
.
xlogid
,
ControlFile
.
checkPoint
.
xrecoff
,
ControlFile
.
prevCheckPoint
.
xlogid
,
ControlFile
.
prevCheckPoint
.
xrecoff
,
ControlFile
.
checkPointCopy
.
redo
.
xlogid
,
ControlFile
.
checkPointCopy
.
redo
.
xrecoff
,
ControlFile
.
checkPointCopy
.
undo
.
xlogid
,
ControlFile
.
checkPointCopy
.
undo
.
xrecoff
,
ControlFile
.
checkPointCopy
.
ThisStartUpID
,
ControlFile
.
checkPointCopy
.
nextXid
,
ControlFile
.
checkPointCopy
.
nextOid
,
ckpttime_str
,
ControlFile
.
blcksz
,
ControlFile
.
relseg_size
,
ControlFile
.
nameDataLen
,
ControlFile
.
funcMaxArgs
,
(
ControlFile
.
enableIntTimes
?
"64-bit integers"
:
"Floating point"
),
ControlFile
.
localeBuflen
,
ControlFile
.
lc_collate
,
ControlFile
.
lc_ctype
);
return
(
0
);
printf
(
_
(
"pg_control version number: %u
\n
"
),
ControlFile
.
pg_control_version
);
printf
(
_
(
"Catalog version number: %u
\n
"
),
ControlFile
.
catalog_version_no
);
printf
(
_
(
"Database cluster state: %s
\n
"
),
dbState
(
ControlFile
.
state
));
printf
(
_
(
"pg_control last modified: %s
\n
"
),
pgctime_str
);
printf
(
_
(
"Current log file ID: %u
\n
"
),
ControlFile
.
logId
);
printf
(
_
(
"Next log file segment: %u
\n
"
),
ControlFile
.
logSeg
);
printf
(
_
(
"Latest checkpoint location: %X/%X
\n
"
),
ControlFile
.
checkPoint
.
xlogid
,
ControlFile
.
checkPoint
.
xrecoff
);
printf
(
_
(
"Prior checkpoint location: %X/%X
\n
"
),
ControlFile
.
prevCheckPoint
.
xlogid
,
ControlFile
.
prevCheckPoint
.
xrecoff
);
printf
(
_
(
"Latest checkpoint's REDO location: %X/%X
\n
"
),
ControlFile
.
checkPointCopy
.
redo
.
xlogid
,
ControlFile
.
checkPointCopy
.
redo
.
xrecoff
);
printf
(
_
(
"Latest checkpoint's UNDO location: %X/%X
\n
"
),
ControlFile
.
checkPointCopy
.
undo
.
xlogid
,
ControlFile
.
checkPointCopy
.
undo
.
xrecoff
);
printf
(
_
(
"Latest checkpoint's StartUpID: %u
\n
"
),
ControlFile
.
checkPointCopy
.
ThisStartUpID
);
printf
(
_
(
"Latest checkpoint's NextXID: %u
\n
"
),
ControlFile
.
checkPointCopy
.
nextXid
);
printf
(
_
(
"Latest checkpoint's NextOID: %u
\n
"
),
ControlFile
.
checkPointCopy
.
nextOid
);
printf
(
_
(
"Time of latest checkpoint: %s
\n
"
),
ckpttime_str
);
printf
(
_
(
"Database block size: %u
\n
"
),
ControlFile
.
blcksz
);
printf
(
_
(
"Blocks per segment of large relation: %u
\n
"
),
ControlFile
.
relseg_size
);
printf
(
_
(
"Maximum length of identifiers: %u
\n
"
),
ControlFile
.
nameDataLen
);
printf
(
_
(
"Maximum number of function arguments: %u
\n
"
),
ControlFile
.
funcMaxArgs
);
printf
(
_
(
"Date/time type storage: %s
\n
"
),
(
ControlFile
.
enableIntTimes
?
_
(
"64-bit integers"
)
:
_
(
"Floating point"
)));
printf
(
_
(
"Maximum length of locale name: %u
\n
"
),
ControlFile
.
localeBuflen
);
printf
(
_
(
"LC_COLLATE: %s
\n
"
),
ControlFile
.
lc_collate
);
printf
(
_
(
"LC_CTYPE: %s
\n
"
),
ControlFile
.
lc_ctype
);
return
0
;
}
src/bin/pg_controldata/po/de.po
0 → 100644
View file @
606c9b9d
# German message translation file for pg_controldata
# Peter Eisentraut <peter_e@gmx.net>, 2002.
#
# $Header: /cvsroot/pgsql/src/bin/pg_controldata/po/de.po,v 1.1 2002/08/21 22:24:34 petere Exp $
#
# Use these quotes: %s
#
msgid ""
msgstr ""
"Project-Id-Version: PostgreSQL 7.3\n"
"POT-Creation-Date: 2002-08-22 00:15+0200\n"
"PO-Revision-Date: 2002-08-22 00:14+0200\n"
"Last-Translator: Peter Eisentraut <peter_e@gmx.net>\n"
"Language-Team: German <peter_e@gmx.net>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"
#: pg_controldata.c:29
#, c-format
msgid "%s displays PostgreSQL database cluster control information.\n"
msgstr "%s zeigt Kontrollinformationen ber PostgreSQL-Datenbankcluster an.\n"
#: pg_controldata.c:30
#, c-format
msgid ""
"Usage:\n"
" %s [DATADIR]\n"
"\n"
msgstr ""
"Benutzung:\n"
" %s [DATENVERZEICHNIS]\n"
"\n"
#: pg_controldata.c:31
msgid ""
"If not data directory is specified, the environment variable PGDATA\n"
"is used.\n"
"\n"
msgstr ""
"Wenn kein Datenverzeichnis angegeben ist, wird die Umgebungsvariable\n"
"PGDATA verwendent.\n"
"\n"
#: pg_controldata.c:32
msgid "Report bugs to <pgsql-bugs@postgresql.org>.\n"
msgstr "Berichten Sie Fehler an <pgsql-bugs@postgresql.org>.\n"
#: pg_controldata.c:52
msgid "unrecognized status code"
msgstr "unerkannter Statuscode"
#: pg_controldata.c:100
#, c-format
msgid "%s: no data directory specified\n"
msgstr "%s: kein Datenverzeichnis angegeben\n"
#: pg_controldata.c:108
#, c-format
msgid "%s: could not open file \"%s\" for reading (%s)\n"
msgstr "%s: konnte Datei %s nicht zum Lesen ffnen (%s)\n"
#: pg_controldata.c:115
#, c-format
msgid "%s: could not read file \"%s\" (%s)\n"
msgstr "%s: konnte Datei %s nicht zum Lesen ffnen (%s)\n"
#: pg_controldata.c:129
msgid ""
"WARNING: Calculated CRC checksum does not match value stored in file.\n"
"Either the file is corrupt, or it has a different layout than this program\n"
"is expecting. The results below are untrustworthy.\n"
"\n"
msgstr ""
"WARNUNG: Berechnete CRC-Checksumme stimmt nicht mit dem Wert in der Datei\n"
"berein. Entweder ist die Datei kaputt oder sie hat ein anderes Layout\n"
"als von diesem Program erwartet. Die Ergebnisse unten sind nicht\n"
"verlsslich.\n"
"\n"
#: pg_controldata.c:142
#, c-format
msgid "pg_control version number: %u\n"
msgstr "pg_control-Versionsnummer: %u\n"
#: pg_controldata.c:143
#, c-format
msgid "Catalog version number: %u\n"
msgstr "Katalog-Versionsnummer: %u\n"
#: pg_controldata.c:144
#, c-format
msgid "Database cluster state: %s\n"
msgstr "Datenbank-Cluster-Status: %s\n"
#: pg_controldata.c:145
#, c-format
msgid "pg_control last modified: %s\n"
msgstr "pg_control zuletzt gendert: %s\n"
#: pg_controldata.c:146
#, c-format
msgid "Current log file ID: %u\n"
msgstr "Aktuelle Logdatei-ID: %u\n"
#: pg_controldata.c:147
#, c-format
msgid "Next log file segment: %u\n"
msgstr "Nchstes Logdatei-Segment: %u\n"
#: pg_controldata.c:148
#, c-format
msgid "Latest checkpoint location: %X/%X\n"
msgstr "Letzter Checkpoint-Ort: %X/%X\n"
#: pg_controldata.c:150
#, c-format
msgid "Prior checkpoint location: %X/%X\n"
msgstr "Voriger Checkpoint-Ort: %X/%X\n"
#: pg_controldata.c:152
#, c-format
msgid "Latest checkpoint's REDO location: %X/%X\n"
msgstr "REDO-Ort vom letzten Checkpoint: %X/%X\n"
#: pg_controldata.c:154
#, c-format
msgid "Latest checkpoint's UNDO location: %X/%X\n"
msgstr "UNDO-Ort vom letzten Checkpoint: %X/%X\n"
#: pg_controldata.c:156
#, c-format
msgid "Latest checkpoint's StartUpID: %u\n"
msgstr "StartUpID vom letzten Checkpoint: %u\n"
#: pg_controldata.c:157
#, c-format
msgid "Latest checkpoint's NextXID: %u\n"
msgstr "NextXID vom letzten Checkpoint: %u\n"
#: pg_controldata.c:158
#, c-format
msgid "Latest checkpoint's NextOID: %u\n"
msgstr "NextOID vom letzten Checkpoint: %u\n"
#: pg_controldata.c:159
#, c-format
msgid "Time of latest checkpoint: %s\n"
msgstr "Zeit vom letzten Checkpoint: %s\n"
#: pg_controldata.c:160
#, c-format
msgid "Database block size: %u\n"
msgstr "Datenbank-Blockgre: %u\n"
#: pg_controldata.c:161
#, c-format
msgid "Blocks per segment of large relation: %u\n"
msgstr "Blcke pro Segment: %u\n"
#: pg_controldata.c:162
#, c-format
msgid "Maximum length of identifiers: %u\n"
msgstr "Hchstlnge von Namen: %u\n"
#: pg_controldata.c:163
#, c-format
msgid "Maximum number of function arguments: %u\n"
msgstr "Maximale Funktionsargumente: %u\n"
#: pg_controldata.c:164
#, c-format
msgid "Date/time type storage: %s\n"
msgstr "Speicherung von Datum/Zeit-Typen: %s\n"
#: pg_controldata.c:165
msgid "64-bit integers"
msgstr "64-Bit Ganzzahlen"
#: pg_controldata.c:165
msgid "Floating point"
msgstr "Fliekommazahlen"
#: pg_controldata.c:166
#, c-format
msgid "Maximum length of locale name: %u\n"
msgstr "Maximallnge eines Locale-Namens: %u\n"
#: pg_controldata.c:167
#, c-format
msgid "LC_COLLATE: %s\n"
msgstr "LC_COLLATE: %s\n"
#: pg_controldata.c:168
#, c-format
msgid "LC_CTYPE: %s\n"
msgstr "LC_CTYPE: %s\n"
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment