Commit Graph

4796 Commits

Author SHA1 Message Date
Peter Eisentraut
8adf56f77a Privileges on functions and procedural languages 2002-02-18 23:11:58 +00:00
Tom Lane
e4dd067398 Replace number-of-distinct-values estimator equation, per recent
pghackers discussion.
2002-02-18 16:04:14 +00:00
Bruce Momjian
b4a5fa4518 Remove MAX/MIN() macros, use c.h Max/Min() instead. 2002-02-18 14:25:40 +00:00
Bruce Momjian
d622cf867b Disable LIMIT #,# syntax, as agreed to months ago. Print message saying
to use separate LIMIT/OFFSET clauses.
2002-02-18 06:49:20 +00:00
Bruce Momjian
890a012d0a Reorder postgresql.conf WAL section to be clearer. 2002-02-18 06:42:54 +00:00
Bruce Momjian
5651a1665f Don't mention TIOGA in Makefile and move strdup.c rule into proper
'ifdef' in Makefile.
2002-02-18 06:03:23 +00:00
Bruce Momjian
c448847378 Add better error text:
elog(LOG, "XLogWrite: new log file created - "
                     "consider increasing 'wal_files' in postgresql.conf.");
2002-02-18 05:44:45 +00:00
Tom Lane
3576820e78 Ensure that a cursor is scanned under the same scanCommandId it was
originally created with, so that the set of visible tuples does not
change as a result of other activity.  This essentially makes PG cursors
INSENSITIVE per the SQL92 definition.  See bug report of 13-Feb-02.
2002-02-14 15:24:10 +00:00
Tom Lane
fa046b6a92 Use RTLD_NOW, not RTLD_LAZY, as binding mode for dlopen() on all platforms.
This restores the Linux behavior to what it was in PG 7.0 and 7.1, and
causes other platforms to agree.  (Other well-tested platforms like HPUX
were doing it this way already.)  Per pghackers discussion over the past
month or so.
2002-02-12 23:41:25 +00:00
Tom Lane
9832a235c5 Modify COPY TO to emit carriage returns and newlines as backslash escapes
(backslash-r, backslash-n) for protection against newline-conversion
munging.  In future we will also tweak COPY FROM, but this part of the
change should be backwards-compatible.  Per pghackers discussion.
Also, update COPY reference page to describe the backslash conversions
more completely and accurately.
2002-02-12 21:25:41 +00:00
Tom Lane
028e13bc08 Tweak GiST code to work correctly on machines where 8-byte alignment
of pointers is required.  Patch from Teodor Sigaev per pghackers
discussion.  It's an ugly kluge but avoids forcing initdb; we'll put
a better fix into 7.3 or later.
2002-02-11 22:41:59 +00:00
Peter Eisentraut
2bd15ad0bc Fix for old FreeBSD versions that don't have RTLD_GLOBAL 2002-02-11 21:38:11 +00:00
Tom Lane
6799a6ca21 Repair problems with EvalPlanQual where target table is scanned as
inner indexscan (ie, one with runtime keys).  ExecIndexReScan must
compute or recompute runtime keys even if we are rescanning in the
EPQ case.  TidScan seems to have comparable problems.  Per bug
noted by Barry Lind 11-Feb-02.
2002-02-11 20:10:50 +00:00
Tom Lane
d99fb0d909 Don't Assert() that fsync() and close() never fail; I have seen this
crash on Solaris when over disk quota.  Instead, report such failures
via elog(DEBUG).
2002-02-10 22:56:31 +00:00
Bruce Momjian
dbb76bf2e0 Move sys/types.h to top, for hiroyuki hanai/ FreeBSD. 2002-02-08 16:30:11 +00:00
Tom Lane
0cc9917bb6 pgstat's truncation of query string needs to be multibyte-aware.
Patch from sugita@sra.co.jp.
2002-02-07 22:20:26 +00:00
Hiroshi Inoue
e206ff5946 Removed a check for REINDEX TABLE. 2002-02-07 00:27:30 +00:00
Tom Lane
bef0c8dc29 Add cast to suppress gcc warning on Darwin platform. 2002-01-30 19:34:55 +00:00
Peter Eisentraut
0d6813df4e Updates from Serguei Mokhov 2002-01-26 19:00:11 +00:00
Tom Lane
386f1809a7 Fix logic error in insert_fsm_page_entry: because compact_fsm_page_list
removes any empty chunks, the chunk previously added won't be there
anymore, so it's possible there is zero free space in the rel's page list
afterwards.  Must loop back and rerun the part that adds a chunk to
the list.
2002-01-24 15:31:43 +00:00
Peter Eisentraut
0363192c69 Update from Kova'cs Zolta'n 2002-01-18 21:25:00 +00:00
Tom Lane
b7bf03c9ed Fix misstatements added by Bruce. 2002-01-16 23:51:56 +00:00
Bruce Momjian
d781138235 Add more comments to tqual.c for visibility functions. 2002-01-16 23:09:09 +00:00
Tom Lane
cf97080fa4 TOAST needs to do at least minimal time-qual checking in order not to
mess up after an aborted VACUUM FULL, per today's pghackers discussion.
Add a suitable HeapTupleSatisfiesToast routine.  Remove useless special-
case test in HeapTupleSatisfiesVisibility macro for xmax =
BootstrapTransactionId; perhaps that was needed at one time, but it's
a waste of cycles now, not to mention actively wrong for SnapshotAny.
Along the way, add some much-needed comments to tqual.c, and simplify
toast_fetch_datum, which no longer needs to assume it may see chunks
out-of-order.
2002-01-16 20:29:02 +00:00
Tom Lane
0f2d949c1e Fix init_irels to close the pg_internal.init file before returning.
This saves one open file descriptor per backend, and avoids an
annoying NOTICE on Cygwin (which has trouble deleting open files).
Bug appears to date back to original coding of init_irels, circa 1992.
2002-01-16 17:34:42 +00:00
Tom Lane
d66b10833f If we fail to rename pg_internal.init into place, delete the useless
temporary file.  This seems to be a known failure mode under Cygwin,
so we might as well expend the extra line of code to be tidy.
2002-01-15 22:33:20 +00:00
Tom Lane
aa00e6134e Add more sanity-checking to PageAddItem and PageIndexTupleDelete,
to prevent spreading of corruption when page header pointers are bad.
Merge PageZero into PageInit, since it was never used separately, and
remove separate memset calls used at most other PageInit call points.
Remove IndexPageCleanup, which wasn't used at all.
2002-01-15 22:14:17 +00:00
Tom Lane
685a66cdfe Fix typo that caused equalTriggerDescs() to return false in cases where
the two trigger sets were logically equal, but not in the same order.
Caught by Holger Krug (hkrug@rationalizer.com).
2002-01-15 16:52:47 +00:00
Tom Lane
2004337785 Reduce severity of 'XLogFlush: request is not satisfied' error condition,
per my proposal of a couple days ago.  This will eliminate the unable-
to-restart-database class of problem that we have seen reported half a
dozen times with 7.1.*.
2002-01-14 17:55:57 +00:00
Thomas G. Lockhart
192061e45b Repair bugs in declarations of routines to add timestamptz and interval.
Thanks to Bruce for spotting it and Tom Lane for diagnosing it.
Since horology test output is changing anyway, add some date/time input
 tests to horology.sql. Some of these should move to the tests for the
 individual data types, and we perhaps should add an entire new test
 for "timezone" to allow manipulating the current time zone without
 risking damage to the results of other tests.
2002-01-12 04:38:38 +00:00
Tom Lane
5ab0ad5c7e VACUUM must make sure that a HEAP_MARKED_FOR_UPDATE tuple gets marked
as either HEAP_XMAX_COMMITTED or HEAP_XMAX_INVALID once the updating
transaction is gone.  Otherwise some other transaction may come along
and try to test the commit status of t_xmax later --- which could be
after VACUUM has recycled the CLOG status for that xact.  Bug introduced
in post-beta4 bug fix.
2002-01-11 20:07:03 +00:00
Tom Lane
eb5e8bae26 Fix sequence creation to set the t_xmin of a sequence's tuple to
FrozenTransactionId, not the XID of the creating transaction.  Without
this it's possible for a reference to a long-gone CLOG record to occur,
per Christian Meunier's bug report of 10-Jan-02.  Worse, the sequence
tuple would become invisible to SELECTs after 2 billion transactions.

Since the fix is applied during sequence creation it does not help
existing databases, unless you drop and recreate every sequence.
However, we intend to force initdb for 7.2RC1 anyway, to fix a pg_proc
error, so I see no need to do more for this problem.
2002-01-11 18:16:04 +00:00
Tom Lane
92a2598f97 The result of getopt() should be compared to -1, not EOF, per
pgsql-hackers discussion of this date.
2002-01-10 01:11:45 +00:00
Tom Lane
9facc585ad Fix use of 'char' to hold result of getc, per bug report forwarded by
Oliver Elphick.  A few other minor cleanups while at it.
2002-01-09 19:13:41 +00:00
Tom Lane
d079c419d2 Fix include paths for case of VPATH build. 2002-01-09 00:06:42 +00:00
Tom Lane
649d8543d3 Fix lpad() and rpad() to produce correct results in variable-length
multibyte encodings.
2002-01-08 17:03:41 +00:00
Tom Lane
5b9a058384 Tweak LWLock algorithms so that an awakened waiter for a lock is not
granted the lock when awakened; the signal now only means that the lock
is potentially available.  The waiting process must retry its attempt
to get the lock when it gets to run.  This allows the lock releasing
process to re-acquire the lock later in its timeslice.  Since LWLocks
are usually held for short periods, it is possible for a process to
acquire and release the same lock many times in a timeslice.  The old
spinlock-based implementation of these locks allowed for that; but the
original coding of LWLock would force a process swap for each acquisition
if there was any contention.  Although this approach reopens the door to
process starvation (a waiter might repeatedly fail to get the lock),
the odds of that being a big problem seem low, and the performance cost
of the previous approach is considerable.
2002-01-07 16:33:00 +00:00
Tom Lane
a510bf4326 If we fail to fork a new backend process, (try to) report the failure
to the client before closing the connection.  Before 7.2 this was done
correctly, but new code would simply close the connection with no report
to the client.
2002-01-06 21:40:02 +00:00
Tom Lane
3b6cbce458 Add CHECK_FOR_INTERRUPTS() in various strategic spots, per comments
from Hiroshi.
2002-01-06 00:37:44 +00:00
Tom Lane
1aff1d30d6 Fix some incorrect and obsolete commentary. 2002-01-04 17:06:51 +00:00
Thomas G. Lockhart
c826d1cefb Have to_date() call timestamptz_date() per Karel's email instructions.
Fixes time zone problems introduced by Thomas' implementation of
 TIMESTAMP WITHOUT TIME ZONE which caused the behavior of the previously
 appropriate routine, timestamp_date(), to change for the worse in this
 context.
