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
9eced003
Commit
9eced003
authored
Nov 20, 2007
by
Bruce Momjian
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Split release notes up into smaller sections; easier to read.
parent
e66d0c62
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
365 additions
and
335 deletions
+365
-335
doc/src/sgml/release.sgml
doc/src/sgml/release.sgml
+365
-335
No files found.
doc/src/sgml/release.sgml
View file @
9eced003
<!-- $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.55
3 2007/11/20 05:23:20
momjian Exp $ -->
<!-- $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.55
4 2007/11/20 17:10:25
momjian Exp $ -->
<!--
<!--
Typical markup:
Typical markup:
...
@@ -232,376 +232,390 @@ do it for earlier branch release files.
...
@@ -232,376 +232,390 @@ do it for earlier branch release files.
Observe the following incompatibilities:
Observe the following incompatibilities:
</para>
</para>
<itemizedlist>
<sect3>
<title>General</title>
<itemizedlist>
<listitem>
<listitem>
<para>
<para>
Non-character data types are no longer automatically cast to
Non-character data types are no longer automatically cast to
<type>TEXT</> (Peter, Tom)
<type>TEXT</> (Peter, Tom)
</para>
</para>
<para>
<para>
Previously, if a non-character value was supplied to an operator or
Previously, if a non-character value was supplied to an operator or
function that requires <type>text</> input, it was automatically
function that requires <type>text</> input, it was automatically
cast to <type>text</>, for most (though not all) built-in data types.
cast to <type>text</>, for most (though not all) built-in data types.
This no longer happens: an explicit cast to <type>text</> is now
This no longer happens: an explicit cast to <type>text</> is now
required for all non-character-string types. For example, these
required for all non-character-string types. For example, these
expressions formerly worked:
expressions formerly worked:
<programlisting>
<programlisting>
substr(current_date, 1, 4)
substr(current_date, 1, 4)
23 LIKE '2%'
23 LIKE '2%'
</programlisting>
</programlisting>
but will now draw <quote>function does not exist</> and <quote>operator
but will now draw <quote>function does not exist</> and <quote>operator
does not exist</> errors respectively. Use an explicit cast instead:
does not exist</> errors respectively. Use an explicit cast instead:
<programlisting>
<programlisting>
substr(current_date::text, 1, 4)
substr(current_date::text, 1, 4)
23::text LIKE '2%'
23::text LIKE '2%'
</programlisting>
</programlisting>
(Of course, you can use the more verbose <literal>CAST()</> syntax too.)
(Of course, you can use the more verbose <literal>CAST()</> syntax too.)
The reason for the change is that these automatic casts too often caused
The reason for the change is that these automatic casts too often caused
surprising behavior. An example is that in previous releases, this
surprising behavior. An example is that in previous releases, this
expression was accepted but did not do what was expected:
expression was accepted but did not do what was expected:
<programlisting>
<programlisting>
current_date < 2017-11-17
current_date < 2017-11-17
</programlisting>
</programlisting>
This is actually comparing a date to an integer, which should be
This is actually comparing a date to an integer, which should be
(and now is) rejected — but in the presence of automatic
(and now is) rejected — but in the presence of automatic
casts both sides were cast to <type>text</> and a textual comparison
casts both sides were cast to <type>text</> and a textual comparison
was done, because the <literal>text < text</> operator was able
was done, because the <literal>text < text</> operator was able
to match the expression when no other <literal><</> operator could.
to match the expression when no other <literal><</> operator could.
</para>
</para>
<para>
<para>
Types <type>char(<replaceable>n</>)</type> and
Types <type>char(<replaceable>n</>)</type> and
<type>varchar(<replaceable>n</>)</type> still cast to <type>text</>
<type>varchar(<replaceable>n</>)</type> still cast to <type>text</>
automatically. Also, automatic casting to <type>text</> still works for
automatically. Also, automatic casting to <type>text</> still works for
inputs to the concatenation (<literal>||</>) operator, so long as least
inputs to the concatenation (<literal>||</>) operator, so long as least
one input is a character-string type.
one input is a character-string type.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Full text search features from <filename>contrib/tsearch2</> have
Full text search features from <filename>contrib/tsearch2</> have
been moved into the core server, with some minor syntax changes
been moved into the core server, with some minor syntax changes
</para>
</para>
<para>
<para>
<filename>contrib/tsearch2</> now contains a compatibility
<filename>contrib/tsearch2</> now contains a compatibility
interface.
interface.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Numerous changes in administrative server parameters
<literal>ARRAY(SELECT ...)</literal>, where the <command>SELECT</>
</para>
returns no rows, now returns an empty array, rather than NULL
(Tom)
</para>
</listitem>
<para>
<listitem>
<varname>bgwriter_lru_percent</>,
<para>
<varname>bgwriter_all_percent</>,
The array type name for a base data type is no longer always the base
<varname>bgwriter_all_maxpages</>,
type's name with an underscore prefix
<varname>stats_start_collector</>, and
</para>
<varname>stats_reset_on_server_start</> are removed.
<varname>redirect_stderr</> is renamed to
<varname>logging_collector</>.
<varname>stats_command_string</> is renamed to
<varname>track_activities</>.
<varname>stats_block_level</> and <varname>stats_row_level</>
are merged into <varname>track_counts</>.
A new boolean configuration parameter, <varname>archive_mode</>,
controls archiving. Autovacuum's default settings have changed.
</para>
</listitem>
<listitem>
<para>
<para>
The old naming convention is still honored when possible, but
Commenting out a parameter in <filename>postgresql.conf</> now
application code should no longer depend on it. Instead
causes it to revert to its default value (Joachim Wieland)
use the new <literal>pg_type.typarray</literal> column to
</para>
identify the array data type associated with a given type.
</para>
</listitem>
<para>
<listitem>
Previously, commenting out an entry left the parameter's value unchanged
<para>
until the next server restart.
<literal>ORDER BY ... USING</> <replaceable>operator</> must now
</para>
use a less-than or greater-than <replaceable>operator</> that is
</listitem>
defined in a btree operator class
</para>
<listitem>
<para>
<para>
This restriction was added to prevent inconsistent results.
<literal>ARRAY(SELECT ...)</literal>, where the <command>SELECT</>
</para>
returns no rows, now returns an empty array, rather than NULL
</listitem>
(Tom)
</para>
</listitem>
<listitem>
<listitem>
<para>
<para>
<literal>ORDER BY ... USING</> <replaceable>operator</> must now
<command>SET LOCAL</command> changes now persist until
use a less-than or greater-than <replaceable>operator</> that is
the end of the outermost transaction, unless rolled back (Tom)
defined in a btree operator class
</para>
</para>
<para>
<para>
This restriction was added to prevent inconsistent results.
Previously <command>SET LOCAL</command>'s effects were lost
</para>
after subtransaction commit (<command>RELEASE SAVEPOINT</>
</listitem>
or exit from a PL/pgSQL exception block).
</para>
</listitem>
<listitem>
<listitem>
<para>
<para>
The array type name for a base data type is no longer always the base
Commands rejected in transaction blocks are now also rejected in
type's name with an underscore prefix
multiple-statement query strings (Tom)
</para>
</para>
<para>
<para>
The old naming convention is still honored when possible, but
For example, <literal>"BEGIN; DROP DATABASE; COMMIT"</> will now be
application code should no longer depend on it. Instead
rejected even if submitted as a single query message.
use the new <literal>pg_type.typarray</literal> column to
</para>
identify the array data type associated with a given type.
</listitem>
</para>
</listitem>
<listitem>
<listitem>
<para>
<para>
<command>SET LOCAL</command> changes now persist until
<command>ROLLBACK</> outside a transaction block now
the end of the outermost transaction, unless rolled back (Tom)
issues <literal>NOTICE</> instead of <literal>WARNING</> (Bruce)
</para>
</para>
</listitem>
<para>
<listitem>
Previously <command>SET LOCAL</command>'s effects were lost
<para>
after subtransaction commit (<command>RELEASE SAVEPOINT</>
Prevent <command>NOTIFY</command>/<command>LISTEN</command>/<command>UNLISTEN</command>
or exit from a PL/pgSQL exception block).
from accepting schema-qualified names (Bruce)
</para>
</para>
</listitem>
<listitem
>
<para
>
<para>
Formerly, these commands accepted <literal>schema.relation</> but
Commands rejected in transaction blocks are now also rejected in
ignored the schema part, which was confusing.
multiple-statement query strings (Tom)
</para>
</
para
>
</
listitem
>
<para>
<listitem>
For example, <literal>"BEGIN; DROP DATABASE; COMMIT"</> will now be
<para>
rejected even if submitted as a single query message.
<command>ALTER SEQUENCE</> no longer affects <function>currval()</>
</para>
(Tom)
</listitem>
</para>
</listitem>
<listitem>
<listitem>
<para>
<para>
<command>ROLLBACK</> outside a transaction block now
Foreign keys now must match indexable conditions for
issues <literal>NOTICE</> instead of <literal>WARNING</> (Bruce)
cross-data-type references (Tom)
</para>
</para>
</listitem>
<listitem
>
<para
>
<para>
This improves semantic consistency and helps avoid
Prevent <command>NOTIFY</command>/<command>LISTEN</command>/<command>UNLISTEN</command>
performance problems.
from accepting schema-qualified names (Bruce)
</para>
</
para
>
</
listitem
>
<
para
>
<
listitem
>
Formerly, these commands accepted <literal>schema.relation</> but
<para>
ignored the schema part, which was confusing.
Restrict object size functions to users who have reasonable
</para>
permissions to view such information (Tom)
</listitem
>
</para
>
<listitem>
<para>
<para>
For example, <function>pg_database_size()</function> now requires
Restrict object size functions to users who have reasonable
<literal>CONNECT</> permission, which is granted to everyone by
permissions to view such information (Tom)
default. <function>pg_tablespace_size()</function> requires
</para>
<literal>CREATE</> permission in the tablespace, or is allowed if
the tablespace is the default tablespace for the database.
</para>
</listitem>
<para>
<listitem>
For example, <function>pg_database_size()</function> now requires
<para>
<literal>CONNECT</> permission, which is granted to everyone by
Remove the undocumented <literal>!!=</> (not in) operator (Tom)
default. <function>pg_tablespace_size()</function> requires
</para>
<literal>CREATE</> permission in the tablespace, or is allowed if
the tablespace is the default tablespace for the database.
</para>
</listitem>
<listitem>
<para>
<para>
<literal>NOT IN (SELECT ...)</literal> is the proper way to
Internal hashing functions are now more uniformly-distributed (Tom)
perform this operation.
</para>
</para>
</listitem>
<para>
<listitem>
If application code was computing and storing hash values using
<para>
internal <productname>PostgreSQL</> hashing functions, the hash
Internal hashing functions are now more uniformly-distributed (Tom)
values must be regenerated.
</para>
</para>
</listitem>
<listitem
>
<para
>
<para>
If application code was computing and storing hash values using
<command>ALTER SEQUENCE</> no longer affects <function>currval()</>
internal <productname>PostgreSQL</> hashing functions, the hash
(Tom)
values must be regenerated.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Foreign keys now must match indexable conditions for
C-code conventions for handling variable-length data values
cross-data-type references (
Tom)
have changed (Greg Stark,
Tom)
</para>
</para>
<para>
<para>
This improves semantic consistency and helps avoid
The new <function>SET_VARSIZE()</> macro <emphasis>must</> be used
performance problems.
to set the length of generated <type>varlena</> values. Also, it
</para>
might be necessary to expand (<quote>de-TOAST</quote>) input values
</listitem>
in more cases.
</para>
</listitem>
<listitem>
</itemizedlist>
<para>
Remove the undocumented <literal>!!=</> (not in) operator (Tom)
</para>
<para>
</sect3>
<literal>NOT IN (SELECT ...)</literal> is the proper way to
perform this operation.
</para>
</listitem>
<listitem>
<sect3>
<para>
<title>Configuration Parameters</title>
Remove <varname>stats_start_collector</varname> parameter (Tom)
</para>
<para>
<itemizedlist>
We now always start the collector process, unless <acronym>UDP</>
socket creation fails.
</para>
</listitem>
<listitem>
<listitem>
<para>
<para>
Remove <varname>stats_reset_on_server_start</varname> parameter (Tom)
Numerous changes in administrative server parameters
</para>
</para>
<para>
<para>
This was removed because <function>pg_stat_reset()</function>
<varname>bgwriter_lru_percent</>,
can be used for this purpose.
<varname>bgwriter_all_percent</>,
</para>
<varname>bgwriter_all_maxpages</>,
</listitem>
<varname>stats_start_collector</>, and
<varname>stats_reset_on_server_start</> are removed.
<varname>redirect_stderr</> is renamed to
<varname>logging_collector</>.
<varname>stats_command_string</> is renamed to
<varname>track_activities</>.
<varname>stats_block_level</> and <varname>stats_row_level</>
are merged into <varname>track_counts</>.
A new boolean configuration parameter, <varname>archive_mode</>,
controls archiving. Autovacuum's default settings have changed.
</para>
</listitem>
<listitem>
<listitem>
<para>
<para>
C-code conventions for handling variable-length data values
Remove <varname>stats_start_collector</varname> parameter (Tom)
have changed (Greg Stark, Tom)
</para>
</para>
<para>
<para>
The new <function>SET_VARSIZE()</> macro <emphasis>must</> be used
We now always start the collector process, unless <acronym>UDP</>
to set the length of generated <type>varlena</> values. Also, it
socket creation fails.
might be necessary to expand (<quote>de-TOAST</quote>) input values
</para>
in more cases.
</listitem>
</para>
</listitem>
</itemizedlist>
<listitem>
<para>
Remove <varname>stats_reset_on_server_start</varname> parameter (Tom)
</para>
<para>
This was removed because <function>pg_stat_reset()</function>
can be used for this purpose.
</para>
</listitem>
<para>
<listitem>
The following incompatibilities relate to character encodings:
<para>
</para>
Commenting out a parameter in <filename>postgresql.conf</> now
causes it to revert to its default value (Joachim Wieland)
</para>
<itemizedlist>
<para>
Previously, commenting out an entry left the parameter's value unchanged
until the next server restart.
</para>
</listitem>
<listitem>
</itemizedlist>
<para>
Add more checks for invalidly-encoded data (Andrew)
</para>
<para>
</sect3>
This change plugs some holes that existed in literal backslash
escape string processing and <command>COPY</command> escape
processing. Now the de-escaped string is rechecked to see if the
result created an invalid multi-byte character.
</para>
</listitem>
<listitem>
<para>
Ensure that <function>chr()</function> cannot create
invalidly-encoded values (Andrew)
</para>
<para>
<sect3>
In UTF8-encoded databases the argument of <function>chr()</function> is
<title>Character Encodings</title>
now treated as a Unicode code point. In other multi-byte encodings
<function>chr()</function>'s argument must designate a 7-bit ASCII
character. Zero is no longer accepted.
<function>ascii()</function> has been adjusted to match.
</para>
</listitem>
<listitem>
<itemizedlist>
<para>
Adjust <function>convert()</function> behavior to ensure encoding
validity (Andrew)
</para>
<para>
<listitem>
The two argument form of <function>convert()</function> has been
<para>
removed. The three argument form now takes a <type>bytea</type>
Add more checks for invalidly-encoded data (Andrew)
first argument and returns a <type>bytea</type>. To cover the
</para>
loss of functionality, three new functions have been added:
</para>
<itemizedlist>
<para>
<listitem>
This change plugs some holes that existed in literal backslash
<para>
escape string processing and <command>COPY</command> escape
<function>convert_from(bytea, name)</function> returns
processing. Now the de-escaped string is rechecked to see if the
<type>text</> — converts the first argument from the named
result created an invalid multi-byte character.
encoding to the database encoding
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
<function>convert_to(text, name)</function> returns
Ensure that <function>chr()</function> cannot create
<type>bytea</> — converts the first argument from the
invalidly-encoded values (Andrew)
database encoding to the named encoding
</para>
</para>
</listitem>
<listitem>
<para>
<para>
In UTF8-encoded databases the argument of <function>chr()</function> is
<function>length(bytea, name)</function> returns
now treated as a Unicode code point. In other multi-byte encodings
<type>integer</> — gives the length of the first
<function>chr()</function>'s argument must designate a 7-bit ASCII
argument in characters in the named encoding
character. Zero is no longer accepted.
</para>
<function>ascii()</function> has been adjusted to match.
</listitem>
</para>
</itemizedlist>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Remove <literal>convert(argument USING conversion_name)</literal>
Adjust <function>convert()</function> behavior to ensure encoding
(Andrew)
validity
(Andrew)
</para>
</para>
<para>
<para>
Its behavior did not match the SQL standard.
The two argument form of <function>convert()</function> has been
</para>
removed. The three argument form now takes a <type>bytea</type>
</listitem>
first argument and returns a <type>bytea</type>. To cover the
loss of functionality, three new functions have been added:
</para>
<listitem>
<itemizedlist>
<para>
<listitem>
Make JOHAB encoding client-only (Tatsuo)
<para>
</para>
<function>convert_from(bytea, name)</function> returns
<type>text</> — converts the first argument from the named
encoding to the database encoding
</para>
</listitem>
<para>
<listitem>
JOHAB is not safe as a server-side encoding.
<para>
</para>
<function>convert_to(text, name)</function> returns
</listitem>
<type>bytea</> — converts the first argument from the
database encoding to the named encoding
</para>
</listitem>
</itemizedlist>
<listitem>
<para>
<function>length(bytea, name)</function> returns
<type>integer</> — gives the length of the first
argument in characters in the named encoding
</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>
Remove <literal>convert(argument USING conversion_name)</literal>
(Andrew)
</para>
<para>
Its behavior did not match the SQL standard.
</para>
</listitem>
<listitem>
<para>
Make JOHAB encoding client-only (Tatsuo)
</para>
<para>
JOHAB is not safe as a server-side encoding.
</para>
</listitem>
</itemizedlist>
</sect3>
</sect2>
</sect2>
...
@@ -888,6 +902,14 @@ current_date < 2017-11-17
...
@@ -888,6 +902,14 @@ current_date < 2017-11-17
</para>
</para>
</listitem>
</listitem>
<listitem>
<para>
Change server startup log message from <quote>database system is
ready</quote> to <quote>database system is ready to accept
connections</quote>
</para>
</listitem>
</itemizedlist>
</itemizedlist>
</sect3>
</sect3>
...
@@ -1034,6 +1056,13 @@ current_date < 2017-11-17
...
@@ -1034,6 +1056,13 @@ current_date < 2017-11-17
</para>
</para>
</listitem>
</listitem>
<listitem>
<para>
Fix pgstats counting of live and dead tuples to recognize that
committed and aborted transactions have different effects (Tom)
</para>
</listitem>
</itemizedlist>
</itemizedlist>
</sect3>
</sect3>
...
@@ -2128,17 +2157,9 @@ current_date < 2017-11-17
...
@@ -2128,17 +2157,9 @@ current_date < 2017-11-17
</sect3>
</sect3>
<sect3>
<sect3>
<title>S
ource Code
</title>
<title>S
erver Programming Interface (<acronym>SPI</>)
</title>
<itemizedlist>
<itemizedlist>
<listitem>
<para>
Rename macro <literal>DLLIMPORT</> to <literal>PGDLLIMPORT</> to
avoid conflicting with third party includes (like Tcl) that
define <literal>DLLIMPORT</> (Magnus)
</para>
</listitem>
<listitem>
<listitem>
<para>
<para>
Allow execution of cursor commands through
Allow execution of cursor commands through
...
@@ -2174,6 +2195,14 @@ current_date < 2017-11-17
...
@@ -2174,6 +2195,14 @@ current_date < 2017-11-17
</para>
</para>
</listitem>
</listitem>
</itemizedlist>
</sect3>
<sect3>
<title>Build Options</title>
<itemizedlist>
<listitem>
<listitem>
<para>
<para>
Add <application>configure</> <literal>--enable-profiling</>
Add <application>configure</> <literal>--enable-profiling</>
...
@@ -2191,8 +2220,9 @@ current_date < 2017-11-17
...
@@ -2191,8 +2220,9 @@ current_date < 2017-11-17
<listitem>
<listitem>
<para>
<para>
Create <quote>operator families</quote> to improve planning of
Fix <acronym>PGXS</> so extensions can be built against PostgreSQL
queries involving cross-data-type comparisons (Tom)
installations whose <application>pg_config</> program does not
appear first in the <varname>PATH</> (Tom)
</para>
</para>
</listitem>
</listitem>
...
@@ -2203,42 +2233,50 @@ current_date < 2017-11-17
...
@@ -2203,42 +2233,50 @@ current_date < 2017-11-17
</para>
</para>
</listitem>
</listitem>
</itemizedlist>
</sect3>
<sect3>
<title>Source Code</title>
<itemizedlist>
<listitem>
<listitem>
<para>
<para>
Update GIN <function>extractQuery()</> API to allow signalling
Rename macro <literal>DLLIMPORT</> to <literal>PGDLLIMPORT</> to
that nothing can satisfy the query (Teodor)
avoid conflicting with third party includes (like Tcl) that
define <literal>DLLIMPORT</> (Magnus)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Move <literal>NAMEDATALEN</> definition from
Create <quote>operator families</quote> to improve planning of
<filename>postgres_ext.h</> to <filename>pg_config_manual.h</>
queries involving cross-data-type comparisons (Tom)
(Peter)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Change server startup log message from <quote>database system is
Update GIN <function>extractQuery()</> API to allow signalling
ready</quote> to <quote>database system is ready to accept
that nothing can satisfy the query (Teodor)
connections</quote>
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Provide <function>strlcpy()</function> and
Move <literal>NAMEDATALEN</> definition from
<function>strlcat()</function> on all platforms, and replace
<filename>postgres_ext.h</> to <filename>pg_config_manual.h</>
error-prone uses of <function>strncpy()</function>,
(Peter)
<function>strncat()</function>, etc (Peter)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Fix pgstats counting of live and dead tuples to recognize that
Provide <function>strlcpy()</function> and
committed and aborted transactions have different effects (Tom)
<function>strlcat()</function> on all platforms, and replace
error-prone uses of <function>strncpy()</function>,
<function>strncat()</function>, etc (Peter)
</para>
</para>
</listitem>
</listitem>
...
@@ -2266,20 +2304,12 @@ current_date < 2017-11-17
...
@@ -2266,20 +2304,12 @@ current_date < 2017-11-17
<listitem>
<listitem>
<para>
<para>
Have
<function>quote_identifier()</function> and
<function>quote_identifier()</function> and
<application>pg_dump</application> no
t
quote keywords that are
<application>pg_dump</application> no
longer
quote keywords that are
unreserved according to the grammar (Tom)
unreserved according to the grammar (Tom)
</para>
</para>
</listitem>
</listitem>
<listitem>
<para>
Fix <acronym>PGXS</> so extensions can be built against PostgreSQL
installations whose <application>pg_config</> program does not
appear first in the <varname>PATH</> (Tom)
</para>
</listitem>
<listitem>
<listitem>
<para>
<para>
Change the on-disk representation of the <type>NUMERIC</type>
Change the on-disk representation of the <type>NUMERIC</type>
...
...
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