Commit Graph

13397 Commits

Author SHA1 Message Date
Tom Lane
09c6ac9513 Dept. of second thoughts: it'd be a good idea to flush buffers
during replay of CREATE DATABASE as well as the first time around.
Else it's possible that the copy operation will copy obsolete blocks.
We are still a long way from guaranteeing anything about using a
recently-written database as a CREATE template, but this seems needed
to ensure the existing behavior holds up during replay.
2004-08-30 03:50:24 +00:00
Bruce Momjian
15d3f9f6b7 Another pgindent run with lib typedefs added. 2004-08-30 02:54:42 +00:00
Tom Lane
50742aed68 Add WAL logging for CREATE/DROP DATABASE and CREATE/DROP TABLESPACE.
Fix TablespaceCreateDbspace() to be able to create a dummy directory
in place of a dropped tablespace's symlink.  This eliminates the open
problem of a PANIC during WAL replay when a replayed action attempts
to touch a file in a since-deleted tablespace.  It also makes for a
significant improvement in the usability of PITR replay.
2004-08-29 21:08:48 +00:00
Bruce Momjian
ee66401f31 Update typedefs with /lib info. 2004-08-29 17:31:42 +00:00
Tom Lane
0ffe11abd3 Widen xl_len field of XLogRecord header to 32 bits, so that we'll have
a more tolerable limit on the number of subtransactions or deleted files
in COMMIT and ABORT records.  Buy back the extra space by eliminating the
xl_xact_prev field, which isn't being used for anything and is rather
unlikely ever to be used for anything.
This does not force initdb, but you do need to do pg_resetxlog if you
want to upgrade an existing 8.0 installation without initdb.
2004-08-29 16:34:48 +00:00
Bruce Momjian
b6b71b85bc Pgindent run for 8.0. 2004-08-29 05:07:03 +00:00
Bruce Momjian
90cb9c3051 Update with new typedefs. Remove java and c++ parts of readme. 2004-08-29 04:49:45 +00:00
Bruce Momjian
da9a8649d8 Update copyright to 2004. 2004-08-29 04:13:13 +00:00
Bruce Momjian
466c1290df Fix for postmaster.c function win32_waitpid(int *exitstatus) call to
Win32 WaitForMultipleObjects:

	ret = WaitForMultipleObjects(win32_numChildren, win32_childHNDArray,
	FALSE, 0);

Problem is 'win32_numChildren' could be more then 64 ( function supports
), problem basically arise ( kills postgres ) when you create more then
64 connections and terminate some of them sill leaving more then 64.

Claudio Natoli
2004-08-29 03:16:30 +00:00
Bruce Momjian
71fce6ce1b Adjust regression expected file for new grant language hint. 2004-08-29 03:14:07 +00:00
Bruce Momjian
61384de6f9 Add hint about using GRANT with non-trusted languages.
James William Pye
2004-08-29 03:04:15 +00:00
Bruce Momjian
0476bbbc9b Several Cygwin fixes pointed out by Reini Urban. 2004-08-29 02:58:50 +00:00
Bruce Momjian
f94aea9c10 Add comment on palloc use and DLLIMPORT> 2004-08-29 01:44:02 +00:00
Bruce Momjian
704ff0b2f2 >>> I understand your disliking of non-posix stuff. OTOH,
>>GetLastError will
>>> give much more details than errno.
>>
>>How much more, really?  That mapping table gave me the impression that
>>the win32 error codes aren't all that much more detailed than errno...
>
>The mapping table is not complete. My winerror.h from the SDK
>lists 2209
>error codes, whereas errno.h lists 42...
>
>I still don't think we'll get that much more stuff. Right now,
>the Win32
>code paths that actually use the more advanced functions already write
>out the error number in case something happens. We can keep doing that
>for the other paths (ereport the error *number* when the mapping does
>not have a match). The map to errno will catch almost all cases, I
>think. And in the corner cases we can do with just the number, and use
>"net helpmsg" to get the actual message when checking...

Here's an attempt on this. new file goes in backend/port/win32.

Magnus Hagander
2004-08-29 00:38:03 +00:00
Bruce Momjian
fe90fb4d37 The attached patch improves pg_ctl's win32 service code to eliminate
some possible causes of the stale postmaster.pid problem that some users
have reported.

- The service did not properly report that it accepts
SERVICE_CONTROL_SHUTDOWN events, thus it's possible the SCM simply
killed the postmaster on shutdown.

- 'WaitHints' are now given to the SCM to prevent it timing out if
pg_ctl doesn't respond to a control event quickly enough.

- During shutdown, the service checkpoint counter is incremented every
five seconds for up to a minute to prevent the SCM timing out and
assuming the service is not responding.

Dave Page
2004-08-28 23:26:37 +00:00
Bruce Momjian
f7587aeba8 > Am Dienstag, 17. August 2004 14:26 schrieb Fabien COELHO:
> > The patch adds missing the "libpgport.a" file to the installation under
> > "install-all-headers". It is needed by some contribs. I install the
> > library in "pkglibdir", but I was wondering whether it should be "libdir"?

