OSDN Git Service
Bruce Momjian [Sat, 10 Jan 2004 02:55:14 +0000 (02:55 +0000)]
Make non-wait pg_ctl start/stop message more accurate.
Bruce Momjian [Sat, 10 Jan 2004 02:21:08 +0000 (02:21 +0000)]
Allow BEGIN WORK to specify transaction isolation level, like START
TRANSACTION.
Tom Lane [Sat, 10 Jan 2004 00:30:21 +0000 (00:30 +0000)]
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.
Bruce Momjian [Fri, 9 Jan 2004 23:29:31 +0000 (23:29 +0000)]
Oops, can't do cpp tests inside macros; make two macros instead.
Bruce Momjian [Fri, 9 Jan 2004 23:27:20 +0000 (23:27 +0000)]
Remove ereport() from failed connection; already done, per Tom.
Bruce Momjian [Fri, 9 Jan 2004 23:11:39 +0000 (23:11 +0000)]
Fix for cancel key restarting postmaster, from Claudio
Bruce Momjian [Fri, 9 Jan 2004 21:15:51 +0000 (21:15 +0000)]
Have psql help show \w parameter as requied.
Bruce Momjian [Fri, 9 Jan 2004 21:12:55 +0000 (21:12 +0000)]
Done:
> * -Have psql '\i ~/<tab><tab>' actually load files it displays from home dir
Bruce Momjian [Fri, 9 Jan 2004 21:12:20 +0000 (21:12 +0000)]
Allow psql to handle tilde user expansion for file names.
Zach Irmen
Bruce Momjian [Fri, 9 Jan 2004 21:08:50 +0000 (21:08 +0000)]
Change PG_DELAY from msec to usec and use it consistenly rather than
select(). Add Win32 Sleep() for delay.
Dennis Bjorklund [Fri, 9 Jan 2004 20:36:00 +0000 (20:36 +0000)]
Translation updates
Bruce Momjian [Fri, 9 Jan 2004 04:58:09 +0000 (04:58 +0000)]
Add WIN32 pipe implementation that uses sockets.
Claudio Natoli
Bruce Momjian [Fri, 9 Jan 2004 03:07:32 +0000 (03:07 +0000)]
Remove duplicate include of value.h. I think it got in because Tom and I both added it.
Bruce Momjian [Fri, 9 Jan 2004 02:17:15 +0000 (02:17 +0000)]
Add comment about synchronous signals.
Bruce Momjian [Fri, 9 Jan 2004 02:02:43 +0000 (02:02 +0000)]
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.
Bruce Momjian [Fri, 9 Jan 2004 01:51:31 +0000 (01:51 +0000)]
German FAQ update.
Ian Barwick
Tom Lane [Fri, 9 Jan 2004 00:15:11 +0000 (00:15 +0000)]
Fix incorrect SQL syntax emitted when -E is given without -P.
Report and fix from Martin Pitt.
Tom Lane [Thu, 8 Jan 2004 23:40:27 +0000 (23:40 +0000)]
Remove broken (and unnecessary) definition of operator <> for _int4
datatype; the generic array comparators added in 7.4 supersede this.
Per report and patch from Korea PostgreSQL Users' Group.
Neil Conway [Thu, 8 Jan 2004 20:04:41 +0000 (20:04 +0000)]
Fix a spelling mistake in a comment.
Bruce Momjian [Thu, 8 Jan 2004 17:15:54 +0000 (17:15 +0000)]
Throw compile error if our non-thread-safe snprintf is used.
Bruce Momjian [Thu, 8 Jan 2004 16:01:58 +0000 (16:01 +0000)]
Update Russian FAQ.
Viktor Vislobokov
Bruce Momjian [Thu, 8 Jan 2004 15:51:24 +0000 (15:51 +0000)]
Update OSF thread flags for non-gcc compiles.
Dennis Bjorklund [Thu, 8 Jan 2004 10:47:40 +0000 (10:47 +0000)]
Translation updates
Dennis Bjorklund [Thu, 8 Jan 2004 08:36:50 +0000 (08:36 +0000)]
Translation updates
Tom Lane [Thu, 8 Jan 2004 06:01:21 +0000 (06:01 +0000)]
[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.
Bruce Momjian [Thu, 8 Jan 2004 04:24:24 +0000 (04:24 +0000)]
Fix Solaris thread build settings for non-gcc compilers.
Tom Lane [Wed, 7 Jan 2004 23:03:06 +0000 (23:03 +0000)]
make
Tom Lane [Wed, 7 Jan 2004 22:02:48 +0000 (22:02 +0000)]
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.
Dennis Bjorklund [Wed, 7 Jan 2004 21:51:13 +0000 (21:51 +0000)]
Translation updates
Tom Lane [Wed, 7 Jan 2004 21:12:56 +0000 (21:12 +0000)]
Add missing inclusion of nodes/value.h.
Neil Conway [Wed, 7 Jan 2004 18:56:30 +0000 (18:56 +0000)]
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.
Neil Conway [Wed, 7 Jan 2004 18:43:36 +0000 (18:43 +0000)]
Cleanup: move the 'Value' node into a separate file, rather than putting
it in the same file as the 'List' node.
Bruce Momjian [Wed, 7 Jan 2004 17:54:19 +0000 (17:54 +0000)]
Not done, per Tom:
> o Allow parameters to be specified by name and type during definition
Tom Lane [Wed, 7 Jan 2004 06:20:02 +0000 (06:20 +0000)]
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...)
Bruce Momjian [Wed, 7 Jan 2004 04:32:56 +0000 (04:32 +0000)]
Completed, I am pretty sure:
> o -Allow parameters to be specified by name and type during definition
Tom Lane [Wed, 7 Jan 2004 00:44:21 +0000 (00:44 +0000)]
pg_dump support for function parameter names.
Tom Lane [Tue, 6 Jan 2004 23:55:19 +0000 (23:55 +0000)]
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.
Bruce Momjian [Tue, 6 Jan 2004 23:15:22 +0000 (23:15 +0000)]
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
Tom Lane [Tue, 6 Jan 2004 22:22:37 +0000 (22:22 +0000)]
Suppress compiler warning (xlog_outrec is unused if not WAL_DEBUG).
Bruce Momjian [Tue, 6 Jan 2004 21:44:07 +0000 (21:44 +0000)]
Favor Freenode rather than EFnet in IRC listing. Freenode is more popular.
Bruce Momjian [Tue, 6 Jan 2004 20:01:13 +0000 (20:01 +0000)]
Done:
> * -Have psql \dn show only visible temp schemas using current_schemas()
Neil Conway [Tue, 6 Jan 2004 18:07:32 +0000 (18:07 +0000)]
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
Neil Conway [Tue, 6 Jan 2004 17:36:31 +0000 (17:36 +0000)]
Remove unused 'noversion' command-line option processing from the
backend.
Neil Conway [Tue, 6 Jan 2004 17:26:23 +0000 (17:26 +0000)]
Make the 'wal_debug' GUC variable a boolean (rather than an integer), and
hide it behind #ifdef WAL_DEBUG blocks.
Tom Lane [Tue, 6 Jan 2004 04:31:01 +0000 (04:31 +0000)]
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.
Tom Lane [Mon, 5 Jan 2004 23:39:54 +0000 (23:39 +0000)]
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.
Neil Conway [Mon, 5 Jan 2004 20:58:58 +0000 (20:58 +0000)]
Trivial refactoring: move analysis of ViewStmt into its own function for
readability and for the sake of consistency with the rest of analyze.c
Neil Conway [Mon, 5 Jan 2004 20:39:23 +0000 (20:39 +0000)]
Remove an old and out-of-date SGML comment from this file: we already
have WAL, outer joins, and TOAST.
Neil Conway [Mon, 5 Jan 2004 20:37:51 +0000 (20:37 +0000)]
Fix (yet another) instance of incorrect markup for a GUC variable.
Neil Conway [Mon, 5 Jan 2004 20:36:04 +0000 (20:36 +0000)]
Fix three trivial typos in comments.
Peter Eisentraut [Mon, 5 Jan 2004 19:15:48 +0000 (19:15 +0000)]
Translation updates
Tom Lane [Mon, 5 Jan 2004 18:04:39 +0000 (18:04 +0000)]
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.
Tom Lane [Mon, 5 Jan 2004 16:44:40 +0000 (16:44 +0000)]
Dept. of second thoughts: clause_selectivity shouldn't try to cache its
result for jointypes associated with IN processing.
Tom Lane [Mon, 5 Jan 2004 05:07:36 +0000 (05:07 +0000)]
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.
Bruce Momjian [Mon, 5 Jan 2004 00:54:24 +0000 (00:54 +0000)]
Update for 7.4.1 as newest version.
Peter Eisentraut [Sun, 4 Jan 2004 16:43:52 +0000 (16:43 +0000)]
Correct gettext URL.
Michael Meskes [Sun, 4 Jan 2004 14:49:06 +0000 (14:49 +0000)]
Fixed bug in GRANT OPTION FOR parsing.
Tom Lane [Sun, 4 Jan 2004 05:57:21 +0000 (05:57 +0000)]
There's no longer any good reason for genbki.sh and Gen_fmgrtab.sh to
run the data through cpp, and we know of at least one platform where
unusual cpp behavior breaks the process. So remove the cpp step,
and make consequent simplifications.
Tom Lane [Sun, 4 Jan 2004 04:17:01 +0000 (04:17 +0000)]
Fix portability bugs: char values passed to <ctype.h> functions must
be cast to unsigned char. We have learned this the hard way before.
Tom Lane [Sun, 4 Jan 2004 04:06:37 +0000 (04:06 +0000)]
Fix discrepancy in prototypes for HPUX pg_dlerror.
Tom Lane [Sun, 4 Jan 2004 04:02:15 +0000 (04:02 +0000)]
Fix ReadOffset() to work correctly when off_t is wider than int.
Tom Lane [Sun, 4 Jan 2004 03:51:52 +0000 (03:51 +0000)]
Merge restrictlist_selectivity into clauselist_selectivity by
teaching the latter to accept either RestrictInfo nodes or bare
clause expressions; and cache the selectivity result in the RestrictInfo
node when possible. This extends the caching behavior of approx_selectivity
to many more contexts, and should reduce duplicate selectivity
calculations.
Bruce Momjian [Sun, 4 Jan 2004 00:50:11 +0000 (00:50 +0000)]
Remove trailing newline from file.
Bruce Momjian [Sun, 4 Jan 2004 00:14:17 +0000 (00:14 +0000)]
Remove trailing semicolons from macro initializations in plpython.
Problem report on True64 Unix by Nikola Milutinovic.
Bruce Momjian [Sun, 4 Jan 2004 00:11:29 +0000 (00:11 +0000)]
Mention grabbing typedefs from pgsql/lib too.
Tom Lane [Sun, 4 Jan 2004 00:07:32 +0000 (00:07 +0000)]
Rewrite OR indexscan processing to be more flexible. We can now for the
first time generate an OR indexscan for a two-column index when the WHERE
condition is like 'col1 = foo AND (col2 = bar OR col2 = baz)' --- before,
the OR had to be on the first column of the index or we'd not notice the
possibility of using it. Some progress towards extracting OR indexscans
from subclauses of an OR that references multiple relations, too, although
this code is #ifdef'd out because it needs more work.
Tom Lane [Sat, 3 Jan 2004 05:47:44 +0000 (05:47 +0000)]
Must test for __hppa__ as well as __hppa to make linux-hppa happy.
Tom Lane [Thu, 1 Jan 2004 19:27:15 +0000 (19:27 +0000)]
Do an explicit fflush after writing a progress message with puts.
This ensures stdout is kept in sync with messages on stderr.
Per report from Olaf Ferger.
Bruce Momjian [Wed, 31 Dec 2003 16:14:44 +0000 (16:14 +0000)]
Make Solaris non-gcc thread flag "-mt" a compile flag, not a link flag.
Tom Lane [Tue, 30 Dec 2003 23:53:15 +0000 (23:53 +0000)]
Adjust the definition of RestrictInfo's left_relids and right_relids
fields: now they are valid whenever the clause is a binary opclause,
not only when it is a potential join clause (there is a new boolean
field canjoin to signal the latter condition). This lets us avoid
recomputing the relid sets over and over while examining indexes.
Still more work to do to make this as useful as it could be, because
there are places that could use the info but don't have access to the
RestrictInfo node.
Tom Lane [Tue, 30 Dec 2003 23:36:19 +0000 (23:36 +0000)]
Recommend SHOW, instead of pg_controldata, for checking LC_COLLATE and
LC_CTYPE settings of a database.
Bruce Momjian [Tue, 30 Dec 2003 23:13:51 +0000 (23:13 +0000)]
Add "-mt" link flag for Solaris non-gcc compiles when using threads ---
required.
Tom Lane [Tue, 30 Dec 2003 21:49:19 +0000 (21:49 +0000)]
Instead of trying to force WHERE clauses into CNF or DNF normal form,
just look for common clauses that can be pulled out of ORs. Per recent
discussion, extracting common clauses seems to be the only really useful
effect of normalization, and if we do it explicitly then we can avoid
cluttering the qual with partially-redundant duplicated expressions, which
was an unpleasant side-effect of the old approach.
Tom Lane [Tue, 30 Dec 2003 20:05:05 +0000 (20:05 +0000)]
Avoid running out of memory during hash_create, by not passing a
number-of-buckets that exceeds the size we actually plan to allow
the hash table to grow to. Per trouble report from Sean Shanny.
Tom Lane [Tue, 30 Dec 2003 00:03:03 +0000 (00:03 +0000)]
ShmemInitHash forgot to specify HASH_ALLOC flag bit in its hash_create
call. You'd think this would cause some problems, but because of the
way hash_create is coded, the only side-effect was creation of a useless
memory context for the hashtable.
Tom Lane [Mon, 29 Dec 2003 23:54:22 +0000 (23:54 +0000)]
Use hash table name, not one-size-fits-all 'DynaHashTable', to identify
memory contexts belonging to hash tables. Makes the memory stats printout
a little more useful.
Tom Lane [Mon, 29 Dec 2003 22:22:45 +0000 (22:22 +0000)]
Using canonicalize_qual() to get rid of duplicate index predicate
conditions is overkill; set_union() does the job about as well, and
much more efficiently. Furthermore this avoids assuming that
canonicalize_qual() will check for duplicate clauses at all, which
it may not always do.
Tom Lane [Mon, 29 Dec 2003 21:44:49 +0000 (21:44 +0000)]
Improve comment.
Tom Lane [Mon, 29 Dec 2003 21:33:09 +0000 (21:33 +0000)]
Tweak OpernameGetCandidates() to reduce palloc overhead --- profiling
showed that for common operator names such as '=', the pallocs done by
this routine occupied a surprisingly large fraction of the total time
for the parser to process an operator.
Michael Meskes [Mon, 29 Dec 2003 13:53:04 +0000 (13:53 +0000)]
Added missing whitespaces to array argument parsing.
Tom Lane [Sun, 28 Dec 2003 21:57:37 +0000 (21:57 +0000)]
Clean up the usage of canonicalize_qual(): in particular, be consistent
about whether it is applied before or after eval_const_expressions().
I believe there were some corner cases where the system would fail to
recognize that a partial index is applicable because of the previous
inconsistency. Store normal rather than 'implicit AND' representations
of constraints and index predicates in the catalogs.
initdb forced due to representation change of constraints/predicates.
Tom Lane [Sun, 28 Dec 2003 17:43:57 +0000 (17:43 +0000)]
Fix sanity-check code that mistakenly assumed error and notice messages
could never exceed 30K. Per report from Andreas Pflug.
Tom Lane [Sun, 28 Dec 2003 17:29:41 +0000 (17:29 +0000)]
Avoid infinite loop if connection is lost during PQexecStart() or
PQexecFinish(). Per report from Andreas Pflug.
Tom Lane [Sat, 27 Dec 2003 20:58:58 +0000 (20:58 +0000)]
Improve spinlock code for recent x86 processors: insert a PAUSE
instruction in the s_lock() wait loop, and use test before test-and-set
in TAS() macro to avoid unnecessary bus traffic. Patch from Manfred
Spraul, reworked a bit by Tom.
Tom Lane [Sat, 27 Dec 2003 18:20:18 +0000 (18:20 +0000)]
Remove incorrect remark about having to restart backend to load a new
version of a shared library.
Tom Lane [Fri, 26 Dec 2003 21:30:48 +0000 (21:30 +0000)]
Be a little more consistent about which terms are uppercased in
index entries.
Michael Meskes [Fri, 26 Dec 2003 20:00:00 +0000 (20:00 +0000)]
Fixed docs to clearly note that ecpg is originally a C precompiler and C++ stuff is not 100%.
Bruce Momjian [Thu, 25 Dec 2003 03:52:51 +0000 (03:52 +0000)]
Continued rearrangement to permit pgstat + BootstrapMain processes to be
fork/exec'd, in the same mode as the previous patch for backends.
Claudio Natoli
Bruce Momjian [Thu, 25 Dec 2003 03:44:05 +0000 (03:44 +0000)]
Patch that makes quoting "sameuser", "samegroup", and "all" remove
special meaning of these terms in pg_hba.conf.
Also changes ugly pg_hba.conf IPv6 netmask of
ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff to ::1/128.
Andrew Dunstan
Bruce Momjian [Thu, 25 Dec 2003 03:36:24 +0000 (03:36 +0000)]
> > I have no idea if this in Oracle or not. But it's something I
> > needed, and other people in the past asked about it too.
>
> It is in Oracle, but you aren't exactly on the spot. It should be
>
> IYYY - 4 digits ('2003')
> IYY - 3 digits ('003')
> IY - 2 digits ('03')
> I - 1 digit ('3')
Here is an updated patch that does that.
Kurt Roeckx
Michael Meskes [Wed, 24 Dec 2003 22:04:09 +0000 (22:04 +0000)]
Fixed segfault in parsing of EXEC SQL SELECT * FROM foo() AS TBL( c int, i int);
Bruce Momjian [Tue, 23 Dec 2003 23:13:14 +0000 (23:13 +0000)]
Supress non-temp schemas from psql \dn display.
Tom Lane [Tue, 23 Dec 2003 22:15:07 +0000 (22:15 +0000)]
Use inlined TAS() on PA-RISC, if we are compiling with gcc.
Patch inspired by original submission from ViSolve.
Tom Lane [Tue, 23 Dec 2003 21:56:21 +0000 (21:56 +0000)]
Fix a number of places where reconfiguring with a different installation
prefix would fail, because the new path did not get propagated to where
it needed to be. Note this would fail even with --enable-depend.
Tom Lane [Tue, 23 Dec 2003 21:50:38 +0000 (21:50 +0000)]
Fix compile warning.
Tom Lane [Tue, 23 Dec 2003 20:34:45 +0000 (20:34 +0000)]
More bogosity in alter_table test: sometimes causes prepare test to fail
by means of arbitrarily renaming tables the other test depends on.
Tom Lane [Tue, 23 Dec 2003 20:17:47 +0000 (20:17 +0000)]
alter_table test sometimes failed in parallel mode, because of transient
table name conflict against rangefuncs test.
Tom Lane [Tue, 23 Dec 2003 18:40:53 +0000 (18:40 +0000)]
Push responsibility for selecting out-of-line-assembler TAS code out to
the platform template files, instead of doing it directly in configure.in.
This seems cleaner, and also opens the door to making the choice be
dependent on the compiler being used.
Tom Lane [Tue, 23 Dec 2003 18:13:17 +0000 (18:13 +0000)]
Mop-up for HAS_TEST_AND_SET refactoring. Un-break two or three platforms
that were broken, try to make layout of s_lock.h entries consistent,
use HAVE_SPINLOCKS in preference to HAS_TEST_AND_SET everywhere outside
s_lock.h itself.
Bruce Momjian [Tue, 23 Dec 2003 03:52:10 +0000 (03:52 +0000)]
Have configure --without-spinlocks actually not use spinlock code, even
if supported by the cpu.