2002-01-04 15:49:42 +00:00
Bruce Momjian
5a60ba5078 Replace #ifdef, #endif with # requires comment. 2002-01-04 05:50:25 +00:00
Tom Lane
dc6b4deb97 Require ownership permission for CREATE INDEX, per bug report.
Disallow CREATE INDEX on system catalogs, non-tables (views, sequences, etc).
Disallow CREATE/DROP TRIGGER on system catalogs, non-tables.
Disallow ALTER TABLE ADD/DROP CONSTRAINT on system catalogs.
Disallow FOREIGN KEY reference to non-table.
None of these things can actually work in the present system structure,
but the code was letting them pass without complaint.
2002-01-03 23:21:32 +00:00
Tom Lane
ab20692e1e SPI_cursor_open must copy by-reference parameter values into the
portal's memory context, so that they will live as long as the portal does.
2002-01-03 20:30:47 +00:00
Tom Lane
f7fb29dec3 Shouldn't try to copy null datums with datumCopy. 2002-01-03 18:01:59 +00:00
Tom Lane
b36df04ce2 Guard against roundoff errors in new selectivity-estimation code,
per bug report from Laurette Cisneros.
2002-01-03 04:02:34 +00:00
Tom Lane
bb2bff498c Fix to_timestamp/to_date so that zero year input for Y, YY, or YYY
formats will be taken as 2000, not year zero.  Per bug report from
Aasmund Midttun Godal.  Fix from Karel Zak.
2002-01-02 22:09:23 +00:00
Tom Lane
4764ae823b Do not accept interrupts in RESUME_INTERRUPTS() and END_CRIT_SECTION()
macros, but only at explicit CHECK_FOR_INTERRUPTS() calls.  Not clear
whether overenthusiastic acceptance of interrupts accounts for any real
bugs, but it definitely seems risky and unnecessary.
2002-01-01 23:16:22 +00:00
Tom Lane
1ccc67600b Fix race condition that could allow two concurrent transactions
to insert the same key into a supposedly unique index.  The bug is of
low probability, and may not explain any of the recent reports of
duplicated rows; but a bug is a bug.
2002-01-01 20:32:37 +00:00
Thomas G. Lockhart
c546170e77 Rename TIME token to ISOTIME to eliminate conflict with gram.y parser
token. Seems to be isolated to datetime.c and datetime.h.
2002-01-01 02:54:33 +00:00
Tom Lane
ee051baeac Make sure that all <ctype.h> routines are called with unsigned char
values; it's not portable to call them with signed chars.  I recall doing
this for the last release, but a few more uncasted calls have snuck in.
2001-12-30 23:09:42 +00:00
Bruce Momjian
6f901b6f5a Oops, only wanted datetime.c changes in there. lock stuff reversed out. 2001-12-29 21:30:32 +00:00
Bruce Momjian
9e7b9c6f54 Fix newly introduced datetime.c compile failure; not enough parens. 2001-12-29 21:28:18 +00:00
Thomas G. Lockhart
b7a0af7d64 Check a bit more carefully for preceeding ISO field tags
when decoding date fields.
2001-12-29 18:40:58 +00:00
Thomas G. Lockhart
b5e23db438 Rework the date/time parsing to tighten up some cases and to enable other
cases which should have worked but did not.
Now supports julian day (J2452271), ISO time labels (T040506) and various
 combinations of spaces and run-togethers of dates, times, and time zones.
All regression tests pass, and I have more tests to add after the 7.2
 release (don't want to require changes to the ancillary horology result
 files until after then).