Please find attached a small patch against current CVS head that fixes
pgport library installation so that it goes to libdir instead of
pkglibdir. It works for me.

Fabien Coelho
2004-08-28 22:55:06 +00:00
Bruce Momjian
922599464f Fix high-bit comparison compiler warning in pg_dump.
Philip Warner
2004-08-28 22:52:50 +00:00
Bruce Momjian
5395aed9d5 Add regression tests for ALTER INDEX.
Gavin Sherry
2004-08-28 22:06:04 +00:00
Tom Lane
f78ecbf20e Now that TransactionIdDidAbort doesn't think it should try to modify
pg_clog, there's no reason to do abort marking of subtransactions in a
nonintuitive order.
2004-08-28 22:04:12 +00:00
Bruce Momjian
c8702dcb8e Propogate pg_ctl -D to the postmaster for command-line identification. 2004-08-28 22:04:01 +00:00
Tom Lane
7531d2fd85 Add missing Assert to make TransactionIdDidAbort more consistent with
TransactionIdDidCommit.
2004-08-28 21:58:59 +00:00
Tom Lane
448eb0837f Rearrange order of operations in heap_drop_with_catalog and index_drop
so that we close and flush the doomed relation's relcache entry before
we start to delete the underlying catalog rows, rather than afterwards.
For awhile yesterday I thought that an unexpected relcache entry rebuild
partway through this sequence might explain the infrequent parallel
regression failures we were chasing.  It doesn't, mainly because there's
no CommandCounterIncrement in the sequence and so the deletions aren't
"really" done yet.  But it sure seems like trouble waiting to happen.
2004-08-28 21:05:26 +00:00
Bruce Momjian
a0a61f494d > > Another issue is that when installing the Postgres service with
> > "pg_ctl register -w ...." the "-w" parameter was not put in
> the registry "ImagePath"
> > value for the Postgres service. (I added it manually to test.) So I
> > suspect that "pg_ctl register" will need to be enhanced to add the
> > "-w" parameter to the registry settings.

Dave Page
2004-08-28 21:01:38 +00:00
Bruce Momjian
cc28a275cb Use dynamic buffer for token buffer in win32 admin check
Magnus Hagander
2004-08-28 21:00:35 +00:00
Tom Lane
1c72d0dec1 Fix relcache to account properly for subtransaction status of 'new'
relcache entries.  Also, change TransactionIdIsCurrentTransactionId()
so that if consulted during transaction abort, it will not say that
the aborted xact is still current.  (It would be better to ensure that
it's never called at all during abort, but I'm not sure we can easily
guarantee that.)  In combination, these fix a crash we have seen
occasionally during parallel regression tests of 8.0.
2004-08-28 20:31:44 +00:00
Joe Conway
f900af7961 Further tightening of the array literal parser. Prevent junk
from being accepted after the outer right brace. Per report from
Markus Bertheau.

