Commit 5f27ac6b authored by Tom Lane's avatar Tom Lane

Minor documentation improvements and markup fixes.

parent 71a5da47
......@@ -208,8 +208,8 @@ If the file you specify is
very simple, since the commands to do it are just:
<ProgramListing>
# simple HP-UX example
&percnt; cc +z +u -c foo.c
&percnt; ld -b -o foo.sl foo.o
% cc +z +u -c foo.c
% ld -b -o foo.sl foo.o
</ProgramListing>
</Para>
......@@ -221,21 +221,21 @@ If the file you specify is
Under SunOS 4.x, the commands look like:
<ProgramListing>
# simple SunOS 4.x example
&percnt; cc -PIC -c foo.c
&percnt; ld -dc -dp -Bdynamic -o foo.so foo.o
% cc -PIC -c foo.c
% ld -dc -dp -Bdynamic -o foo.so foo.o
</ProgramListing>
and the equivalent lines under Solaris 2.x are:
<ProgramListing>
# simple Solaris 2.x example
&percnt; cc -K PIC -c foo.c
&percnt; ld -G -Bdynamic -o foo.so foo.o
% cc -K PIC -c foo.c
% ld -G -Bdynamic -o foo.so foo.o
</ProgramListing>
or
<ProgramListing>
# simple Solaris 2.x example
&percnt; gcc -fPIC -c foo.c
&percnt; ld -G -Bdynamic -o foo.so foo.o
% gcc -fPIC -c foo.c
% ld -G -Bdynamic -o foo.so foo.o
</ProgramListing>
</Para>
......
......@@ -47,7 +47,7 @@ This package was originally written by Jolly Chen.
</ROW>
<ROW>
<ENTRY>pg_select</ENTRY>
<ENTRY>loop over the result of a select statement</ENTRY>
<ENTRY>loop over the result of a SELECT statement</ENTRY>
</ROW>
<ROW>
<ENTRY>pg_listen</ENTRY>
......@@ -76,7 +76,7 @@ This package was originally written by Jolly Chen.
</ROW>
<ROW>
<ENTRY>pg_lo_lseek</ENTRY>
<ENTRY>seek to a position on a large object</ENTRY>
<ENTRY>seek to a position in a large object</ENTRY>
</ROW>
<ROW>
<ENTRY>pg_lo_tell</ENTRY>
......@@ -168,14 +168,33 @@ proc getDBs { {host "localhost"} {port "5432"} } {
pg_connect -conninfo <REPLACEABLE CLASS="PARAMETER">connectOptions</REPLACEABLE>
pg_connect <REPLACEABLE CLASS="PARAMETER">dbName</REPLACEABLE> <OPTIONAL>-host <REPLACEABLE CLASS="PARAMETER">hostName</REPLACEABLE></OPTIONAL>
<OPTIONAL>-port <REPLACEABLE
CLASS="PARAMETER">portNumber</REPLACEABLE></OPTIONAL> <OPTIONAL>-tty
<REPLACEABLE CLASS="PARAMETER">pqtty</REPLACEABLE></OPTIONAL>
CLASS="PARAMETER">portNumber</REPLACEABLE></OPTIONAL> <OPTIONAL>-tty <REPLACEABLE
CLASS="PARAMETER">pqtty</REPLACEABLE></OPTIONAL>
<OPTIONAL>-options <REPLACEABLE
CLASS="PARAMETER">optionalBackendArgs</REPLACEABLE></OPTIONAL>
</SYNOPSIS>
<REFSECT2 ID="R2-PGTCL-PGCONNECT-1">
<REFSECT2INFO>
<DATE>1998-10-07</DATE>
</REFSECT2INFO>
<TITLE>Inputs (new style)
</TITLE>
<VARIABLELIST>
<VARLISTENTRY>
<TERM>
<REPLACEABLE CLASS="PARAMETER">connectOptions</REPLACEABLE>
</TERM>
<LISTITEM>
<PARA>A string of connection options, each written in the form keyword = value.
</PARA>
</LISTITEM>
</VARLISTENTRY>
</VARIABLELIST>
</REFSECT2>
<REFSECT2 ID="R2-PGTCL-PGCONNECT-2">
<REFSECT2INFO>
<DATE>1997-12-24</DATE>
</REFSECT2INFO>
<TITLE>Inputs (old style)
......@@ -213,7 +232,7 @@ pg_connect <REPLACEABLE CLASS="PARAMETER">dbName</REPLACEABLE> <OPTIONAL>-host <
<OPTIONAL>-tty <REPLACEABLE CLASS="PARAMETER">pqtty</REPLACEABLE></OPTIONAL>
</TERM>
<LISTITEM>
<PARA>(need information thomas 1997-12-24)
<PARA>Specifies file or tty for optional debug output from backend.
</PARA>
</LISTITEM>
</VARLISTENTRY>
......@@ -229,25 +248,6 @@ pg_connect <REPLACEABLE CLASS="PARAMETER">dbName</REPLACEABLE> <OPTIONAL>-host <
</VARIABLELIST>
</REFSECT2>
<REFSECT2 ID="R2-PGTCL-PGCONNECT-2">
<REFSECT2INFO>
<DATE>1998-10-07</DATE>
</REFSECT2INFO>
<TITLE>Inputs (new style)
</TITLE>
<VARIABLELIST>
<VARLISTENTRY>
<TERM>
<REPLACEABLE CLASS="PARAMETER">connectOptions</REPLACEABLE>
</TERM>
<LISTITEM>
<PARA>A string of connection options, each written in the form keyword = value.
</PARA>
</LISTITEM>
</VARLISTENTRY>
</VARIABLELIST>
</REFSECT2>
<REFSECT2 ID="R2-PGTCL-PGCONNECT-3">
<REFSECT2INFO>
<DATE>1997-12-24</DATE>
......@@ -423,7 +423,8 @@ Each entry in the list is a sublist of the format:
<para>
{optname label dispchar dispsize value}
<Para>
where the optname is usable as an option in pg_connect -conninfo.
where the optname is usable as an option in
<FUNCTION>pg_connect -conninfo</FUNCTION>.
</PARA>
</LISTITEM>
</VARLISTENTRY>
......@@ -785,7 +786,7 @@ created too many query result objects.
<REFNAME>pg_select
</REFNAME>
<REFPURPOSE>
loop over the result of a select statement
loop over the result of a SELECT statement
</REFPURPOSE>
<INDEXTERM ID="IX-PGTCL-PGSELECT-1"><PRIMARY>pgtcl</PRIMARY><SECONDARY>connecting</SECONDARY></INDEXTERM>
<INDEXTERM ID="IX-PGTCL-PGSELECT-2"><PRIMARY>pg_connect</PRIMARY></INDEXTERM>
......@@ -1500,7 +1501,7 @@ the actual string to write, not a variable name.
<REFNAMEDIV>
<REFNAME>pg_lo_lseek
</REFNAME>
<REFPURPOSE>seek to a position on a large object
<REFPURPOSE>seek to a position in a large object
</REFPURPOSE>
<INDEXTERM ID="IX-PGTCL-PGLOLSEEK-1"><PRIMARY>pgtcl</PRIMARY><SECONDARY>positioning</SECONDARY></INDEXTERM>
<INDEXTERM ID="IX-PGTCL-PGLOLSEEK-2"><PRIMARY>pg_lo_lseek</PRIMARY></INDEXTERM>
......
This diff is collapsed.
......@@ -284,7 +284,7 @@ SELECT lo_export(image.raster, "/tmp/motd") from image
*/
fd = open(filename, O_RDONLY, 0666);
if (fd &lt; 0) { /* error */
fprintf(stderr, "can't open unix file
fprintf(stderr, "can't open unix file %s\n", filename);
}
/*
......@@ -292,7 +292,7 @@ SELECT lo_export(image.raster, "/tmp/motd") from image
*/
lobjId = lo_creat(conn, INV_READ|INV_WRITE);
if (lobjId == 0) {
fprintf(stderr, "can't create large object");
fprintf(stderr, "can't create large object\n");
}
lobj_fd = lo_open(conn, lobjId, INV_WRITE);
......@@ -302,7 +302,7 @@ SELECT lo_export(image.raster, "/tmp/motd") from image
while ((nbytes = read(fd, buf, BUFSIZE)) &gt; 0) {
tmp = lo_write(conn, lobj_fd, buf, nbytes);
if (tmp &lt; nbytes) {
fprintf(stderr, "error while reading
fprintf(stderr, "error while reading large object\n");
}
}
......@@ -321,7 +321,7 @@ SELECT lo_export(image.raster, "/tmp/motd") from image
lobj_fd = lo_open(conn, lobjId, INV_READ);
if (lobj_fd &lt; 0) {
fprintf(stderr,"can't open large object %d",
fprintf(stderr,"can't open large object %d\n",
lobjId);
}
......@@ -335,7 +335,7 @@ SELECT lo_export(image.raster, "/tmp/motd") from image
fprintf(stderr,"&gt;&gt;&gt; %s", buf);
nread += nbytes;
}
fprintf(stderr,"0);
fprintf(stderr,"\n");
lo_close(conn, lobj_fd);
}
......@@ -349,7 +349,7 @@ SELECT lo_export(image.raster, "/tmp/motd") from image
lobj_fd = lo_open(conn, lobjId, INV_READ);
if (lobj_fd &lt; 0) {
fprintf(stderr,"can't open large object %d",
fprintf(stderr,"can't open large object %d\n",
lobjId);
}
......@@ -365,7 +365,7 @@ SELECT lo_export(image.raster, "/tmp/motd") from image
nbytes = lo_write(conn, lobj_fd, buf + nwritten, len - nwritten);
nwritten += nbytes;
}
fprintf(stderr,"0);
fprintf(stderr,"\n");
lo_close(conn, lobj_fd);
}
......@@ -385,7 +385,7 @@ SELECT lo_export(image.raster, "/tmp/motd") from image
*/
lobj_fd = lo_open(conn, lobjId, INV_READ);
if (lobj_fd &lt; 0) {
fprintf(stderr,"can't open large object %d",
fprintf(stderr,"can't open large object %d\n",
lobjId);
}
......@@ -394,7 +394,7 @@ SELECT lo_export(image.raster, "/tmp/motd") from image
*/
fd = open(filename, O_CREAT|O_WRONLY, 0666);
if (fd &lt; 0) { /* error */
fprintf(stderr, "can't open unix file
fprintf(stderr, "can't open unix file %s\n",
filename);
}
......@@ -404,7 +404,7 @@ SELECT lo_export(image.raster, "/tmp/motd") from image
while ((nbytes = lo_read(conn, lobj_fd, buf, BUFSIZE)) &gt; 0) {
tmp = write(fd, buf, nbytes);
if (tmp &lt; nbytes) {
fprintf(stderr,"error while writing
fprintf(stderr,"error while writing %s\n",
filename);
}
}
......@@ -432,7 +432,7 @@ SELECT lo_export(image.raster, "/tmp/motd") from image
PGresult *res;
if (argc != 4) {
fprintf(stderr, "Usage: %s database_name in_filename out_filename0,
fprintf(stderr, "Usage: %s database_name in_filename out_filename\n",
argv[0]);
exit(1);
}
......@@ -448,7 +448,7 @@ SELECT lo_export(image.raster, "/tmp/motd") from image
/* check to see that the backend connection was successfully made */
if (PQstatus(conn) == CONNECTION_BAD) {
fprintf(stderr,"Connection to database '%s' failed.0, database);
fprintf(stderr,"Connection to database '%s' failed.\n", database);
fprintf(stderr,"%s",PQerrorMessage(conn));
exit_nicely(conn);
}
......@@ -456,20 +456,20 @@ SELECT lo_export(image.raster, "/tmp/motd") from image
res = PQexec(conn, "begin");
PQclear(res);
printf("importing file
printf("importing file %s\n", in_filename);
/* lobjOid = importFile(conn, in_filename); */
lobjOid = lo_import(conn, in_filename);
/*
printf("as large object %d.0, lobjOid);
printf("as large object %d.\n", lobjOid);
printf("picking out bytes 1000-2000 of the large object0);
printf("picking out bytes 1000-2000 of the large object\n");
pickout(conn, lobjOid, 1000, 1000);
printf("overwriting bytes 1000-2000 of the large object with X's0);
printf("overwriting bytes 1000-2000 of the large object with X's\n");
overwrite(conn, lobjOid, 1000, 1000);
*/
printf("exporting large object to file
printf("exporting large object to file %s\n", out_filename);
/* exportFile(conn, lobjOid, out_filename); */
lo_export(conn, lobjOid,out_filename);
......
......@@ -691,13 +691,14 @@ AsciiRow (B)
</Term>
<ListItem>
<Para>
A bit map with one bit for each field in the row. The 1st
field corresponds to bit 7 of the 1st byte, the 2nd field
corresponds to bit 6 of the 1st byte, the 8th field corresponds
to bit 0 of the 1st byte, the 9th field corresponds to bit 8 of
the 2nd byte, and so on. The bit is set if the value of the
corresponding field is not NULL.
field corresponds to bit 7 (MSB) of the 1st byte, the 2nd
field corresponds to bit 6 of the 1st byte, the 8th field
corresponds to bit 0 (LSB) of the 1st byte, the 9th field
corresponds to bit 7 of the 2nd byte, and so on. Each bit
is set if the value of the corresponding field is not NULL.
If the number of fields is not a multiple of 8, the remainder
of the last byte in the bit map is wasted.
</Para>
<Para>
Then, for each field with a non-NULL value, there is the following:
......@@ -720,7 +721,10 @@ AsciiRow (B)
<ListItem>
<Para>
Specifies the value of the field itself in <Acronym>ASCII</Acronym>
characters. <Replaceable>n</Replaceable> is the above size minus 4.
characters. <Replaceable>n</Replaceable> is the above
size minus 4.
There is no trailing '\0' in the field data; the front
end must add one if it wants one.
</Para>
</ListItem>
</VarListEntry>
......@@ -985,11 +989,13 @@ BinaryRow (B)
<ListItem>
<Para>
A bit map with one bit for each field in the row. The 1st
field corresponds to bit 7 of the 1st byte, the 2nd field
corresponds to bit 6 of the 1st byte, the 8th field corresponds
to bit 0 of the 1st byte, the 9th field corresponds to bit 8 of
the 2nd byte, and so on. The bit is set if the value of the
corresponding field is not NULL.
field corresponds to bit 7 (MSB) of the 1st byte, the 2nd
field corresponds to bit 6 of the 1st byte, the 8th field
corresponds to bit 0 (LSB) of the 1st byte, the 9th field
corresponds to bit 7 of the 2nd byte, and so on. Each bit
is set if the value of the corresponding field is not NULL.
If the number of fields is not a multiple of 8, the remainder
of the last byte in the bit map is wasted.
</Para>
<Para>
Then, for each field with a non-NULL value, there is the following:
......@@ -1561,7 +1567,7 @@ NotificationResponse (B)
</Term>
<ListItem>
<Para>
The process ID of the backend process.
The process ID of the notifying backend process.
</Para>
</ListItem>
</VarListEntry>
......@@ -1571,7 +1577,7 @@ NotificationResponse (B)
</Term>
<ListItem>
<Para>
The name of the relation that the notify has been raised on.
The name of the condition that the notify has been raised on.
</Para>
</ListItem>
</VarListEntry>
......@@ -1664,7 +1670,7 @@ RowDescription (B)
</Term>
<ListItem>
<Para>
Specifies the number of fields in a row (and may be zero).
Specifies the number of fields in a row (may be zero).
</Para>
<Para>
Then, for each field, there is the following:
......@@ -1756,7 +1762,7 @@ StartupPacket (F)
</Term>
<ListItem>
<Para>
The database name, defaults to the user name if omitted.
The database name, defaults to the user name if empty.
</Para>
</ListItem>
</VarListEntry>
......
......@@ -73,6 +73,9 @@ Acknowledgement that notify command has executed.
</PARA>
</LISTITEM>
</VARLISTENTRY>
</variablelist>
</LISTITEM>
</VARLISTENTRY>
<VARLISTENTRY>
<TERM>
Notify events
......@@ -84,9 +87,6 @@ application reacts depends on its programming.
</PARA>
</LISTITEM>
</VARLISTENTRY>
</variablelist>
</LISTITEM>
</VARLISTENTRY>
</VARIABLELIST>
</REFSECT2>
</REFSYNOPSISDIV>
......
......@@ -104,7 +104,7 @@ The backend does not complain if you UNLISTEN something you were not
listening for.
<para>
Each backend will automatically execute <command>UNLISTEN "*"</command> when
Each backend will automatically execute <command>UNLISTEN *</command> when
exiting.
<para>
......
......@@ -27,7 +27,7 @@ to this guide when the installation is complete.
<Para>
Throughout this manual, any examples that begin with
the character <Quote>&percnt</Quote> are commands that should be typed
the character <Quote>%</Quote> are commands that should be typed
at the UNIX shell prompt. Examples that begin with the
character <Quote>*</Quote> are commands in the Postgres query
language, Postgres <Acronym>SQL</Acronym>.
......
......@@ -51,7 +51,7 @@
{
double x, y;
Complex *result;
if (sscanf(str, " ( &percnt;lf , &percnt;lf )", &amp;x, &amp;y) != 2) {
if (sscanf(str, " ( %lf , %lf )", &amp;x, &amp;y) != 2) {
elog(WARN, "complex_in: error in parsing
return NULL;
}
......@@ -71,7 +71,7 @@
if (complex == NULL)
return(NULL);
result = (char *) palloc(60);
sprintf(result, "(&percnt;g,&percnt;g)", complex-&gt;x, complex-&gt;y);
sprintf(result, "(%g,%g)", complex-&gt;x, complex-&gt;y);
return(result);
}
</ProgramListing>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment