Commit Graph

18639 Commits

Author SHA1 Message Date
98dcf085e3 Implement "WITH / WITHOID OIDS" clause for CREATE TABLE AS. This is
intended to allow application authors to insulate themselves from
changes to the default value of 'default_with_oids' in future releases
of PostgreSQL.

This patch also fixes a bug in the earlier implementation of the
'default_with_oids' GUC variable: code in gram.y should not examine
the value of GUC variables directly due to synchronization issues.
2004-01-10 23:28:45 +00:00
cf4c925dd4 Translation updates 2004-01-10 22:18:28 +00:00
a43f4307f7 Improve has_nullable_targetlist() to allow strict functions of simple
variables, not just simple variables.  This was foreseen in the original
coding of this routine, but not implemented until now.  Responds to
performance gripe from Laurent Perez.
2004-01-10 18:13:53 +00:00
47f8f33409 Translation updates 2004-01-10 15:02:50 +00:00
bbefabfd55 Translation updates 2004-01-10 10:39:26 +00:00
15a5440dc5 Translation updates 2004-01-10 09:09:40 +00:00
f9b29b8023 Make non-wait pg_ctl start/stop message more accurate. 2004-01-10 02:55:14 +00:00
a620a760ed Allow BEGIN WORK to specify transaction isolation level, like START
TRANSACTION.
2004-01-10 02:21:08 +00:00
e439fef6fc Fix subquery pullup logic to not be fooled when a view that appears
'simple' references another view that is not simple.  Must recheck
conditions after performing recursive pullup.  Per example from
Laurent Perez, 9-Jan-04.
2004-01-10 00:30:21 +00:00
6bd343329e Oops, can't do cpp tests inside macros; make two macros instead. 2004-01-09 23:29:31 +00:00
2afa36be9d Remove ereport() from failed connection; already done, per Tom. 2004-01-09 23:27:20 +00:00
9640cc7dfa Fix for cancel key restarting postmaster, from Claudio 2004-01-09 23:11:39 +00:00
5c0d0a2399 Have psql help show \w parameter as requied. 2004-01-09 21:15:51 +00:00
55a92063a7 Allow psql to handle tilde user expansion for file names.
Zach Irmen
2004-01-09 21:12:20 +00:00
38081fd000 Change PG_DELAY from msec to usec and use it consistenly rather than
select().   Add Win32 Sleep() for delay.
2004-01-09 21:08:50 +00:00
a76c86c7c1 Translation updates 2004-01-09 20:36:00 +00:00
ee7fbb1eaa Add WIN32 pipe implementation that uses sockets.
Claudio Natoli
2004-01-09 04:58:09 +00:00
0d2148a71e Remove duplicate include of value.h. I think it got in because Tom and I both added it. 2004-01-09 03:07:32 +00:00
59182d9901 Add comment about synchronous signals. 2004-01-09 02:17:15 +00:00
0150dbdce5 Allow libpq to do thread-safe SIGPIPE handling. This allows it to
ignore SIGPIPE from send() in libpq, but terminate on any other SIGPIPE,
unless the user installs their own signal handler.

This is a minor fix because the only time you get SIGPIPE from libpq's
send() is when the backend dies.
2004-01-09 02:02:43 +00:00
ccdeed7011 Fix incorrect SQL syntax emitted when -E is given without -P.
Report and fix from Martin Pitt.
2004-01-09 00:15:11 +00:00
bd98d159eb Fix a spelling mistake in a comment. 2004-01-08 20:04:41 +00:00
49c534fccb Throw compile error if our non-thread-safe snprintf is used. 2004-01-08 17:15:54 +00:00
177ca67095 Update OSF thread flags for non-gcc compiles. 2004-01-08 15:51:24 +00:00
002cafe7a4 Translation updates 2004-01-08 10:47:40 +00:00
b68021c240 Translation updates 2004-01-08 08:36:50 +00:00
92ff092d40 [Forced commit to add log message that I fat-fingered last time]
Give a more reasonable error message when lock file exists but has
zero length; prior code confused this with could-not-read-file case.
2004-01-08 06:01:21 +00:00
77f140008b Fix Solaris thread build settings for non-gcc compilers. 2004-01-08 04:24:24 +00:00
4f913efe73 make 2004-01-07 23:03:06 +00:00
cad5f4a8c4 Make some improvements in the intelligence of the partial-index
predicate tester.  It can now deal with commuted clauses (for
instance, 4 < x implies x > 3), subclauses more complicated than
a simple Var (for example, upper(x) = 't' implies upper(x) > 'a'),
and <> operators (for example, x < 3 implies x <> 4).  Still
only understands operators associated with btree opclasses, though.
Inspired by example from Martin Hampl.
2004-01-07 22:02:48 +00:00
504983859d Translation updates 2004-01-07 21:51:13 +00:00
2bc0c8b2b7 Add missing inclusion of nodes/value.h. 2004-01-07 21:12:56 +00:00
192ad63bd7 More janitorial work: remove the explicit casting of NULL literals to a
pointer type when it is not necessary to do so.