Also add regression test cases for this change, and for previous
recent array literal parser changes.
2004-08-28 19:31:29 +00:00
Tom Lane
f444dafab0 Can't truncate pg_subtrans during a recovery checkpoint --- subtrans
module isn't fully initialized yet.
2004-08-28 18:18:03 +00:00
Tom Lane
7ff1c9d974 Add missing semicolon; some bison versions warn of this. 2004-08-28 18:04:51 +00:00
Tom Lane
3e3f70a28a Fix Windows emulation of kill(pid, 0). This will now succeed, but only
if the target PID is a PG postmaster or backend --- for our purposes that
is actually better than the Unix behavior.  Per Dave Page and Andrew Dunstan.
2004-08-27 18:31:48 +00:00
Tom Lane
1785acebf2 Introduce local hash table for lock state, as per recent proposal.
PROCLOCK structs in shared memory now have only a bitmask for held
locks, rather than counts (making them 40 bytes smaller, which is a
good thing).  Multiple locks within a transaction are counted in the
local hash table instead, and we have provision for tracking which
ResourceOwner each count belongs to.  Solves recently reported problem
with memory leakage within long transactions.
2004-08-27 17:07:42 +00:00
Tom Lane
337b513e07 Fix user locks. Broken some time ago for all platforms by Windows-related
changes.
2004-08-26 17:23:30 +00:00
Tom Lane
51d7e25651 Improve some comments. 2004-08-26 17:22:28 +00:00
Bruce Momjian
32142e2a60 Update documentation to prefer CIDR format for pg_hba.conf and use new
CIDR column in examples first.
2004-08-26 16:50:05 +00:00
Bruce Momjian
8ec3221d32 Update Win32 wording. 2004-08-26 13:44:38 +00:00
Tom Lane
7584194cc9 Fix typo in comment, per Andrew Dunstan. 2004-08-25 20:07:57 +00:00
Tom Lane
fe455ee1d4 Revise ResourceOwner code to avoid accumulating ResourceOwner objects
for every command executed within a transaction.  For long transactions
this was a significant memory leak.  Instead, we can delete a portal's
or subtransaction's ResourceOwner immediately, if we physically transfer
the information about its locks up to the parent owner.  This does not
fully solve the leak problem; we need to do something about counting
multiple acquisitions of the same lock in order to fix it.  But it's a
necessary step along the way.
2004-08-25 18:43:43 +00:00
Peter Eisentraut
b662311db0 Translation update 2004-08-24 21:45:40 +00:00
Peter Eisentraut
a56cebb18f Translation update 2004-08-24 21:35:19 +00:00
Tom Lane
3cb1ffa653 Allow second and subsequent names in a qualified (dotted) name to be
ColLabel instead of just ColId --- that is, any keyword can appear after
a dot and it will be taken as an identifier.  Fixes problems with names
that are okay as standalone function names but fail when qualified.
2004-08-24 20:41:40 +00:00
Tom Lane
4dbb880d3c Rearrange pg_subtrans handling as per recent discussion. pg_subtrans
updates are no longer WAL-logged nor even fsync'd; we do not need to,
since after a crash no old pg_subtrans data is needed again.  We truncate
pg_subtrans to RecentGlobalXmin at each checkpoint.  slru.c's API is
refactored a little bit to separate out the necessary decisions.
2004-08-23 23:22:45 +00:00
Tom Lane
f009c316ba Tweak code so that pg_subtrans is never consulted for XIDs older than
RecentXmin (== MyProc->xmin).  This ensures that it will be safe to
truncate pg_subtrans at RecentGlobalXmin, which should largely eliminate
any fear of bloat.  Along the way, eliminate SubTransXidsHaveCommonAncestor,
which isn't really needed and could not give a trustworthy result anyway
under the lookback restriction.
In an unrelated but nearby change, #ifdef out GetUndoRecPtr, which has
been dead code since 2001 and seems unlikely to ever be resurrected.
2004-08-22 02:41:58 +00:00
Tom Lane
37d937ea2c Code review for ALTER INDEX patch. 2004-08-22 00:08:28 +00:00
Bruce Momjian
235caf4bb2 Fix tab completion for ALTER INDEX. 2004-08-21 18:45:59 +00:00
Bruce Momjian
d21eabc61a Remove Solaris bug mention in pg_hba.conf. 2004-08-21 03:21:57 +00:00
Bruce Momjian
34f34a041c Fix pg_ctl -w to properly wait on server startup. 2004-08-21 03:12:55 +00:00
Tom Lane
bf9d9bd2f3 Recognize plpgsql EXCEPTION condition names at function compile time
instead of runtime, for better detection of invalid condition names
(and maybe a little more speed, too).
2004-08-20 22:00:14 +00:00
Bruce Momjian
009b0d1a85 >>At this stage of the game I would just change pg_hba.conf.sample to use
>>'127.0.0.1/32' instead of '127.0.0.1 255.255.255.255'.
>>
>>
>
>Yeah, that's probably the path of least resistance.  Note that the
>comments and possibly the SGML docs need to be adjusted to match,
>however, so it's not quite a one-liner.

Andrew Dunstan
2004-08-20 20:23:06 +00:00
Bruce Momjian
3ca998b951 Allow psql to use 7.4.X database by not referencing tablespaces.
Greg Sabino Mullan
2004-08-20 20:18:23 +00:00
Bruce Momjian
ee85595d46 > Please find enclose a submission to fix these problems.
>
> The patch adds missing the "libpgport.a" file to the installation under
> "install-all-headers". It is needed by some contribs. I install the
> library in "pkglibdir", but I was wondering whether it should be "libdir"?
> I was wondering also whether it would make sense to have a "libpgport.so"?
>
> It fixes various macros which are used by contrib makefiles, especially
> libpq_*dir and LDFLAGS when used under PGXS. It seems to me that they are
> needed to
>
> It adds the ability to test and use PGXS with contribs, with "make
> USE_PGXS=1". Without the macro, this is exactly as before, there should be
> no difference, esp. wrt the vpath feature that seemed broken by previous
> submission. So it should not harm anybody, and it is useful at least to me.
>
> It fixes some inconsistencies in various contrib makefiles
> (useless override, ":=" instead of "=").

Fabien COELHO
2004-08-20 20:13:10 +00:00
Bruce Momjian
f7168bd44c They are two different problems; the TOC entry is important for any
multiline command  or to rerun the command easily later.

Whereas displaying the failed SQL command is a matter of fixing the
error
messages.

The latter is complicated by failed COPY commands which, with
die-on-errors
off, results in the data being processed as a command, so dumping the
command will dump all of the data.

In the case of long commands, should the whole command be dumped? eg.
(eg.
several pages of function definition).

In the case of the COPY command, I'm not sure what to do. Obviously, it
would be best to avoid sending the data, but the data and command are
combined (from memory). Also, the 'data' may be in the form of INSERT
statements.

Attached patch produces the first 125 chars of the command:

pg_restore: [archiver (db)] Error while PROCESSING TOC:
pg_restore: [archiver (db)] Error from TOC Entry 26; 1255 16449270
FUNCTION
plpgsql_call_handler() pjw
pg_restore: [archiver (db)] could not execute query: ERROR:  function
"plpgsql_call_handler" already exists with same argument types
     Command was: CREATE FUNCTION plpgsql_call_handler() RETURNS