2001-12-29 18:31:48 +00:00
Tom Lane
198152730b Improve LOCK_DEBUG logging code for LWLocks. 2001-12-28 23:26:04 +00:00
Peter Eisentraut
9d6d4dfeeb Update from Serguei Mokhov 2001-12-28 18:47:54 +00:00
Tom Lane
d3fc362ec2 Ensure that all direct uses of spinlock-protected data structures use
'volatile' pointers to access those structures, so that optimizing
compilers will not decide to move the structure accesses outside of the
spinlock-acquire-to-spinlock-release sequence.  There are no known bugs
in these uses at present, but based on bad experience with lwlock.c,
it seems prudent to ensure that we protect these other uses too.
Per pghackers discussion around 12-Dec.  (Note: it should not be
necessary to worry about structures protected by LWLocks, since the
LWLock acquire and release operations are not inline macros.)
2001-12-28 18:16:43 +00:00
Bruce Momjian
2fcc911750 Place PAM before REJECT in sample file. 2001-12-24 04:44:03 +00:00
Tom Lane
aed0c29f7e Fix mispeling ... 2001-12-23 07:25:39 +00:00
Peter Eisentraut
cb85a62807 Czech translation updates from Karel Zak 2001-12-21 22:30:49 +00:00
Peter Eisentraut
d56c072c83 Fix error 2001-12-21 22:27:34 +00:00
Tom Lane
12d17deb4f Use MemSet() rather than a loop to do blank-padding on PS_USE_CLOBBER_ARGV
machines.  I have just been observing some scenarios where set_ps_display
accounts for more than 10% of the backend CPU, and this loop has to be
the reason.
2001-12-21 15:22:09 +00:00
Thomas G. Lockhart
db667614ef Add full name of the month of July to the lookup table.
Thanks to Greg Sabino Mullane <greg@turnstep.com> for finding the problem.
2001-12-21 06:03:27 +00:00
Bruce Momjian
8799d84603 Add memcmp() test and new memcmp.c file, for SunOS. Tested by Tatsuo. 2001-12-20 21:23:05 +00:00
Bruce Momjian
48aa2dbe61 MIN() -> Min, fixes compile problem. 2001-12-20 02:39:26 +00:00
Tom Lane
8647c14228 Fix buffer-overrun problem in pretty printer. 2001-12-19 22:35:35 +00:00
Tom Lane
9aa2e7da51 Temporarily dike out GetUndoRecPtr() in checkpoint generation, since we
do not use the undo pointer anyway.  This is a quick-hack solution for
the three-way deadlock condition discussed in pghackers 17-Dec-01.
Need to find a better way of doing it.
2001-12-19 19:42:51 +00:00
Tom Lane
de59370844 Make sure that all variants of HeapTupleSatisfies will do the right thing
if presented with a tuple in process of being moved by VACUUM.  Per
bug report from Brian Hirt.
2001-12-19 17:18:39 +00:00
Bruce Momjian
e71493300c Move geqo enable into proper section. 2001-12-17 19:09:01 +00:00
Peter Eisentraut
2adce49615 Update Hungarian from Kovacs Zoltan 2001-12-13 22:02:20 +00:00
Tom Lane
990eb8552e Don't accept names of complex types (ie, relation types) as being
requests for implicit trivial coercions.  Prevents sillinesses like
this one:
regression=# select x.int8_tbl.q1 from int8_tbl x;
ERROR:  fmgr_info: function 270997776: cache lookup failed
2001-12-12 03:28:49 +00:00
Tom Lane
07009651ce Repair roundoff-error problem for stddev/variance results near zero,
per complaint from Kemin Zhou.
Fix lack of precision in numeric stddev/variance.
2001-12-11 02:02:12 +00:00
Tom Lane
63cc56de54 Suppress subquery pullup and pushdown when the subquery has any
set-returning functions in its target list.  This ensures that we
won't rewrite the query in a way that places set-returning functions
into quals (WHERE clauses).  Cf. bug reports from Joe Conway.
2001-12-10 22:54:12 +00:00
Tom Lane
584f818bef Declare LWLock pointers as volatile to prevent AIX compiler from
reordering operations at its whim.  Releasing TAS lock before we've
finished updating proc structure is uncool.
2001-12-10 21:13:50 +00:00
Peter Eisentraut
356c02b262 Update from Serguei Mokhov 2001-12-10 18:44:44 +00:00
Tom Lane
f3f8499bc0 Repair case-conversion error in to_date's handling of roman numerals.
From Manuel Sugawara, approved by Karel Zak.
2001-12-10 15:34:05 +00:00
Thomas G. Lockhart
eda51264c8 Allow variable (unrestricted) precision for TIME and TIMESTAMP types in parser. 2001-12-09 04:39:39 +00:00
Thomas G. Lockhart
cd8b354971 Honor the typmod field for time zone intervals. 2001-12-09 04:37:50 +00:00
Tatsuo Ishii
2b714fd66e Fix for usage of spirntf in more portable way. 2001-12-05 02:06:19 +00:00
Tatsuo Ishii
9f8ff2ab5a Re-enable SunOS4 port. Replace
RTLD_LAZY | RTLD_GLOBAL to 1.
It seems sunos4.h was accidentally modified between 7.1 and 7.2.
2001-12-05 02:03:59 +00:00
Tom Lane
969cc16c69 Enforce restriction that COPY DELIMITERS string must be exactly one
character; replace strchr() search with simple comparison to speed up
COPY IN.  Per discussion in pghackers.
2001-12-04 21:19:57 +00:00
Tom Lane
a0734d1eb1 Change appendStringInfoChar to appendStringInfoCharMacro in a couple of
hot spots --- buys about 10% in Verner's INSERT example.
2001-12-04 20:57:22 +00:00
Tom Lane
f4bd04bb67 Replace pq_getbytes(&ch, 1) calls with pq_getbyte(), which is easier
to use and significantly faster.  This tweak saves 25% (!) of the runtime
of COPY IN in a test with 8000-character lines.  I wouldn't normally
commit a performance improvement this late in the cycle, but 25% got
my attention...
2001-12-04 19:40:17 +00:00
Tom Lane
dae887abfe Remove now-dead code for processing CONSTR_UNIQUE nodes in
AlterTableAddConstraint.  Earlier reorganization of the parser's
processing of ALTER TABLE means that these node types no longer get here.
2001-12-04 17:19:48 +00:00
Bruce Momjian
1af6761207 Hi Bruce, here is a first version of the hu.po file for the backend. I
tested it with 7.2b3 and worked fine.

Regards, Zoltan
2001-12-04 17:00:51 +00:00
Tom Lane
0e9e888ebd Suppress data directory access-permissions check when __CYGWIN__,
per recent pghackers discussions.  Improving this should be a TODO
for 7.3.
2001-12-04 16:17:48 +00:00
Tom Lane
c3cf68de6b Fix latent bug in checking for failure of hashtable creation. 2001-12-03 19:02:58 +00:00
Bruce Momjian
1a88682d45 attachement is the NLS patch for backend/po & pg_dump,
they are all against the current CVS tree. the patch is about 70K.

    regards    laser
2001-12-03 18:43:21 +00:00
Tom Lane
ac06a7a21f Try to make genbki.sh a little more bulletproof, per trouble report
from Paul Stavrides.
2001-11-30 20:21:06 +00:00
Tom Lane
c31bcbc8d6 Repair failure to mark an inserted Materialize node with the appropriate
extParam/locParam lists.  Per bug #526.
2001-11-30 19:24:15 +00:00
Peter Eisentraut
22a6a7e371 updates 2001-11-30 18:04:23 +00:00
Tom Lane
636a939fe5 Fix array_out's failure to backslash backslashes, per bug# 524. Also,
remove brain-dead rule that double quotes are needed if and only if the
datatype is pass-by-reference; neither direction of the implication holds
water.  Instead, examine the actual data string to see if it contains
any characters that force us to quote it.
Add some documentation about quoting of array values, which was previously
explained nowhere AFAICT.
2001-11-29 21:02:41 +00:00
Peter Eisentraut
0556f7ca87 NLS updates, most notably fixed zh_TW translations 2001-11-29 18:59:28 +00:00
Tom Lane
8e75b36aeb Fix unportable, non-spec-compliant use of offsetof() with a nonconstant
member offset.
2001-11-26 22:31:08 +00:00
Tom Lane
2337780e0e Change display of FieldSelect nodes from arg.field to field(arg),
per bug report from Stefan Hadjistoytchev.  There are some cases
where the dot notation works, but there are more where it doesn't.
Eventually ought to consider fixing the parser to allow cases like
func().field, but for now this is the simplest patch.
2001-11-26 21:15:14 +00:00
Tom Lane
e59334994e Repair problem with listing rules that have a WHERE condition and
have an INSERT...SELECT as the first or only action.  Per bug report
from Sergio Pili.
2001-11-26 00:29:15 +00:00
Bruce Momjian
b1a40bfe51 Backend /po patch.
http://laser.zhengmai.com.cn/download/backend_zh_CN.po.diff.gz

