Commit Graph

13579 Commits

Author SHA1 Message Date
Tom Lane 6a640d1e02 Add missing null terminator to escaped string; clean up unnecessarily
obscurantist coding conventions.
2004-10-07 18:57:26 +00:00
Bruce Momjian 0c657baa7f Add PLperl workaround for Win32 to the *.xs file. 2004-10-07 18:57:18 +00:00
Tom Lane a8487e15ed Fix problems with SQL functions returning rowtypes that have dropped
columns.  The returned tuple needs to have appropriate NULL columns
inserted so that it actually matches the declared rowtype.  It seemed
convenient to use a JunkFilter for this, so I made some cleanups and
simplifications in the JunkFilter code to allow it to support this
additional functionality.  (That in turn exposed a latent bug in
nodeAppend.c, which is that it was returning a tuple slot whose
descriptor didn't match its data.)  Also, move check_sql_fn_retval
out of pg_proc.c and into functions.c, where it seems to more naturally
belong.
2004-10-07 18:38:51 +00:00
Bruce Momjian 6d46ea25f2 Add one more byte to malloc for null storage. 2004-10-07 17:29:12 +00:00
Bruce Momjian 9fb5c757b8 Remove unneeded dash. 2004-10-07 17:04:54 +00:00
Bruce Momjian 00f184a83f Update comment to fix nibble mention:
* We are not sure how much precision is in tv_usec, so we
	 * swap the high and low 16 bits of 'later' and XOR them with
	 * 'earlier'. On the off chance that the result is 0, we
	 * loop until it isn't.

Greg Stark
2004-10-07 17:03:50 +00:00
Bruce Momjian d1cee5495a Escape single quotes and backslashes used in locales placed in
postgresql.conf.

Zhong Xubin
2004-10-07 16:53:25 +00:00
Bruce Momjian 2b8fab842b Prevent install error message when doing cmp on empty tree. 2004-10-07 16:23:28 +00:00
Bruce Momjian a5d7ba773d Adjust comments previously moved to column 1 by pgident. 2004-10-07 15:21:58 +00:00
Bruce Momjian 9da50e1f53 Back out unindented modification to file. 2004-10-07 14:19:58 +00:00
Bruce Momjian cdc84adbdb Indent comment pushed to new line by else so it is indented by BSD
indent.
2004-10-07 14:15:50 +00:00
Bruce Momjian 914ff1ea3c Add as binary mode 2004-10-07 13:59:45 +00:00
Bruce Momjian 70d344d61d re-add as binary 2004-10-07 13:59:20 +00:00
Bruce Momjian 8a28f50f8a Improve pgindent processing of comment after 'else'.
Improve comment of pg_dump Win32 link workaround.
2004-10-07 13:45:51 +00:00
Bruce Momjian 4e28b08e53 Improve comment after 'else' handling of pgindent. 2004-10-07 02:32:06 +00:00
Neil Conway 0683a47556 Allow the spinlock test to be compiled successfully in a vpath build. 2004-10-07 00:08:04 +00:00
Tom Lane 52a45818a1 XOR process PID into a backend's initial random seed, to ensure that
different backends get a reasonably wide set of initial seeds even if
gettimeofday returns tv_usec values with only a few bits of precision.
Per recent discussion.
2004-10-07 00:03:15 +00:00
Neil Conway f629583f94 Document what the "rep; nop" x86 assembler sequence is actually equivalent
to, and what it is intended to do.
2004-10-06 23:41:59 +00:00
Neil Conway 3ba0fc760c Capitalize some SQL keywords the previous commit missed, for consistency. 2004-10-06 23:31:45 +00:00
Bruce Momjian d7e0ebdf8e Say "history is not supported" and remove "on this platform" for lack of
readline.
2004-10-06 19:04:10 +00:00
Bruce Momjian c62a5465fb Suppress psql \s help display for platforms like Win32 that don't
typically install witn readline, and throw an error if they try to
access it.
2004-10-06 18:39:16 +00:00
Bruce Momjian 94954c7f6a Add mention of win32ver.rc for update for minor release. 2004-10-06 18:15:24 +00:00
Bruce Momjian aa20badeaf Fix improper defines for uid_t and gid_t. Had them backwards. 2004-10-06 17:47:53 +00:00
Bruce Momjian a95a82e7f0 Uppercase SQL keywords in query for clarity. 2004-10-06 17:43:07 +00:00
Bruce Momjian d7b7a4a648 This simple patch fixes a typo, ensure pg_config is removed in win32
and correct some splitted message mistake.

Euler Taveira de Oliveira
2004-10-06 17:21:45 +00:00
Bruce Momjian dedb53f29c Fix pg_dumpall to use double-quote for Win32 arguments.
Luiz K. Matsumura
2004-10-06 17:02:02 +00:00
Bruce Momjian 48018da7ce The Win32 (mingw) build of libpq seems to have lost it's SSL libs from
the link step resulting in a build failure. The attached patch fixes
that.

Dave Page
2004-10-06 16:42:01 +00:00
Bruce Momjian 87ea6f0dbe Use #define instead of typedef for plperl because perl defines
uid_t/gid_t too.
2004-10-06 16:36:02 +00:00
Bruce Momjian afa66ff3d3 Update win32ver.rc to 8,0,000,000. Mention it needs updating in
RELEASE_CHANGES.
2004-10-06 15:23:27 +00:00
Bruce Momjian 7d3d5affda Improve consistency of win32 version sed script. 2004-10-06 15:14:13 +00:00
Bruce Momjian e6470a22b7 Fix for Win32 file version sed macro, per report from Dave Page. 2004-10-06 15:12:32 +00:00
Bruce Momjian 902ca3e225 Here is a patch to fix win32 ssl builds. Summary of changes:
* Links with -leay32 and -lssleay32 instead of crypto and ssl. On win32,
"crypto and ssl" is only used for static linking.

* Initializes SSL in the backend and not just in the postmaster. We
cannot pass the SSL context from the postmaster through the parameter
file, because it contains function pointers.

* Split one error check in be-secure.c. Previously we could not tell
which of three calls actually failed. The previous code also returned
incorrect error messages if SSL_accept() failed - that function needs to
use SSL_get_error() on the return value, can't just use the error queue.

* Since the win32 implementation uses non-blocking sockets "behind the
scenes" in order to deliver signals correctly, implements a version of
SSL_accept() that can handle this. Also, add a wait function in case
SSL_read or SSL_write() needs more data.

Magnus Hagander
2004-10-06 09:35:23 +00:00
Bruce Momjian 5431393274 Allow plpython to build on Win32.
Magnus Hagander
2004-10-06 09:20:41 +00:00
Bruce Momjian 4542581bf1 Adjustment to test on unix domain socket variable for pg_hba.conf
default settings, rather than just Win32.
2004-10-06 09:13:10 +00:00
Bruce Momjian c93872d891 Remove pg_hba.conf 'local' line for Win32 because it doesn't support unix domain
connections.

Andrew Dunstan
2004-10-06 09:01:18 +00:00
Bruce Momjian 513e89b44b please find attached an alternate submission which addresses open item
"make pgxs install by default". It is up to the committers to chose.

(1) there is only one "install" target. no more "install-all-headers".
    it simplifies/changes several makefiles.

(2) the documentation reflects the change.

(3) a minor fix on pgxs to use a nicer patch without a double slash.

Fabien Coelho
2004-10-06 08:50:02 +00:00
Neil Conway d42d427252 Slightly rearrange psql startup code so that we read psqlrc before printing
the startup banner. This allows "\set QUIET on" in psqlrc to do what the
user probably intended. Patch from Sean Chittenden, editorializing from
Neil Conway.
2004-10-06 08:20:58 +00:00
Bruce Momjian da67c919d9 Add Win32 version info to client binaries.
Magnus Hagander
2004-10-05 19:30:25 +00:00
Bruce Momjian abef6b5162 Add distclean target to pgevent. 2004-10-05 17:26:39 +00:00
Bruce Momjian a992bd8c6d Another tightening of Win32 typedefs. 2004-10-05 15:09:41 +00:00
Bruce Momjian 4d47db363b Fix typo in recent Win32 typedef change. 2004-10-05 14:27:07 +00:00
Bruce Momjian 2def476de3 Remove unused Win32 defines, convert them to typdefs, per suggestion
from Peter.
2004-10-05 13:48:35 +00:00
Michael Meskes a79f8195de '::' is no longer interpreted as a variable in a prepare statement. 2004-10-05 10:48:37 +00:00
Neil Conway af7849f184 License cleanup: crypt.c and qsort.c to latest NetBSD CVS sources, to
pickup license clarification (3-clause BSD is now used). Add license
terms to memcmp.c (also from NetBSD), which previously had none.
Finally, pickup an upstream fix to crypt.c (const-ify some arrays).
2004-10-05 00:12:49 +00:00
Tom Lane 6c61af6654 Remove arithmetic operators on the 1-byte-char datatype, as per proposals
made several times in the past.  Add coercion functions between "char"
and integer so that a workaround is possible if needed.

Initdb forced.
2004-10-04 22:49:59 +00:00
Tom Lane 1ab415596d Correct the volatility labeling of ten timestamp-related functions,
per discussion from Friday.  initdb not forced in this commit but I intend
to do that later.
2004-10-04 22:13:14 +00:00
Tom Lane 4c77cbb272 PortalRun must guard against the possibility that the portal it's
running contains VACUUM or a similar command that will internally start
and commit transactions.  In such a case, the original caller values of
CurrentMemoryContext and CurrentResourceOwner will point to objects that
will be destroyed by the internal commit.  We must restore these pointers
to point to the newly-manufactured transaction context and resource owner,
rather than possibly pointing to deleted memory.
Also tweak xact.c so that AbortTransaction and AbortSubTransaction
forcibly restore a sane value for CurrentResourceOwner, much as they
have always done for CurrentMemoryContext.  I'm not certain this is
necessary but I'm feeling paranoid today.
Responds to Sean Chittenden's bug report of 4-Oct.
2004-10-04 21:52:15 +00:00
Bruce Momjian ee7de3d662 Make sure no libs use libpgport by removing it from the link line. 2004-10-04 20:36:12 +00:00
Bruce Momjian 2e8252d67a Fix MinGW link failure with new libpgport processing. 2004-10-04 20:32:58 +00:00
Bruce Momjian b5ddfb4bd0 Readd -DFRONTEND to client makefiles because it still affects win32.h
defines.
2004-10-04 18:05:55 +00:00
Bruce Momjian 63dabb39cd Fix warnings from crypt.c compile. 2004-10-04 15:17:17 +00:00
Bruce Momjian f95ff4b978 Comment out unused variable. 2004-10-04 15:09:27 +00:00
Tom Lane 9a31c9b7b8 Suppress getppid test on WIN32, per Dave Page. 2004-10-04 14:55:17 +00:00
Tom Lane 4171bb869f Detect overflow in integer arithmetic operators (integer, smallint, and
bigint variants).  Clean up some inconsistencies in error message wording.
Fix scanint8 to allow trailing whitespace in INT64_MIN case.  Update
int8-exp-three-digits.out, which seems to have been ignored by the last
couple of people to modify the int8 regression test, and remove
int8-exp-three-digits-win32.out which is thereby exposed as redundant.
2004-10-04 14:42:48 +00:00
Bruce Momjian 24201b4bc6 Make libpgport be front-end only and make libpgport_srv be a backend
library that uses palloc, ereport, etc.  This simplifies the makefiles
for client applications.
2004-10-04 13:43:59 +00:00
Peter Eisentraut 8d5ff6bad1 Translation update 2004-10-03 20:29:24 +00:00
Peter Eisentraut 0654f0f669 Translation updates 2004-10-03 20:24:26 +00:00
Tom Lane b3c4d69852 Add regression test inspired by Sebastian Böck. 2004-10-03 00:13:29 +00:00
Tom Lane 47aa95e951 Clean up handling of inherited-table update queries, per bug report
from Sebastian Böck.  The fix involves being more consistent about
when rangetable entries are copied or modified.  Someday we really
need to fix this stuff to not scribble on its input data structures
in the first place...
2004-10-02 22:39:49 +00:00
Bruce Momjian b3f2b19218 Update length from 75 to 79. 2004-10-02 01:10:58 +00:00
Tom Lane 125bf342fd Convert pg_stat_get_backend_idset to use the existing SRF support.
This seems the cleanest way of fixing its lack of a shutdown callback,
which was preventing it from working correctly in a query that didn't
run it to completion.  Per bug report from Szima GÄbor.
2004-10-01 21:03:42 +00:00
Tom Lane b62aa83f0e fmgr_security_definer had better do a PG_TRY to ensure the outer userid
is restored on error exit.
2004-10-01 20:39:54 +00:00
Tom Lane c8196c87a7 Adjust postmaster to recognize that a lockfile containing its parent's PID
must be stale.  Tweak example startup scripts to not use pg_ctl but launch
the postmaster directly, thereby ensuring that only the postmaster's direct
parent shell will be a postgres-owned process.  In combination these should
fix the longstanding problem of the postmaster sometimes refusing to start
during reboot because it thinks the old lockfile is not stale.
2004-10-01 18:30:25 +00:00
Tom Lane 8bbfa16624 Don't assume PQdb() will return a valid result from a failed connection. 2004-10-01 17:34:19 +00:00
Tom Lane bbd1e1cc68 Don't assume PQdb() will return a valid result from a failed connection. 2004-10-01 17:25:55 +00:00
Tom Lane b1f8a37aa7 Fallout from changing index locking rules: we can reduce the strength
of locking used by REINDEX.  REINDEX needs only ShareLock on the parent
table, same as CREATE INDEX, plus an exclusive lock on the specific index
being processed.
2004-10-01 17:11:50 +00:00
Tom Lane 4c5e810fcd Code review for NOWAIT patch: downgrade NOWAIT from fully reserved keyword
to unreserved keyword, use ereport not elog, assign a separate error code
for 'could not obtain lock' so that applications will be able to detect
that case cleanly.
2004-10-01 16:40:05 +00:00
Neil Conway b3f2f6ebec Use 'override' when appending text to LDFLAGS, so the build doesn't break
if the user has defined LDFLAGS themselves.
2004-10-01 02:06:52 +00:00
Tom Lane d2af5f8a3e Adjust index locking rules as per my proposal of earlier today. You
now are supposed to take some kind of lock on an index whenever you
are going to access the index contents, rather than relying only on a
lock on the parent table.
2004-09-30 23:21:26 +00:00
Tom Lane abc6441d60 Remove unnecessary use of index_open just to get the index name. 2004-09-30 17:42:42 +00:00
Tom Lane bb6a78829e isinf.c needs <float.h> on some platforms, per Darcy Buskermolen. 2004-09-30 16:38:39 +00:00
Tom Lane f065957062 Come to think of it, functions in FROM have the same syntactic restriction
as CREATE INDEX did, and can be fixed the same way, for another small
improvement in usability and reduction in grammar size.
2004-09-30 00:24:27 +00:00
Tom Lane 912c27f9c2 Split out everything that looks like a function call from c_expr into
a separate production func_expr.  This allows us to accept all these
variants in the backwards-compatible syntax for creating a functional
index; which beats documenting exactly which things work and which don't.
Interestingly, it also seems to make the generated state machine a little
bit smaller.
2004-09-29 23:39:20 +00:00
Tom Lane 0fb3152ea9 Minor adjustments to improve the accuracy of our computation of required
shared memory size.
2004-09-29 15:15:56 +00:00
Tom Lane e7cb681618 Adjust obsolete comment about memory needs for lock table. 2004-09-28 21:19:30 +00:00
Tom Lane 3a246cc285 Arrange to preallocate all required space for the buffer and FSM hash
tables in shared memory.  This ensures that overflow of the lock table
creates no long-lasting problems.  Per discussion with Merlin Moncure.
2004-09-28 20:46:37 +00:00
Bruce Momjian 70c8fcb287 An include path got missed out of the patch - see the attached fix.
This also adds debug build support to src/bin/psql/win32.mak.

Dave Page
2004-09-28 16:17:26 +00:00
Bruce Momjian 1ad6878276 Revert patch that removed BUFSIZ usage. The memory has to hold the
structures plus pointers used by the structure.
2004-09-28 00:07:01 +00:00
Bruce Momjian dd67707a64 Small WIN32_CLIENT_ONLY cleanup for new build patch. 2004-09-27 23:58:09 +00:00
Bruce Momjian b534a5605f Remove use of large BUFSIZ for buffers and use the proper struct sizes.
This greatly helps threaded libpq programs.
2004-09-27 23:39:14 +00:00
Bruce Momjian e1c8b37afb Add new macro as shorthand for MS VC and Borland C++:
+ #if   defined(_MSC_VER) || defined(__BORLANDC__)
+ #define       WIN32_CLIENT_ONLY
+ #endif
2004-09-27 23:24:45 +00:00
Bruce Momjian e017051006 More MS VC and BCC psql compile cleanups. 2004-09-27 22:20:40 +00:00
Bruce Momjian 8efe926bfe More Win32 cleanups for Dave Page. 2004-09-27 22:11:23 +00:00
Bruce Momjian 866627f84d Make adjustment for MS VC and BCC compile of psql, from Dave Page. 2004-09-27 22:06:41 +00:00
Bruce Momjian f6b896b17a Improve MS VC builds for psql by handlling flex properly and prevent
rename prototype conflict.
2004-09-27 20:37:20 +00:00
Peter Eisentraut a6cb7fd60a Translation update 2004-09-27 20:28:15 +00:00
Peter Eisentraut 353b70aef3 Translation updates 2004-09-27 20:26:03 +00:00
Peter Eisentraut 9216b152e3 Translation update 2004-09-27 20:23:07 +00:00
Peter Eisentraut ad6a6170e5 New translations 2004-09-27 20:21:24 +00:00
Bruce Momjian 32b24bfa97 Remove inclusion of windows.h now that it is included in c.h, per idea
from Peter.
2004-09-27 19:16:03 +00:00
Michael Meskes d56b9fdaa8 Synced parser.
Removed Oracle transaction syntax to fix shift/reduce error.
2004-09-27 09:59:17 +00:00
Neil Conway cb7fc63d3e Remove references to the ODBC driver from the main source tree. From Kris
Jurka.
2004-09-27 04:18:28 +00:00
Neil Conway 64a60590ba A few minor list-related cleanups:
(1) Replace while loop with the new forboth() construct in
parser/analyze.c

(2) Replace lcons() with lappend() in SearchCatCacheList(). Since these
now have the same performance, there is no reason to prefer lcons() in
this case, and using lappend() leads to cleaner code.

(3) Improve the name of the second parameter to for_each_cell()
2004-09-27 04:12:03 +00:00
Neil Conway 0ed07d49d5 Code cleanup: don't bother casting the argument to pfree() to void *
from another pointer type. Per C89, this is unnecessary, and it is common
practice throughout the rest of the tree anyway.
2004-09-27 04:01:23 +00:00
Tom Lane ae8f7313ab Rewrite ReadArrayStr() to avoid O(N^2) behavior on large strings,
and hopefully improve code clarity while at it.  One intentional
semantics change: a backslashed space will not be treated as removable
trailing whitespace, as the prior coding would do.  ISTM that if it
wouldn't be considered removable leading whitespace, it shouldn't be
stripped at the end either.
2004-09-27 01:39:02 +00:00
Tom Lane 7ac258c2f3 Fix multiple breakages in our support for SSL certificates. 2004-09-26 22:51:49 +00:00
Tom Lane 9236c79c8e Use ULL not LL in UINT64CONST. 2004-09-26 15:13:42 +00:00
Bruce Momjian 786f3d147d Here is a patch that adds the version info from libpq.rc to the DLL
build in mingw. The MSVC build already did this, but it was not linked
into the mingw one.

This is not the same as the versioninfo patch that's in the queue.
Please apply this one before beta-3 if at all possible.

Magnus Hagander
2004-09-26 02:14:47 +00:00
Bruce Momjian e9ec10494e Use <> not "" for include of pthread.h. 2004-09-26 01:40:55 +00:00
Tom Lane 09a893117a Repair bug that would allow libpq to think a command had succeeded when
it really hadn't, due to double output of previous command's response.
Fix prevents recursive entry to libpq routines.  Found by Jan Wieck.
2004-09-26 00:26:28 +00:00