language_handler
     AS '/var/lib/pgsql-8.0b1/lib/plpgsql', 'plpgsql_call_han...
pg_restore: [archiver (db)] Error from TOC Entry 27; 1255 16449271
FUNCTION
plpgsql_validator(oid) pjw
pg_restore: [archiver (db)] could not execute query: ERROR:  function
"plpgsql_validator" already exists with same argument types
     Command was: CREATE FUNCTION plpgsql_validator(oid) RETURNS void
     AS '/var/lib/pgsql-8.0b1/lib/plpgsql', 'plpgsql_validator'
     LANGU...

Philip Warner
2004-08-20 20:00:34 +00:00
Bruce Momjian
cecf41bd29 Attached is the third version of my patch that adds/fixes several things
to/in the psql-tabcomplete code. This diff includes the still missing
tab-complete support for TABLESPACE I already sent earlier. New in this
version of the patch is a small adaption of the tab-complete code to
support the adjusted SAVEPOINT-Syntax commited by Tom, as well as
completion of the only half working (and I think only by accident)
tabcomplete-suppport for "BEGIN [ TRANSACTION | WORK ]".

below is a complete list of the things I have changed with this patch:


*) add tablespace support for CREATE/DROP/ALTER and \db
*) sync the list of possible commands following ALTER with the docs (by
adding
AGGREGATE,CONVERSATION,DOMAIN,FUNCTION,LANGUAGE,OPERATOR,SEQUENCE,TABLESPACE
and TYPE)
*) provide a list of valid users after "OWNER TO"
*) tab-complete support for ALTER (AGGREGATE|CONVERSION|FUNCTION)
*) basic tab-complete support for ALTER DOMAIN
*) provide a list of suitable indexes following ALTER TABLE <sth>
CLUSTER ON(?)
*) add "CLUSTER ON" and "SET" to the ALTER TABLE <sth> - tab-complete
list(fixes incorrect/wrong tab-complete with ALTER TABLE <sth> SET
+<TAB> too)
*) provide a list of possible indexes following ALTER TABLE <sth> CLUSTER ON
*) provide list of possible commands(WITHOUT CLUSTER,WITHOUT OIDS,
TABLESPACE) following ALTER TABLE <sth> SET
*) sync "COMMENT ON" with docs by adding "CAST","CONVERSION","FUNCTION"
*) add ABSOLUT to the list of possible commands after FETCH
*) "END" was missing from the sql-commands overview (though it had
completion support!) - i know it's depreciated but we have ABORT and
others still in ...
*) fixes small buglet with ALTER (TRIGGER|CLUSTER) ON autocomplete
(CLUSTER ON +<TAB> would produce CLUSTER ON ON - same for TRIGGER ON)
*) adapt to new SAVEPOINT syntax
*) fix incomplete Support for BEGIN [ TRANSACTION | WORK ]

Stefan Kaltenbrunn
2004-08-20 19:24:59 +00:00
Bruce Momjian
1b5e0143b5 This patch allows pg_restore to recognize $-quotes in SQL queries. It
will treat any unquoted string that starts with a $ and has no preceding
identifier chars as a potential $-quote tag, it then makes sure that the
tag chars are valid. If so, it processes the $-quote.

Philip Warner
2004-08-20 16:07:15 +00:00
Bruce Momjian
09d4e96d7e Add ALTER INDEX, particularly for moving tablespaces.
Gavin Sherry
2004-08-20 04:29:33 +00:00
Bruce Momjian
daa076c4fd > Please find attached a submission to add a "exit on error" option to
> pg_restore, as it seems that some people have scripts that rely on the
> previous "abort on error" default behavior when restoring data with a
> direct connection.
>
> Fabien Coelho
2004-08-20 04:20:23 +00:00
Bruce Momjian
46be0c18f1 > After all that about numbering centuries and millenia correctly,
> why does CVS tip still give me
>
> regression=# select extract(century from now());
>  date_part
> -----------
>         20
> (1 row)
> [ ... looks in code ... ]
>
> Apparently it's because you fixed only timestamp_part, and not
> timestamptz_part.  I'm not too sure about what timestamp_trunc or
> timestamptz_trunc should do, but they may be wrong as well.