Weiping He
2001-11-25 18:25:54 +00:00
Tom Lane
2ec958721d Tweak int8in to accept -9223372036854775808, per recent discussion in
pgsql-patches.
2001-11-24 19:57:06 +00:00
Tom Lane
cd255bb070 Fix boundary condition in btbulkdelete: don't examine high key in case
where rightmost index page splits while we are waiting to obtain exclusive
lock on it.  Not clear this would actually hurt (probably the callback
would always fail), but better safe than sorry.
Also, improve comments describing concurrency considerations in this code.
2001-11-23 23:41:54 +00:00
Tom Lane
6c134eb6f1 Spell 'precedes', 'preceding' correctly in various places. 2001-11-21 22:57:01 +00:00
Tom Lane
82bad53cf5 Insert CommandCounterIncrement call into SPI_cursor_open. 2001-11-21 18:30:58 +00:00
Tom Lane
dcdf9119a8 Tweak interval_avg support to avoid coredump with Alpha/Tru64 compiler.
Per report from Bernd Tegge.
2001-11-21 18:29:48 +00:00
Thomas G. Lockhart
90e757c17d Add a few new time zones, and list every time zone mentioned in my
Linux box's time zone database.
Do not allow 'current' as a date/time input value.
2001-11-21 05:58:51 +00:00
Thomas G. Lockhart
4bedbd061c Repair swapped sign for time minus time routine (time_mi_time()).
Problem reported by Manuel Sugawara (masm@fciencias.unam.mx).
2001-11-21 05:57:33 +00:00
Thomas G. Lockhart
d90b5d06ba Allow 'PostgreSQL' as a date/time formatting style. Formerly, recognized
'Postgres' only, but now accepts both.
2001-11-21 05:55:18 +00:00
Bruce Momjian
2985286eb4 I think it's patch's size problem that I can't
send patches to pgsql-patches list.
the zh_CN NLS patch is about 80K,
but sended twice and still can emerge on list.
so I've put it at:

http://laser.zhengmai.com.cn/download/zh_CN.po.diff.tar.gz

If possible, please download it and apply it.
(for current CVS).

    regards   laser
2001-11-21 05:45:31 +00:00
Bruce Momjian
d83cadb314 Add mention of template1 usage. 2001-11-20 18:23:37 +00:00
Tom Lane
604f54cd27 Some minor tweaks of REINDEX processing: grab exclusive lock a little
earlier, make error checks more uniform.
2001-11-20 02:46:13 +00:00
Tatsuo Ishii
933761e7b1 Simplify pg_convert() in that it calls pg_convert2 using new fmgr interface. 2001-11-20 01:32:29 +00:00
Tom Lane
1436b212cc Double quotes in ln command to guard against spaces in path. 2001-11-20 00:27:13 +00:00
Tom Lane
ed1ff84750 Tweak format_type so that we get good behavior for both column type
display (with a typemod) and function arg/result type display (without
a typemod).
2001-11-19 19:51:20 +00:00
Bruce Momjian
40015cdaae Fix arg coerect match text type, per Tom. 2001-11-19 19:15:07 +00:00
Bruce Momjian
6f6567812e Make text octet_length() return non-compressed length to be consistent
with other data types, per disucssion.  Encoding issue still open.
2001-11-19 18:21:10 +00:00
Tom Lane
5e86d226e4 Grammatical and spelling fixes. 2001-11-19 09:05:02 +00:00
Tatsuo Ishii
5590d5fe99 Fix nasty bugs in pg_convert() and pg_convert2().
o they sometimes returns a result garbage string appended.
    o they do not work if client encoding is different from server
      encoding
