Commit Graph

23146 Commits

Author SHA1 Message Date
Michael Meskes 184523bc81 Used autoconf 2.59 this time. 2006-08-23 12:59:18 +00:00
Michael Meskes 02c3cdbaad Argh, forgot the new file yet again. 2006-08-23 12:51:26 +00:00
Michael Meskes 9bade3ff84 Replaced double-quote-fix with a hopefully better version.
Use initializer string length as size for character strings.
Added ecpg_config.h file that is created via configure.
2006-08-23 12:01:53 +00:00
Bruce Momjian efdec1ac1b Update COPY/VIEW item:
< 	o Allow COPY to output from SELECT
> 	o Allow COPY (SELECT ...) TO 'filename'
< 	  COPY should also be able to output views.
> 	  COPY should also be able to output views using COPY (SELECT
> 	  * FROM view) TO 'filename' internally.
2006-08-23 02:48:12 +00:00
Michael Meskes 54f5527606 Descriptor values were quoted twice.
Fixed some regression test problems.
2006-08-22 12:46:18 +00:00
Bruce Momjian a3132359fd In new "invalid byte sequence" error hint, call it "error", not
"failure".
2006-08-22 12:11:28 +00:00
Bruce Momjian 77f2c78ea6 Add info for get_* functions:
>
>   These would be for application use, not for use by pg_dump.
>
2006-08-22 03:40:39 +00:00
Bruce Momjian e11cab650c Add hint for "invalid byte sequence for encoding" error message,
suggesting review of client_encoding.
2006-08-22 03:30:20 +00:00
Tom Lane daebd5257c Ooops, ldap fix for win32 broke the non-win32 case. 2006-08-22 02:23:45 +00:00
Bruce Momjian 04b84f5a93 Generalize width_bucket() documentation because b1/b2 can be
interchanged.
2006-08-22 00:49:19 +00:00
Bruce Momjian f5caa1e9ec Add space between Win2000 and SP4. 2006-08-22 00:45:34 +00:00
Tom Lane 5405576a22 Fix encrypted-LDAP support so that it doesn't cause the server to fail
entirely on older Windows platforms without the needed library function.
Magnus Hagander
2006-08-21 19:21:38 +00:00
Tom Lane d7c310c1fa Minor code rearrangement to save a few cycles in RI_FKey_check when
the subject tuple is already deleted: we need not open the pk_rel
until after we check that.
2006-08-21 19:15:29 +00:00
Tom Lane 548237fc84 Remove obsolete tip about casting bool to int, per Taiki Yamaguchi. 2006-08-21 16:23:46 +00:00
Tom Lane 35af5422f6 Make the server track an 'XID epoch', that is, maintain higher-order bits
of the transaction ID counter.  Nothing is done with the epoch except to
store it in checkpoint records, but this provides a foundation with which
add-on code can pretend that XIDs never wrap around.  This is a severely
trimmed and rewritten version of the xxid patch submitted by Marko Kreen.
Per discussion, the epoch counter seems the only part of xxid that really
needs to be in the core server.
2006-08-21 16:16:31 +00:00
Bruce Momjian 1054c38069 Done:
< 	o Add a function to support Parse/DescribeStatement capability
> 	o -Add a function to support Parse/DescribeStatement capability
2006-08-21 12:50:29 +00:00
Bruce Momjian fe5d213378 Remove items, not needed anymore:
< * %Disallow changing DEFAULT expression of a SERIAL column?
<
<   This should be done only if the existing SERIAL problems cannot be
<   fixed.
<
< * %Disallow ALTER SEQUENCE changes for SERIAL sequences because pg_dump
<   does not dump the changes
2006-08-21 12:20:26 +00:00
Michael Meskes 333bc29fcb Fixed a few memory leaks. One indeed was part of a loop. 2006-08-21 10:48:21 +00:00
Tom Lane 2b2a50722c Fix all known problems with pg_dump's handling of serial sequences
by abandoning the idea that it should say SERIAL in the dump.  Instead,
dump serial sequences and column defaults just like regular ones.
Add a new backend command ALTER SEQUENCE OWNED BY to let pg_dump recreate
the sequence-to-column dependency that was formerly created "behind the
scenes" by SERIAL.  This restores SERIAL to being truly "just a macro"
consisting of component operations that can be stated explicitly in SQL.
Furthermore, the new command allows sequence ownership to be reassigned,
so that old mistakes can be cleaned up.

Also, downgrade the OWNED-BY dependency from INTERNAL to AUTO, since there
is no longer any very compelling argument why the sequence couldn't be
dropped while keeping the column.  (This forces initdb, to be sure the
right kinds of dependencies are in there.)

Along the way, add checks to prevent ALTER OWNER or SET SCHEMA on an
owned sequence; you can now only do this indirectly by changing the
owning table's owner or schema.  This is an oversight in previous
releases, but probably not worth back-patching.
2006-08-21 00:57:26 +00:00
Alvaro Herrera df18c51f29 Fix DROP OWNED BY to correctly consider the implicitly-deleted objects list for
each object to be deleted, instead of the previous hack that just skipped
INTERNAL dependencies, which didn't really work.  Per report from Tom Lane.

To do this, introduce a new performMultipleDeletions entry point in
dependency.c to delete multiple objects at once.  The dependency code then has
the responsability of tracking INTERNAL and AUTO dependencies as needed.

Along the way, change ObjectAddresses so that we can allocate an ObjectAddress
list from outside dependency.c and not have to export the internal
representation.
2006-08-20 21:56:16 +00:00
Michael Meskes 4e23d6e07d Fixed a few trivial memory leaks reported by Coverity just to test my setup. 2006-08-20 16:08:09 +00:00
Michael Meskes fc19744e58 Added another test 2006-08-19 15:10:00 +00:00
Michael Meskes 84844bab2c More SoC stuff 2006-08-19 13:42:40 +00:00
Tom Lane fb9e56eea1 Suppress subquery pullup/pushdown when a subquery contains volatile
functions in its targetlist, to avoid introducing multiple evaluations
of volatile functions that textually appear only once.  This is a
slightly tighter version of Jaime Casanova's recent patch.
2006-08-19 02:48:53 +00:00
Tom Lane 9bf760f7de Add a 'waiting' column to pg_stat_activity to carry the same information
that ps_status provides by appending 'waiting' to the PS display.  This
completes the project of making it feasible to turn off process title
updates and instead rely on pg_stat_activity.  Per my suggestion a few
weeks ago.
2006-08-19 01:36:34 +00:00
Andrew Dunstan 1be439084a Add installcheck-parallel target to top level makefiles. 2006-08-18 19:58:05 +00:00
Tom Lane 9a8920e1d7 Add PQdescribePrepared, PQdescribePortal, and related functions to libpq
to allow obtaining information about previously prepared statements and
open cursors.  Volkan Yazici
2006-08-18 19:52:39 +00:00
Michael Meskes 46d61eb218 Fixed a buffer overrun that was masked on Linux systems. 2006-08-18 16:30:53 +00:00
Bruce Momjian 121dd1cdf5 Add space before SP4. 2006-08-18 16:27:40 +00:00
Bruce Momjian 4c2aad4b26 Update Win2000SP4 mention. 2006-08-18 16:26:59 +00:00
Tom Lane 7aa772f03e Now that we've rearranged relation open to get a lock before touching
the rel, it's easy to get rid of the narrow race-condition window that
used to exist in VACUUM and CLUSTER.  Did some minor code-beautification
work in the same area, too.
2006-08-18 16:09:13 +00:00
Michael Meskes e91600d1c2 Changed lexer to no longer use the default rule.
Synced parser and keyword list.
Fixed parsing of CONNECT statement so it accepts a C string again.
2006-08-18 15:59:35 +00:00
Bruce Momjian 45436a403f Mention only Windows 2000SP4 works. 2006-08-18 15:51:28 +00:00
Bruce Momjian 63b71c3229 Update Win32 CMD quoting rules information location, CMD /?, from
Magnus.
2006-08-18 15:47:08 +00:00
Tom Lane e8ea9e9587 Implement archive_timeout feature to force xlog file switches to occur no more
than N seconds apart.  This allows a simple, if not very high performance,
means of guaranteeing that a PITR archive is no more than N seconds behind
real time.  Also make pg_current_xlog_location return the WAL Write pointer,
add pg_current_xlog_insert_location to return the Insert pointer, and fix
pg_xlogfile_name_offset to return its results as a two-element record instead
of a smashed-together string, as per recent discussion.