Sigh... as usual, what is not tested does not work:-(


> Could we have a more complete patch?

Please find a submission attached. I hope it really fixes all decade,
century and millenium issues for extract and *_trunc functions on
interval
and other timestamp types. If someone could check that the results
are reasonnable, it would be great.

I indeed overlooked the fact that there were two functions. The patch
fixes the code so that both variants agree.

I added comments to interval extractions, because it relies on the C
division to have a negative remainder: -7/10 = 0 and remains -7.

As for *_trunc functions, I have chosen to put the first year of the
century or millennium: -100, 1, 101... 1001 2001 etc. Indeed, I don't
think it would make sense to put 2000 (last year of the 2nd millennium)
for rounding all years of the third millenium.

I also fixed the code so that all decades last 10 years and decade 199
means the 1990's.

I have added some tests that are relevant to deal with tricky cases. The
formula may be simplified, but all these cases must pass. Please keep
them.

Fabien Coelho
2004-08-20 03:45:14 +00:00
Tom Lane
bbd6eb5b95 Repair some issues with column aliases and RowExpr construction in the
presence of dropped columns.  Document the already-presumed fact that
eref aliases in relation RTEs are supposed to have entries for dropped
columns; cause the user alias structs to have such entries too, so that
there's always a one-to-one mapping to the underlying physical attnums.
Adjust expandRTE() and related code to handle the case where a column
that is part of a JOIN has been dropped.  Generalize expandRTE()'s API
so that it can be used in a couple of places that formerly rolled their
own implementation of the same logic.  Fix ruleutils.c to suppress
display of aliases for columns that were dropped since the rule was made.
2004-08-19 20:57:41 +00:00
Bruce Momjian
84f878f5cd Don't use get_home_path so libpq doesn't pull path.c into the library. 2004-08-19 00:00:34 +00:00
Tom Lane
76dd2333d5 Clean up some random departures from project's standard declaration style. 2004-08-18 19:27:13 +00:00
Bruce Momjian
1abf13db3c Add get_home_path() to use USERPROFILE on Win32 and HOME on Unix. 2004-08-18 02:59:12 +00:00
Tom Lane
19cd31b068 Fix bug introduced into _bt_getstackbuf() on 2003-Feb-21: the initial
value of 'start' could be past the end of the page, if the page was
split by some concurrent inserting process since we visited it.  In
this situation the code could look at bogus entries and possibly find
a match (since after all those entries still contain what they had
before the split).  This would lead to 'specified item offset is too large'
followed by 'PANIC: failed to add item to the page', as reported by Joe
Conway for scenarios involving heavy concurrent insertion activity.
2004-08-17 23:15:33 +00:00
Tom Lane
fcaad7e2c1 Standardize on the assumption that the arguments of a RowExpr correspond
to the physical layout of the rowtype, ie, there are dummy arguments
corresponding to any dropped columns in the rowtype.  We formerly had a
couple of places that did it this way and several others that did not.
Fixes Gaetano Mendola's "cache lookup failed for type 0" bug of 5-Aug.
2004-08-17 18:47:09 +00:00
Bruce Momjian
3f0fa93cfc Chain on to SIGPIPE handler rather than just do action on default.
Always create thread-specific variable.
2004-08-17 16:54:47 +00:00
Bruce Momjian
26f6111dd9 Add comment about portability function name inconsistency. 2004-08-17 14:38:38 +00:00
Tom Lane
109d7aff73 Fix linking problem when enabling thread safety on Darwin: uninitialized
global variables are problematic on this platform.  Simplest solution
seems to be to initialize pthread key variable to 0.  Also, rename this
variable and check_sigpipe_handler to something involving "pq" to
avoid gratuitous pollution of application namespace.
2004-08-17 04:24:23 +00:00
Bruce Momjian
8b82a705c8 Add DLLIMPORT for PostGIS. 2004-08-17 02:51:32 +00:00
Bruce Momjian
26fc9b655b Move io.h include higher in the file so it doesn't conflict with
rename/unlink defined later.  Problem exists on MS VC.

Andrew Francis
2004-08-17 02:44:13 +00:00
Tom Lane
64410289f8 Add trivial NULL statement to plpgsql, for Oracle compatibility. 2004-08-16 17:52:06 +00:00
Bruce Momjian
33829a5e0f Throw error if initdb -L is not an absolute path. 2004-08-16 15:44:03 +00:00
Bruce Momjian
23717760d1 Fix for adding \n for zero-length win32 read_pipe return 2004-08-16 02:46:36 +00:00
Tom Lane
e617fe729d Mark server_encoding and integer_datetimes as GUC_REPORT, per previous
proposals by Oliver Jowett.  Update documentation.
2004-08-16 02:12:29 +00:00
Bruce Momjian
c7ae53a6b4 Clarify need for \r\n -> \n translation in version checking code. 2004-08-16 01:26:31 +00:00
Tom Lane
1a3de15a3a Dept. of further reflection: I looked around to see if any other callers
of XLogInsert had the same sort of checkpoint interlock problem as
RecordTransactionCommit, and indeed I found some.  Btree index build
and ALTER TABLE SET TABLESPACE write data outside the friendly confines
of the buffer manager, and therefore they have to take their own
responsibility for checkpoint interlock.  The easiest solution seems to
be to force smgrimmedsync at the end of the index build or table copy,
even when the operation is being WAL-logged.  This is sufficient since
the new index or table will be of interest to no one if we don't get
as far as committing the current transaction.
2004-08-15 23:44:46 +00:00
Tom Lane
057ea3471f Xmin calculations should consider only top transaction IDs, and
therefore starting with GetCurrentTransactionId is wrong.  Fixes
miscomputation of RecentGlobalXmin leading to bizarre behavior
reported by Gavin Sherry.
2004-08-15 17:03:36 +00:00
Tom Lane
2820f05ef9 Specify SA_NOCLDSTOP when enabling SIGCHLD, per suggestion from
Oliver Jowett.
2004-08-15 05:25:10 +00:00
Bruce Momjian
2284cfa255 Quote PERL expansion for Win32 path that might have spaces. 2004-08-15 00:41:51 +00:00
Peter Eisentraut
3ea6d6d4d5 Translation updates 2004-08-14 19:16:07 +00:00
Tom Lane
b681bf9323 Fix psql's COPY support to deal with \r\n line endings.
Andrew Dunstan, some further hacking by Tom Lane.
2004-08-13 22:59:29 +00:00
Tom Lane
2193121fa9 Fix breakage with PUBLIC schema. Try to untwist the remarkably contorted
logic a little bit.
2004-08-13 21:37:28 +00:00
Tom Lane
bf08e6550b Give a more specific error message for "you can't do that" error cases
in plpgsql, particularly trying to begin/end/rollback a transaction.
2004-08-13 18:47:56 +00:00
Peter Eisentraut
1a36562d6a New translations 2004-08-13 16:47:30 +00:00
Peter Eisentraut
3458a380d3 Translation update 2004-08-13 16:43:06 +00:00
Peter Eisentraut
1c31374e3d Translation updates 2004-08-13 16:34:31 +00:00
Tom Lane
79f9ee9d15 Fix core dumps, inability to count, etc associated with canonicalize_path
patches.
2004-08-13 14:47:23 +00:00
Tom Lane
d785841f83 Change order of operations in ALTER TABLE SET TABLESPACE so that we
don't hold an open file reference to the original table at the end.
This is a good thing in any case, particularly so on Windows which
cannot drop the table file otherwise.
2004-08-13 04:50:28 +00:00
Tom Lane
7f7e8cc3f2 Allow commas in BEGIN, START TRANSACTION, and SET TRANSACTION, as required
by the SQL standard.  For backwards compatibility, however, continue to
accept the syntax without.  Minor editorialization in the reference pages
for these commands, too.
2004-08-12 21:00:34 +00:00
Tom Lane
a583675108 Allow optional SAVEPOINT keyword in RELEASE and ROLLBACK TO, for greater
compliance with SQL2003 spec syntax.

Oliver Jowett
2004-08-12 19:12:21 +00:00
Bruce Momjian
10249abfa1 Cleanup Win32 COPY handling, and move archive examples to SGML. 2004-08-12 19:03:44 +00:00
Bruce Momjian
43ea65a0dc Add mention of "WIN32" COPY. 2004-08-12 18:34:45 +00:00
Bruce Momjian
6525b42b10 Add make_native_path() because Win32 COPY is an internal CMD.EXE command
and doesn't process forward slashes in the same way as external
commands.  Quoting the first argument to COPY does not convert forward
to backward slashes, but COPY does properly process quoted forward
slashes in the second argument.

Win32 COPY works with quoted forward slashes in the first argument only if the
current directory is the same as the directory of the first argument.
2004-08-12 18:32:52 +00:00
Tom Lane
250e516051 Cause initdb to actually accept -s as intended, and fix some typos in
a comment.

Jon Jensen
2004-08-11 23:28:54 +00:00
Tom Lane
3de91c18b5 Fix broken parsing of CREATE TABLE AS (looks like a mis-sync with main
parser).
2004-08-11 22:50:35 +00:00
Tom Lane
aff700a160 Avoid crashing when restoring a saved GUC session_authorization value
that refers to a now-deleted userid.  Per gripe from Chris Ochs.
2004-08-11 21:10:37 +00:00
Tom Lane
f79fbb2bec Add PQserverVersion() to libpq to provide more-convenient access to
the server version number.  This commit also removes bogus DOS line
endings from libpqddll.def.

Greg Sabino Mullane
2004-08-11 18:06:01 +00:00
Tom Lane
b2d9fbeef2 Work around broken strtod() that's present in many Solaris releases.
Thanks to Michael Fuhr for identifying the problem.
2004-08-11 17:20:50 +00:00
Tom Lane
178ec6f40e Fix function definition that somehow missed being ANSI-fied, and align
it with previous prototype to suppress complaints from picky compilers,
per report from Scott Bailey.  Also, remove substitute strerror
definition --- not needed, since we link this with libpgport.
2004-08-11 16:53:28 +00:00
Peter Eisentraut
81cca21818 Allow compilation when CODESET is not defined (OpenBSD). 2004-08-11 11:06:23 +00:00
Peter Eisentraut
7a7ffe944d Translation update 2004-08-11 09:27:20 +00:00
Peter Eisentraut
3ae6531673 Add translation from 7.4 branch to head. 2004-08-11 09:00:27 +00:00
Tom Lane
3fdf649f4f Fix failure to guarantee that a checkpoint will write out pg_clog updates
for transaction commits that occurred just before the checkpoint.  This is
an EXTREMELY serious bug --- kudos to Satoshi Okada for creating a
reproducible test case to prove its existence.
2004-08-11 04:07:16 +00:00
Tom Lane
7d3b7db8da Set DYLD_LIBRARY_PATH so that 'make check' works without prior
'make install' on OS X.  Per suggestion from Adam Witney.
2004-08-10 22:24:06 +00:00
Peter Eisentraut
a2ec3fe817 New translation 2004-08-10 19:10:21 +00:00
Peter Eisentraut
f781ed4ed8 Translation updates 2004-08-10 19:06:21 +00:00
Peter Eisentraut
73730f49af Translation update 2004-08-10 18:59:57 +00:00
Peter Eisentraut
742781bdab Translation updates 2004-08-10 18:42:22 +00:00
Peter Eisentraut
e21e121999 Translation update 2004-08-10 18:38:19 +00:00
Tom Lane
8cf8b47a21 syslogger.c needs <sys/time.h> on some platforms, per Greg Mullane. 2004-08-09 20:28:48 +00:00
Tom Lane
b06c907645 Path-mangling logic was failing to account for paths containing mentions
of '.' or '..'.  Extend canonicalize_path() to trim off trailing occurrences
of these things, and use it to fix up paths where needed (which I think is
only after places where we trim the last path component, but maybe some
others will turn up).  Fixes Josh's complaint that './initdb' does not
work.
2004-08-09 20:20:47 +00:00
Tom Lane
35f539b481 When expanding %p in archive_command or restore_command, translate
slashes to backslashes #ifdef WIN32.  This is to cope with the fact
that Windows seems exceedingly unfriendly to slashes in shell commands,
as per recent discussion.
2004-08-09 16:26:06 +00:00
Bruce Momjian
3d642ae7d9 Fix Win32 pg_dumpall check. 2004-08-09 03:12:38 +00:00
Bruce Momjian
bc1ca750e8 Improve comment. 2004-08-09 02:12:51 +00:00
Bruce Momjian
b942e8700f Stamp libpq.rc with 8.0 version. 2004-08-09 01:55:42 +00:00
Tom Lane
33bf242a8a Make listen_addresses be a comma-separated list instead of a space-separated
list.  More consistent with our other list-containing GUC variables.
2004-08-08 20:17:36 +00:00
Tom Lane
dc199eafa7 Document background writer control parameters, do some editorial work
on other recent changes in runtime parameter list.
2004-08-08 19:42:57 +00:00
Tom Lane
faafbae720 If these are ifdef WIN32 in the .c file, should be so in .h as well. 2004-08-08 16:13:05 +00:00
Bruce Momjian
d5fc378f32 Disable vacuum delay, as discussed on hackers. 2004-08-08 15:37:06 +00:00
Bruce Momjian
640d0dc0f0 Fix compiler warning in the proper way. 2004-08-08 07:00:22 +00:00
Bruce Momjian
6ec4520a5b Supress warning about zero-length format string. 2004-08-08 06:58:00 +00:00
Bruce Momjian
7ee3c35152 Allow libpgport to call memory allocation routines even though
CurrentMemoryContext is DLLIMPORT on Win32.  Work around that by
creating stubs in the backend for palloc/pstrdup.

Also fix pg_dumpall to do proper quoting on Win32.
2004-08-08 06:44:36 +00:00
Bruce Momjian
8120ff636b More Win32 zic build cleanups now that we have symlinks, it needs help. 2004-08-08 05:19:44 +00:00
Bruce Momjian
e81cbc21fc Adjust defines to be consistent. 2004-08-08 05:04:41 +00:00
Joe Conway
cb50ee286d Tighened up syntax checking of array input processing considerably. Junk that
was previously allowed in odd places with odd results now causes an ERROR.
Also changed behavior with respect to whitespace -- trailing whitespace is
now ignored as well as leading whitespace (which has always been ignored).

Documentation updated to reflect change in whitespace handling. Also some
refactoring to what I believe is a more sensible order of several paragraphs.
2004-08-08 05:01:55 +00:00
Bruce Momjian
988d84f4a7 Another zic cleanup . 2004-08-08 04:53:41 +00:00
Bruce Momjian
68993b650f Link in dirmod specially for zic so it works on Win32. 2004-08-08 03:57:35 +00:00
Bruce Momjian
dc94d4ab57 Remove xstrdup and friends who were only called once. Replace with
#ifdef calls.
2004-08-08 03:51:20 +00:00
Tom Lane
7dca975c5d Add a comment about why we always replay backup blocks from WAL. 2004-08-08 03:22:08 +00:00
Bruce Momjian
fd62065fa6 Fix Win32 pg_dumpall, with help from Claudio. 2004-08-08 03:21:39 +00:00
Bruce Momjian
2732932de4 Improve comment. 2004-08-08 02:22:55 +00:00
Bruce Momjian
51fa8b0120 Fix comment. 2004-08-08 01:43:33 +00:00
Bruce Momjian
5e01aa7ad1 Fixups for Win32 symlinks. 2004-08-08 01:31:15 +00:00
Bruce Momjian
53e8bec717 The attached patch implements a symlink for win32 using junctions, and
uses that for win32 tablespaces.

Andreas Pflug
2004-08-07 21:48:09 +00:00
Tom Lane
d48d86651c Remove bogus trailing dot from eventlog output, per Andreas.
Clean up README file a bit.
2004-08-07 17:55:59 +00:00
Tom Lane
b2b5656362 Don't try to rewrite NEW references in a utility statement in a rule.
There won't be any, and in fact there won't even be an RTE for NEW,
which was leading to a core dump in CVS tip.  7.4 and earlier manage
not to crash when applying ResolveNew in this scenario, but I think
it was just good fortune that they didn't.  Per report from
Bernd Helmle.
2004-08-07 17:40:49 +00:00
Bruce Momjian
21d16121bf Ignore trailing spaces in psql \h.
Greg Sabino Mullane
2004-08-07 03:36:07 +00:00
Jan Wieck
ddb25082f3 Vacuum delay activated by default.
Jan
2004-08-07 03:08:49 +00:00
Bruce Momjian
deb15b55b1 Document delay as 0, per Matthew T. O'Connor 2004-08-07 01:04:50 +00:00
Tom Lane
220ec930fc Arrange for proper newline termination of syslogger's own messages,
per Andreas.
2004-08-06 19:17:31 +00:00
Tom Lane
18661f282b Revert badly-broken patch to dump comments on composite-type columns. 2004-08-06 18:18:42 +00:00
Bruce Momjian
d6e05afc3d I have noticed that the latex format in psql has some bugs:
o "_" is not escaped, and causes TeX to abort, thinking it's a
  subscript outside of maths mode.  Most of my table and field names
  use underscores, so this is a really nasty one.
o The column count is calculated using the contents of opt_align. But
  opt_align has one extra element, and so it's always one too many.  I
  changed it to count the column headings, like all the other output
  formats.  There may be a bug in computing opt_align that this patch
  does not address, but I'm not yet familiar enough with the psql
  source to fix this as well.
o  The line drawing rules for each border setting (0-3) and expanded
  mode didn't always match the documented behaviour and what other
  formats (e.g. aligned) did.  I made it as conformant as possible,
  and also tidied the alignment of the first line of the footer, which
  was incorrectly indented.

Roger Leigh
2004-08-06 18:09:15 +00:00
Tom Lane
7f018ac1c2 Use one, not zero, as the default lower bound for arrays of AclItems.
This avoids changing the displayed appearance of ACL columns now that
array_out decorates its output with bounds information when the lower
bound isn't one.  Per gripe from Gaetano Mendola.  Note that I did not
force initdb for this, although any database initdb'd in the last
couple of days is going to have some problems.
2004-08-06 18:05:49 +00:00
Tom Lane
533bd1d5a7 Add _O_TEXT option to dup2 call on Windows, to ensure redirected postmaster
stderr is in text mode.  Per Andreas.
2004-08-06 16:06:59 +00:00
Tom Lane
8ae7278ced Fix several small Windows compatibility issues, per Andreas. 2004-08-06 16:00:51 +00:00
Bruce Momjian
0307c09cf5 Rename vacuum_cost_naptime to vacuum_cost_delay, with agreement from Jan. 2004-08-06 04:15:09 +00:00
Tom Lane
bdf8ef6925 Create a built-in log rotation program, so that we no longer have to
recommend that people go get Apache's rotatelogs program.  Additional
benefits are that configuration is done through GUC, rather than
externally, and that the postmaster can monitor the log rotator and
restart it after failure (though we certainly hope that won't happen
often).
Andreas Pflug, some rework by Tom Lane.
2004-08-05 23:32:13 +00:00
Dennis Bjorklund
b4cd416ab0 Translation updates 2004-08-05 06:50:27 +00:00
Dennis Bjorklund
4042abba10 Translation updates 2004-08-05 06:43:42 +00:00
Joe Conway
0e13d627be Require that array literals produce "rectangular" arrays, i.e. all the
subarrays of a given dimension have the same number of elements/subarrays.

Also repair a longstanding undocumented (as far as I can see) ability to
explicitly set array bounds in the array literal syntax. It now can
deal properly with negative array indicies. Modify array_out so that
arrays with non-standard lower bounds (i.e. not 1) are output with
the expicit dimension syntax. This fixes a longstanding issue whereby
arrays with non-default lower bounds had them changed to default
after a dump/reload cycle.

Modify regression tests and docs to suit, and add some minimal
documentation regarding the explicit dimension syntax.
2004-08-05 03:30:44 +00:00
Joe Conway
39ec59f30f Restore behavior of --pgxs option to that of the original shell script. 2004-08-05 03:11:55 +00:00
Joe Conway
ab6ee1f9fc Move include for Python.h above postgres.h to eliminate compiler warning. 2004-08-05 03:10:29 +00:00
Dennis Bjorklund
dcbb5b9d2d Use gettext_noop() to mark strings. errmsg() perform the
real gettext() later on, so it was called twice before.
2004-08-04 21:55:27 +00:00
Tom Lane
fcbc438727 Label CVS tip as 8.0devel instead of 7.5devel. Adjust various comments
and documentation to reference 8.0 instead of 7.5.
2004-08-04 21:34:35 +00:00