2001-11-19 06:48:39 +00:00
Tom Lane
9f07cb70db Add example of using 'sameuser' followed by 'all' pg_hba records to
enforce a limit on who can connect to databases other than their own.
From a recent discussion in pg-admin.
2001-11-18 23:24:16 +00:00
Bruce Momjian
09bf48cf79 Improve comments about duplicate files. 2001-11-18 23:02:19 +00:00
Tatsuo Ishii
226211f0af Optimization for bpcharlen, textlen, varcharlen in case of single byte
encodings.
2001-11-18 12:07:07 +00:00
Tom Lane
6b516f5951 Fix performance problems in TOAST compressor. The management of
search lists was broken in such a way that only the most recent
instance of a given hash code would ever be searched, thus possibly
missing longer matches further back.  Fixing this gave 5 to 10%
compression improvement on some text test cases.  Additional small
tweaks to improve speed of inner loops a little bit.  There is no
compatibility issue created by this change, since the compressed data
format and decompression algorithm don't change.
2001-11-17 06:09:30 +00:00
Tom Lane
c845b4272c IsSystemRelationName() treats TOAST relations as system relations.
This seems the right thing for most usages, but I notice two places
where it is the wrong thing.  One is that the default permissions on
TOAST rels should be no-access, not world-readable; the other is that
PrepareForTupleInvalidation doesn't really need to spend time looking
at tuples of TOAST relations.
2001-11-16 23:30:35 +00:00
Peter Eisentraut
aff53b27f0 Make the yacc rules safe for parallel make. See discussion on pgsql-patches
and comment in src/backend/parser/Makefile for the technical details.
2001-11-16 16:32:33 +00:00
Tom Lane
7c50767f08 Remove 'triggered data change violation' error check, per recent
discussions in pghackers.
2001-11-16 16:31:16 +00:00
Tom Lane
2a4660f5aa Update keyword lists per suggestions by Peter. There are now four
mutually exclusive keyword lists spanning all known keywords ---
including AS.  Moved COALESCE and a few other ColLabels into the
can-be-ColId list.
2001-11-16 04:08:33 +00:00
Peter Eisentraut
a6348ae332 Only use RTLD_GLOBAL when available, which it isn't in older releases of the OS. 2001-11-15 16:08:15 +00:00
Bruce Momjian
c97a787e85 Update CVS tags. 2001-11-13 22:08:04 +00:00
Bruce Momjian
e735112b51 Use better CVS tag. 2001-11-13 22:07:42 +00:00
Bruce Momjian
2ca65f716a Remove md5.c check, add CVS log stamp. Update comments. 2001-11-13 22:06:58 +00:00
Tom Lane
a585c20d12 Tweak parser so that there is a defined representation for datatypes
bpchar, bit, numeric with typmod -1.  Alter format_type so that this
representation is printed when the typmod is -1.  This ensures that
tables having such columns can be pg_dump'd and reloaded correctly.
Also, remove the rather useless and non-SQL-compliant default
precision and scale for type NUMERIC.  A numeric column declared as
such (with no precision/scale) will now have typmod -1 which means
that numeric values of any precision/scale can be stored in it,
without conversion to a uniform scale.  This seems significantly
more useful than the former behavior.  Part of response to bug #513.
2001-11-12 21:04:46 +00:00
Tom Lane
d4d23852c1 If the alternatives for a CASE construct all have the same typmod,
use that typmod not -1 as the typmod of the CASE result.
Part of response to bug#513.
2001-11-12 20:05:24 +00:00
Tom Lane
e433bf5a5e If the inputs of a UNION/INTERSECT/EXCEPT construct all agree on the
typmod of a particular column, mark the output with that same typmod,
not -1 as formerly.  -1 is still used if there is any disagreement.
Part of response to bug#513.
2001-11-12 20:04:20 +00:00
Tom Lane
611afd9f4b Repair crash in EvalPlanQual of query involving nestloop with inner
index scan.  Problem was that link to outer tuple wasn't being stored
everyplace it needed to be.
2001-11-12 17:18:06 +00:00
Bruce Momjian
e506ca4063 Tables without oids wouldn't be able to be
used inside fk constraints, since some of the checks
in the trigger did a SELECT oid.  Since the oid wasn't
actually used, I changed this to SELECT 1.  My test
case with non-oid tables now works and fk regression
appears to run fine on my machine.