Simon Riggs
2006-08-17 23:04:10 +00:00
Peter Eisentraut bb764e94ce Produce a clean failure in configure when dtrace is selected but cannot be
found.  Besides stopping those early who have no dtrace installed
whatsoever, this will also alert those who have dtrace in /usr/sbin, which
might not be in the path, which would produce confusing failures much later
in the build process.

Add documentation about pointing configure to find dtrace.
2006-08-17 17:25:43 +00:00
Tom Lane 92c651f8b3 Fix an oversight in mergejoin planning: the planner would reject a
mergejoin possibility where the inner rel was less well sorted than
the outer (ie, it matches some but not all of the merge clauses that
can work with the outer), if the inner path in question is also the
overall cheapest path for its rel.  This is an old bug, but I'm not
sure it's worth back-patching, because it's such a corner case.
Noted while investigating a test case from Peter Hardman.
2006-08-17 17:06:37 +00:00
Tom Lane 144b0ae8ee Teach convert_subquery_pathkeys() to handle the case where the
subquery's pathkey is a RelabelType applied to something that appears
in the subquery's output; for example where the subquery returns a
varchar Var and the sort order is shown as that Var coerced to text.
This comes up because varchar doesn't have its own sort operator.
Per example from Peter Hardman.
2006-08-17 17:02:49 +00:00
Bruce Momjian 4e1bdcaabf Add:
< * Add support for arrays of domains
> 	o Add support for arrays of domains
> 	o Add support for arrays of complex types
2006-08-17 06:48:38 +00:00
Bruce Momjian 565de20ff7 Add:
> * Support a data type with specific enumerated values (ENUM)
>
>   http://archives.postgresql.org/pgsql-hackers/2006-08/msg00979.php
2006-08-17 06:45:12 +00:00
Bruce Momjian 6a5a241ee6 Add:
> * Add support for arrays of domains
2006-08-16 14:59:26 +00:00
Peter Eisentraut b2281fcd3a Put probes.o file in right directory, fixes dtrace compilation 2006-08-16 14:57:37 +00:00
Tom Lane d6ac61cd64 Seems some C compilers think 'restrict' is a fully reserved word.
Per buildfarm results from warthog.
2006-08-16 04:32:49 +00:00
Tom Lane 1395ac6c67 Add a hack so that get_type_io_data() can work from bootstrap.c's
internal TypInfo table in bootstrap mode.  This allows array_in and
array_out to be used during early bootstrap, which eliminates the
former obstacle to giving OUT parameters to built-in functions.
2006-08-15 22:36:17 +00:00
Tom Lane 355865c5a7 Add hooks to allow debugging and performance measurement plugins
to instrument PL/pgSQL.  Korry Douglas
2006-08-15 19:01:17 +00:00
Tom Lane abc3120e9b Add server support for "plugin" libraries that can be used for add-on tasks
such as debugging and performance measurement.  This consists of two features:
a table of "rendezvous variables" that allows separately-loaded shared
libraries to communicate, and a new GUC setting "local_preload_libraries"
that allows libraries to be loaded into specific sessions without explicit
cooperation from the client application.  To make local_preload_libraries
as flexible as possible, we do not restrict its use to superusers; instead,
it is restricted to load only libraries stored in $libdir/plugins/.  The
existing LOAD command has also been modified to allow non-superusers to
LOAD libraries stored in this directory.

This patch also renames the existing GUC variable preload_libraries to
shared_preload_libraries (after a suggestion by Simon Riggs) and does some
code refactoring in dfmgr.c to improve clarity.

Korry Douglas, with a little help from Tom Lane.
2006-08-15 18:26:59 +00:00
Tatsuo Ishii 66541c5aa5 Fix pgbench to handle empty lines in script files as documented.
patches contributed by Itagaki Takahiro.
2006-08-15 13:05:30 +00:00
Michael Meskes 2834fb6a83 Fixed a typo and made two mallocs Coverity friendly. 2006-08-15 12:46:25 +00:00
Michael Meskes 4a445f5d97 Sorry, forgot the new files. 2006-08-15 06:48:24 +00:00
Michael Meskes b30da7ba5f Added lots of SoC stuff made by Joachim.
Fixed broken newline on Windows.
Fixed a nasty buffer underrun that only occured when using Informix
no_indicator NULL setting on timestamps and intervals.
2006-08-15 06:40:20 +00:00