For future reference, casting NULL to a pointer type is only necessary
when (a) invoking a function AND either (b) the function has no prototype
OR (c) the function is a varargs function.
2004-01-07 18:56:30 +00:00
afca5d50dc Cleanup: move the 'Value' node into a separate file, rather than putting
it in the same file as the 'List' node.
2004-01-07 18:43:36 +00:00
304d6d5b63 Support function parameter names in plpgsql. This is the last of
Dennis Bjorklund's original patch for function parameter names, but
there's still plenty left to do (documentation for instance...)
2004-01-07 06:20:02 +00:00
6400d69d87 pg_dump support for function parameter names. 2004-01-07 00:44:21 +00:00
a77e32d7c5 Apply the core parts of Dennis Bjorklund's patch to allow function
parameters to be declared with names.  pg_proc has a column to store
names, and CREATE FUNCTION can insert data into it, but that's all as
yet.  I need to do more work on the pg_dump and plpgsql portions of the
patch before committing those, but I thought I'd get the bulky changes
in before the tree drifts under me.
initdb forced due to pg_proc change.
2004-01-06 23:55:19 +00:00
488f2785d0 Final rearrangement of main postgresql child process (ie.
BackendFork/SSDataBase/pgstat) startup, to allow fork/exec calls to
closely mimic (the soon to be provided) Win32 CreateProcess equivalent
calls.

Claudio Natoli
2004-01-06 23:15:22 +00:00
06288d4e22 Suppress compiler warning (xlog_outrec is unused if not WAL_DEBUG). 2004-01-06 22:22:37 +00:00
dfc7e7b71d Code cleanup, mostly in the smgr:
- Update comment in IsReservedName() to the present day

     - Improve some variable & function names in commands/vacuum.c. I
       was planning to rewrite this to avoid lappend(), but since I
       still intend to do the list rewrite, there's no need for that.

     - Update some smgr comments which seemed to imply that we still
       forced all dirty pages to disk at commit-time.

     - Replace some #ifdef DIAGNOSTIC code with assertions.

     - Make the distinction between OS-level file descriptors and
       virtual file descriptors a little clearer in a few comments

     - Other minor comment improvements in the smgr code
2004-01-06 18:07:32 +00:00
030f8e7313 Remove unused 'noversion' command-line option processing from the
backend.
2004-01-06 17:36:31 +00:00
bc028beb16 Make the 'wal_debug' GUC variable a boolean (rather than an integer), and
hide it behind #ifdef WAL_DEBUG blocks.
2004-01-06 17:26:23 +00:00
b0c4a50bbb Instead of rechecking lossy index operators by putting them into the
regular qpqual ('filter condition'), add special-purpose code to
nodeIndexscan.c to recheck them.  This ends being almost no net addition
of code, because the removal of planner code balances out the extra
executor code, but it is significantly more efficient when a lossy
operator is involved in an OR indexscan.  The old implementation had
to recheck the entire indexqual in such cases.
2004-01-06 04:31:01 +00:00
fa559a86ee Adjust indexscan planning logic to keep RestrictInfo nodes associated
with index qual clauses in the Path representation.  This saves a little
work during createplan and (probably more importantly) allows reuse of
cached selectivity estimates during indexscan planning.  Also fix latent
bug: wrong plan would have been generated for a 'special operator' used
in a nestloop-inner-indexscan join qual, because the special operator
would not have gotten into the list of quals to recheck.  This bug is
only latent because at present the special-operator code could never
trigger on a join qual, but sooner or later someone will want to do it.
2004-01-05 23:39:54 +00:00
5d472f6464 Trivial refactoring: move analysis of ViewStmt into its own function for
readability and for the sake of consistency with the rest of analyze.c
2004-01-05 20:58:58 +00:00
548523533f Fix three trivial typos in comments. 2004-01-05 20:36:04 +00:00
35b1fe122c Translation updates 2004-01-05 19:15:48 +00:00
5c74ce23db Improve UniquePath logic to detect the case where the input is already
known unique (eg, it is a SELECT DISTINCT ... subquery), and not do a
redundant unique-ification step.
2004-01-05 18:04:39 +00:00
cce442da6d Dept. of second thoughts: clause_selectivity shouldn't try to cache its
result for jointypes associated with IN processing.
2004-01-05 16:44:40 +00:00
9091e8d1b2 Add the ability to extract OR indexscan conditions from OR-of-AND
join conditions in which each OR subclause includes a constraint on
the same relation.  This implements the other useful side-effect of
conversion to CNF format, without its unpleasant side-effects.  As
per pghackers discussion of a few weeks ago.
2004-01-05 05:07:36 +00:00