Stephan Szabo
2001-11-12 06:09:09 +00:00
Tom Lane
9371325042 Remove a bunch more no-longer-used stuff in libpq-be.h. 2001-11-12 05:43:25 +00:00
Tom Lane
7be18072db Suppress duplicate error messages in pq_flush. Write error messages to
postmaster log with elog(DEBUG) so that they will be timestamped etc.
Once upon a time I think elog() was unsafe here, but it shouldn't be anymore.
2001-11-12 04:54:08 +00:00
Tom Lane
1131ba3135 send() attempt for IDENT communication should retry on EINTR. 2001-11-12 04:29:23 +00:00
Tom Lane
a7f6210de2 The PacketReceive/PacketSend routines aren't used anymore. 2001-11-12 04:19:15 +00:00
Bruce Momjian
215772ae96 Update MD5 documentation. 2001-11-12 03:57:16 +00:00
Bruce Momjian
67a56f2286 Sync up both files. 2001-11-12 02:05:17 +00:00
Bruce Momjian
9937040a02 Add comments and remove CVS tag from md5.c so they remain identical. 2001-11-12 02:00:18 +00:00
Bruce Momjian
75bb1e6f5d Add code to check that md5.c files are in sync. 2001-11-12 01:42:03 +00:00
Bruce Momjian
a83bd89d00 Indent new rename.c for Tom Lane. 2001-11-12 01:34:50 +00:00
Tom Lane
f14fdad858 Make ALTER TABLE RENAME update foreign-key trigger arguments correctly.
Brent Verner, with review and kibitzing from Tom Lane.
2001-11-12 00:46:36 +00:00
Tom Lane
8bfc437301 Clean up a bunch of ScanKeyEntryInitialize calls that weren't bothering
to apply the proper Datum conversion macros to search key values.
2001-11-12 00:00:55 +00:00
Tom Lane
801a1accca Test program needs to declare MaxBackends, per Bernd Tegge. 2001-11-11 22:12:00 +00:00
Tom Lane
69a59150c2 Defend against brain-dead QNX implementation of qsort().
Per report from Bernd Tegge, 10-Nov-01.
2001-11-11 22:00:25 +00:00
Tom Lane
c5c97318f9 In find_mergeclauses_for_pathkeys, it's okay to return multiple merge
clauses per path key.  Indeed, we *must* do so or we will be unable to
form a valid plan for FULL JOIN with overlapping join conditions, eg
select * from a full join b on
a.v1 = b.v1 and a.v2 = b.v2 and a.v1 = b.v2.
2001-11-11 20:33:53 +00:00
Tom Lane
ad511a3ff3 sort_inner_and_outer needs a check to ensure that it's consumed all the
mergeclauses in RIGHT/FULL join cases, just like the other routines have.
I'm not quite sure why I thought it didn't need one --- but Nick
Fankhauser's recent bug report proves that it does.
2001-11-11 19:18:54 +00:00
Tom Lane
15c21bf8e1 Defend against possibility that SSL error reporting mechanism returns
a NULL pointer.  Per report from Stephen Pillinger 8-Nov-01.
2001-11-11 02:09:05 +00:00
Tom Lane
f6ee99a062 Clean up usage-statistics display code (ShowUsage and friends). StatFp
is gone, usage messages now go through elog(DEBUG).
2001-11-10 23:51:14 +00:00
Tom Lane
0c1669c806 Restructure child-exit logging messages for easier translation,
per suggestion from Peter.
2001-11-10 23:06:12 +00:00
Tom Lane
ec438886e1 Allow TIMESTAMP, VARCHAR, et al to be used as unquoted column names,
though alas not as unquoted function names.  De-reserve a bunch of
keywords that could have been in ColId rather than ColLabel all along.
Per recent proposal in pgsql-patches.
2001-11-10 22:31:49 +00:00
Bruce Momjian
77e4fd889c Fix indenting for 'extern "C"' cases. 2001-11-08 20:37:52 +00:00
Tom Lane
7e16f3c0d8 PostgreSQL works again on Mac OS X 10.1. Hold your nose before
investigating the kluge that makes it so...
2001-11-08 04:24:03 +00:00
Tom Lane
64af43a15f Add casts to suppress compiler warnings observed on Darwin platform
(surprised no one has reported these yet...)
2001-11-08 04:05:13 +00:00
Tom Lane
d22e9456a7 Clean up formatting of child process exit-status reports so that they
are correct, consistent, and complete ... motivated by gripe from
Oliver Elphick, but I see someone had already made an incomplete stab
at this.
2001-11-06 18:02:48 +00:00
Thomas G. Lockhart
3ea311d4b3 Add British Double Standard Time (BDST) per mailing list report. 2001-11-06 16:29:51 +00:00
Tom Lane
d980ddb544 Add Darwin to list of known systems for ps_status. 2001-11-06 01:15:29 +00:00
Tom Lane
ca7578d454 The extra semaphore that proc.c now allocates for checkpoint processes
should be accounted for in the PROC_SEM_MAP_ENTRIES() macro.  Otherwise
the ports that rely on this macro to size data structures are broken.
Mea culpa.
2001-11-06 00:38:26 +00:00
Tom Lane
0053cebea5 Fix coredump in plpgsql when trying to return a rowtype result.
Need to return a TupleTableSlot, not just a bare tuple.
2001-11-05 19:41:56 +00:00
Bruce Momjian
ea08e6cd55 New pgindent run with fixes suggested by Tom. Patch manually reviewed,
initdb/regression tests pass.
2001-11-05 17:46:40 +00:00
Tom Lane
5251e7b3d0 CREATE TABLE foo (x,y,z) AS SELECT ... can't apply target column names
to the target list in gram.y; it must wait till after expansion of the
target list in analyze.c.  Per bug report 4-Nov:
lx=# CREATE TABLE abc (a char, b char, c char);
CREATE
lx=# CREATE TABLE xyz (x, y, z) AS SELECT * FROM abc;
ERROR:  CREATE TABLE/AS SELECT has mismatched column count
2001-11-05 05:00:14 +00:00
Tom Lane
d556920a98 Remove ill-considered Assert. 2001-11-05 01:34:37 +00:00
Tom Lane
430cd88a18 Fix now-obsolete comment. 2001-11-04 20:12:57 +00:00
Tom Lane
fb5f1b2c13 Merge three existing ways of signaling postmaster from child processes,
so that only one signal number is used not three.  Flags in shared
memory tell the reason(s) for the current signal.  This method is
extensible to handle more signal reasons without chewing up even more
signal numbers, but the immediate reason is to keep pg_pwd reloads
separate from SIGHUP processing in the postmaster.
Also clean up some problems in the postmaster with delayed response to
checkpoint status changes --- basically, it wouldn't schedule a checkpoint
if it wasn't getting connection requests on a regular basis.
2001-11-04 19:55:31 +00:00
Bruce Momjian
7cc8af5563 Got "ADD" to appear only in ALTER TABLE and not CREATE TABLE
UNIQUE-PRIMARY KEY notice message.  This is what Christopher wanted from
his patch.
2001-11-04 03:08:11 +00:00
Bruce Momjian
434077c4e6 Remove "ADD" from TABLE / ADD UNIQUE-PRIMARY error message because the
same code is called for both creation and alter.  Not worth worrying
about.
2001-11-04 02:41:09 +00:00
Tom Lane
9685afb0b2 Add default expressions to INSERTs during planning, not during parse
analysis.  This keeps stored rules from prematurely absorbing default
information, which is necessary for ALTER TABLE SET DEFAULT to work
unsurprisingly with rules.  See pgsql-bugs discussion 24-Oct-01.
2001-11-02 20:23:02 +00:00
Tom Lane
8a069abd18 Fix pg_pwd caching mechanism, which was broken by changes to fork
postmaster children before client auth step.  Postmaster now rereads
pg_pwd on receipt of SIGHUP, the same way that pg_hba.conf is handled.
No cycles need be expended to validate password cache validity during
connection startup.
2001-11-02 18:39:57 +00:00
Tom Lane
7d05310828 Fix problem reported by Alex Korn: if a relation has been dropped and
recreated since the start of our transaction, our first reference to it
errored out because we'd try to reuse our old relcache entry for it.
Do this by accepting SI inval messages just before relcache search in
heap_openr, so that dead relcache entries will be flushed before we
search.  Also, break heap_open/openr into two pairs of routines,
relation_open(r) and heap_open(r).  The relation_open routines make
no tests on relkind and so can be used to open anything that has a
pg_class entry.  The heap_open routines are wrappers that add a relkind
test to preserve their established behavior.  Use the relation_open
routines in several places that had various kluge solutions for opening
rels that might be either heap or index rels.

Also, remove the old 'heap stats' code that's been superseded by Jan's
stats collector, and clean up some inconsistencies in error reporting
between the different types of ALTER TABLE.
2001-11-02 16:30:29 +00:00
Tom Lane
3c9b549a75 Minor code cleanups. 2001-11-01 18:10:48 +00:00
Tom Lane
7663e6bb70 Reject tabs and linefeeds in usernames and passwords that are being
stored in pg_pwd, to guard against failures of the sort observed by
Tom Yackel.  Note: in the case of encrypted passwords this is no
restriction, since the string we are interested in is the MD5 hash.
2001-11-01 18:09:58 +00:00
Tom Lane
bdea97ea95 Add missing #include. 2001-11-01 06:17:01 +00:00
Tom Lane
4877c59217 Suppress trivial compiler warning. 2001-11-01 05:45:28 +00:00
Bruce Momjian
57584d70fa More *.po cleanups for new spacing. 2001-10-31 05:16:31 +00:00
Bruce Momjian
e7fc0604cd Modify *.po files and regression expected output for new clearer error
message spacing.
2001-10-31 05:14:33 +00:00
Bruce Momjian
37bba02bdb Here is an updated version of /src/backend/po/ru.po
which incorporates recent changes by Bruce to
readability of some messages and few more translations.

--
Serguei A. Mokhov
2001-10-31 04:58:36 +00:00
Bruce Momjian
4911c85e86 Add ALTER TABLE ADD UNIQUE regression tests from Christopher Kings-Lynne.
Add space between slash for ALTER TABLE / ADD ....

Regression and *.po updates to follow.
2001-10-31 04:49:44 +00:00
Tom Lane
96ca8ffebc Fix problems with subselects used in GROUP BY expressions, per gripe
from Philip Warner.  Side effect of change is that GROUP BY expressions
will not be re-evaluated at multiple plan levels anymore, whereas this
sometimes happened with old code.
2001-10-30 19:58:58 +00:00
Bruce Momjian
c41b6b1b9c Fix small problem Tom Lane found with pgindent run. 2001-10-30 05:38:56 +00:00
Bruce Momjian
8469a33818 Add gp->gr_mem != NULL check for Solaris, per Seth Hettich 2001-10-29 18:06:54 +00:00
Bruce Momjian
40b1403ae8 Check for NULL return from getgrgid(), per Seth Hettich 2001-10-29 17:55:41 +00:00
Bruce Momjian
6783b2372e Another pgindent run. Fixes enum indenting, and improves #endif
spacing.  Also adds space for one-line comments.
2001-10-28 06:26:15 +00:00
Tom Lane
22d9e91219 Fix a couple of places where lack of parenthesization of a cast
causes pgindent to make weird formatting decisions.  Easiest fix
seems to be to put in the extra parens...
2001-10-25 20:37:30 +00:00
Tom Lane
a0cd991987 Add int2-to-int8 and int8-to-int2 conversion routines. Needed to avoid
breaking existing pg_dump scripts, which try to assign the result of
count(*) to an int2 variable.  catversion bumped.
2001-10-25 14:10:07 +00:00
Tom Lane
92e8282229 Add missing output routine for FkConstraint nodes. 2001-10-25 14:08:11 +00:00
Bruce Momjian
b81844b173 pgindent run on all C files. Java run to follow. initdb/regression
tests pass.
2001-10-25 05:50:21 +00:00
Bruce Momjian
fde8edaf53 Add do { ... } while (0) to more bad macros. 2001-10-25 01:29:37 +00:00
Bruce Momjian
6f6d16ab25 All three *.po patches applied.
forth@pagic.net
2001-10-24 17:52:28 +00:00
Hiroshi Inoue
0450331526 Allow concurrent index creation for the same table. 2001-10-24 09:28:31 +00:00
Tom Lane
d0667af926 Add support for INTERVAL's new typmod values to format_type. 2001-10-23 20:12:54 +00:00
Tom Lane
01b73d3f27 Fix foreign keys on system columns. 2001-10-23 17:39:03 +00:00
Tom Lane
57dd2ce78a Make SPI's column-accessing functions work for system columns as well as
user columns.  Needed for foreign keys on OID, but useful in general.
2001-10-23 17:38:25 +00:00
Bruce Momjian
8dded696e6 Now I had them reversed. Wow that syntax is error-prone. 2001-10-23 02:50:41 +00:00
Bruce Momjian
caafc1c5cc Syntax fix. Can't use #ifdef in gram.y. 2001-10-23 02:47:14 +00:00
Bruce Momjian
e1ce520c09 Back out LIMIT #,# removal and mark it as to-be-removed in 7.3. 2001-10-23 02:45:37 +00:00
Tom Lane
087771ae40 Add error checking to PageRepairFragmentation to ensure that it can
never overwrite adjacent pages with copied data, even if page header
and/or item pointers are already corrupt.  Change inspired by trouble
report from Alvaro Herrera.
2001-10-23 02:20:15 +00:00
Tom Lane
dab708ea08 Cause transformIndexConstraints() to do the right thing with requests
for indexes on system columns.  Per complaint from Peter.
2001-10-22 22:49:02 +00:00
Tom Lane
c59839ac6d Consolidate tables of known system attributes into one table. 2001-10-22 22:47:57 +00:00
Tom Lane
94daee3cb7 Further cleanup of ps_status setup code. On platforms where the
environment strings need to be moved around, do so when called from
initial startup (main.c), not in init_ps_status.  This eliminates the
former risk of invalidating saved environment-string pointers, since
no code has yet had a chance to grab any such pointers when main.c
is running.
2001-10-22 19:41:38 +00:00