Commit Graph

8074 Commits

Author SHA1 Message Date
Tom Lane 5967dbd082 Tom Ivar Helbekkmo <tih@kpnQwest.no> says that dynamic linking works
now on VAX NetBSD.  Hence, remove #ifdef'd disable tests.
2001-04-02 03:08:30 +00:00
Tom Lane 2ef99ee708 Planner wasn't correctly handling adjustment of tuple_fraction for the
case of LIMIT in a sub-select.
2001-04-01 22:37:19 +00:00
Philip Warner 135040d511 Patch to put rudimentary dependency support into pg_dump. This addresses
the UDT/function order problem.

    - Rudimentary support for dependencies in archives.
      Uses dependencies to modify the OID used in sorting TOC
      entries. This will NOT handle multi-level dependencies,
      but will manage simple relationships like UDTs & their functions.

    - Treat OIDs with more respect (avoid using ints, use macros
      for conversion & comparison).
2001-04-01 05:42:51 +00:00
Tom Lane 98f7515696 On Cygwin, do initial connect() call in blocking mode, per report from
Jason Tishler.
2001-03-31 23:14:37 +00:00
Tom Lane fc0d3f1447 pqWait() should check for exception status as well as read or write
ready.  It appears that most (all?) Unixen will consider a socket to
be read or write ready if it has an error condition, but of course
Microsoft does things differently.
2001-03-31 23:13:30 +00:00
Tom Lane 648c09181e Re-allow specification of a new default value for an inherited column
in CREATE TABLE, but give a warning notice.  Clean up inconsistent
handling of defaults and NOT NULL flags from multiply-inherited columns.
Per pghackers discussion 28-Mar through 30-Mar.
2001-03-30 20:50:36 +00:00
D'Arcy J.M. Cain 92f3253926 Marc-Andre is changing where DateTime goes. This change allows the module
to work either way.
Change submitted by Andrew Kuchling <akuchlin@mems-exchange.org>
2001-03-30 12:08:24 +00:00
D'Arcy J.M. Cain f9ae973c5e Correct indenting in _quote() function.
Fix submitted by Andrew Kuchling <akuchlin@mems-exchange.org>
2001-03-30 12:04:43 +00:00
Tom Lane dcbbdb1b3e Add appropriately ifdef'd hack to make ARM compiler allocate ItemPointerData
as six bytes not eight.  This fixes a regression test failure but more
importantly avoids wasting four bytes of pad space in every tuple header.
Also add some commentary about what's going on.
2001-03-30 05:25:51 +00:00
Tom Lane d0f6ae68f5 random_seed => seed ... 2001-03-30 04:50:47 +00:00
Bruce Momjian fe0918863b Put proper pgaccess Chinese big5 file in place. 2001-03-29 22:09:06 +00:00
Peter Eisentraut e692b0130b Rename 'random_seed' back to 'seed'. 2001-03-29 19:03:57 +00:00
Michael Meskes 827edf2076 Applied bug fix by Adriaan Joubert <a.joubert@albourne.com> 2001-03-29 09:59:00 +00:00
Tom Lane f155cc82ec Quick hack to fix Oliver Elphick's problem with subselects in an
inheritance query: make duplicate copies of subplans in adjust_inherited_attrs.
When we redesign querytrees we really gotta do something about this
issue of whether querytrees are read-only and can share substructure
or not.
2001-03-27 18:02:19 +00:00
Tom Lane fa0f2c6577 Repair pgindent damage to comments. 2001-03-27 17:12:34 +00:00
Bruce Momjian 341cb70044 The following patch updates the FAQ_AIX and makes C++ code work with
more recent versions of the IBM C++ compiler (now called VisualAge C++).
The C++ part was previously broken (g++ and xlC), thus this is zero risk.
Only AIX specific parts are touched (1 Makefile.shlib line (link with $(COMPILER
) instead
of $(CC) and one shell script line (parameter -C to nm to not demangle C++ symbo
ls for
.exp file)).

I thus ask you to please apply this patch before release.

With or without this patch RC1 on AIX 4.3.2 RS6000 passes "gmake check" for both
 the native
compiler vac.C 5.0.1 and gcc 2.95.2 :-)

Andreas
2001-03-27 14:56:20 +00:00
D'Arcy J.M. Cain c4d354c271 Add changes from Mikhail Terekhov <terekhov@emc.com>.
Use Extension method from distutils.

Cleaned up mismatched indentation styles while I was at it.
2001-03-27 10:53:21 +00:00
Tatsuo Ishii c252c972f6 Add checking for valid database encoding. 2001-03-27 05:47:13 +00:00
Bruce Momjian 12ceb11182 ODBC source code cleanup. Mostly alignment of #define constants. 2001-03-27 04:00:55 +00:00
Tom Lane ff71301806 Spell __volatile__ correctly. 2001-03-27 01:16:24 +00:00
Bruce Momjian 153237cc45 OpenBSD resultmap change:
I posted this to the list a few days ago,  but it was not addressed.  Can
someone please make the changes to the src/test/regress/resultmap?

Thanks.

- brandon
2001-03-26 17:51:41 +00:00
Bruce Momjian 33881e4f68 Add period to message. 2001-03-26 17:00:54 +00:00
Bruce Momjian 099b60b352 Change message to _the_ administrator. There is only one administrative
account.

	This connection has been terminated by the administrator.
2001-03-26 16:59:38 +00:00
Tom Lane 7e733dc960 Add #define HAVE_ATEXIT, per report from Magnus. 2001-03-26 15:21:33 +00:00
Tom Lane b8c2421ef6 pqsignal call needs to be #ifndef WIN32, per report from Magnus. 2001-03-26 15:18:51 +00:00
Hiroshi Inoue 80c6843e6b Add multibyte support 2001-03-26 09:34:17 +00:00
Tom Lane ccd415c63f Fix unportable assumptions about alignment of local char[n] variables. 2001-03-25 23:23:59 +00:00
Tom Lane 571dbe4606 Improve comments for xlog item size #defines. 2001-03-25 22:40:58 +00:00
D'Arcy J.M. Cain 5fb00d424a Update the changes for version 3.2. 2001-03-25 22:23:44 +00:00
D'Arcy J.M. Cain f99e2003f1 Document the --with-python flag as a simpler way of installing the
PyGreSQL module when installing PostgreSQL.

Document the location of the WIN32 binaries.
2001-03-25 22:22:51 +00:00
Peter Eisentraut 3206e5225f Pick up any extra -I options for Python build. 2001-03-25 19:44:04 +00:00
Tom Lane 1ed61b3a9c Fix unportable assumptions about alignment of local char[n] variables. 2001-03-25 19:30:28 +00:00
Tom Lane 42eaad0575 Re-order declarations to un-break the non-HAS_TEST_AND_SET case. 2001-03-25 17:52:46 +00:00
Tom Lane 00713cb7cb Fix code that incorrectly assumed a 'char foo[N]' local variable would
be aligned on a word boundary.  Per report from Steve Nicolai.
2001-03-25 00:45:20 +00:00
Peter Eisentraut 6ba0f31bdd Make less misleading message for failed + ignored tests. 2001-03-24 23:32:25 +00:00
Tom Lane f2c8f278b1 Portability fix from Steve Nicolai. 2001-03-24 23:11:14 +00:00
Peter Eisentraut b420c47434 Disable pg_upgrade. 2001-03-24 13:21:14 +00:00
Tom Lane 5b4045d5d6 Hadn't built on a PARISC 1.1 box in a long time ... but when I did,
it turned out that the libpq makefile chokes on '-L /lib/pa1.1'.
Need to remove the space so filter rule works.
2001-03-24 06:17:41 +00:00
Tom Lane e458ebfd21 When using 'long long int' for int64 type, check to see if the compiler
accepts nnnLL syntax for long long constants.  If so, decorate the CRC64
constants with LL to avoid warnings and/or erroneous results from certain
non-standards-compliant compilers.
2001-03-23 18:42:12 +00:00
Tom Lane 32924c1c90 Mark exception and assert global variables as DLLIMPORT, so that plpgsql
can be compiled with asserts enabled on Windoze.
2001-03-23 18:26:01 +00:00
Tatsuo Ishii 40f158da48 Add checking for strtoul. SunOS4 does not have it. 2001-03-23 05:46:05 +00:00
Bruce Momjian 7cf952e7b4 Fix comments that were mis-wrapped, for Tom Lane. 2001-03-23 04:49:58 +00:00
Philip Warner b1065f8fc2 Fix checking of file operations in demo ('files') output format. 2001-03-23 01:27:12 +00:00
Tom Lane a062473696 Fix problems with coredumps due to ^C when longjmp buffer isn't valid.
Now, we will only catch ^C at times when it is valid.
2001-03-23 00:36:38 +00:00
Tom Lane b32cac8055 Fix Joubert's complaint that int8-sized numeric literals are mishandled
on Alpha (because parser mistakenly assumes that a nonoverflow result
from strtol means the value will fit into int4).  A scan for other uses
of strtol and strtoul found a couple other places with the same mistake;
fix them too.  The changes are all conditional on HAVE_LONG_INT_64 to
avoid complaints from compilers that think x != x is a silly test
(cf. pg_atoi).
2001-03-22 17:41:47 +00:00
Marc G. Fournier 69a2c2bad2 geometry tests 'FAILED' from a precision standpoint, but differently then
what solaris-precision takes into account ... its possible that solaris-precision
is 'stale', but created a new one "just in case" ...
2001-03-22 15:13:19 +00:00
Bruce Momjian 0686d49da0 Remove dashes in comments that don't need them, rewrap with pgindent. 2001-03-22 06:16:21 +00:00
Bruce Momjian 9e1552607a pgindent run. Make it all clean. 2001-03-22 04:01:46 +00:00
Hiroshi Inoue ff3c4896a9 The attached patch fixes win32.mak which got broken by the Multibyte mod
:-(, and tidies it up a little as well.

Regards, Dave.
2001-03-21 16:26:17 +00:00
Vadim B. Mikheev ab36582a19 Check bufHdr->cntxDirty and call StartBufferIO in BufferSync()
*before* acquiring shlock on buffer context. This way we should be
protected against conflicts with FlushRelationBuffers.
(Seems we never do excl lock and then StartBufferIO for the same
buffer, so there should be no deadlock here, - but we'd better
check this very soon).
2001-03-21 10:13:29 +00:00
Hiroshi Inoue 736c4655c3 a fix from Eiji Tokuya. 2001-03-21 09:35:25 +00:00
Bruce Momjian 85c0c73267 Fix 'ps' WAIT status display bug on setproctitle() platforms, cleared by
Tom Lane.
2001-03-20 22:31:54 +00:00
Tom Lane ca03b551fc Discuss LOCALE differences as a reason for regression test failure. 2001-03-20 00:09:36 +00:00
Tom Lane 68bc848766 Tweak out-of-memory error messages to include the request size, so that
it's easier to tell whether a bug report is talking about progressive
memory exhaustion or a wacko requested chunk size.
2001-03-19 22:29:39 +00:00
Tom Lane 184fb14b90 Make regular-expression error messages a tad less obscure,
per gripe from Josh Berkus.
2001-03-19 22:27:46 +00:00
Bruce Momjian c41536ea56 Update Peter Mount's email address in README. 2001-03-19 21:57:09 +00:00
Philip Warner cfeccdf80a - Added CVS headers to files
- Avoid forcing table name to lower case in FixupBlobXrefs
 - Removed fmtId calls for all ArchiveEntry name fields. This fixes
   quoting problems in trigger enable/disable code for mixed case
   table names, and avoids commands like 'pg_restore -t '"TblA"'
2001-03-19 02:35:29 +00:00
Tom Lane 7c9f29546c Give postmaster enough time to update the pidfile before checking to
see if it's been updated.  Skip the whole mess if we didn't see any
old pidfile.
2001-03-18 20:27:11 +00:00
Tom Lane af6e88a9cf Remove NEXTXID xlog record type to avoid three-way deadlock risk.
NEXTXID isn't really necessary, per previous discussion in pghackers,
but I mulishy insisted we should put it in anyway.  Mea culpa.
2001-03-18 20:18:59 +00:00
Tom Lane ddc5bc958a When we add 'waiting' to the ps_status display, there should be a
space in front of it.  Improve comments a little.
2001-03-18 20:13:13 +00:00
Tom Lane 934126b518 Considering the BeOS port didn't compile without IPC_STAT and shm_nattch,
I'm betting the QNX4 port does not either ...
2001-03-18 18:32:02 +00:00
Tom Lane 4bd983bf34 Patches from Cyril Velter to make shared-memory-conflict-detection code
work in BeOS port.
2001-03-18 18:22:08 +00:00
Philip Warner 5c1b00450c Fixed but in _enableTriggersIfNecessary introduced by previous patches by me
which caused segfault in a data-only retore with BLOBs
2001-03-18 03:45:12 +00:00
Tom Lane fd5bac6d27 Fix coredump due to writing one more byte than we'd allocated. 2001-03-18 02:25:32 +00:00
Tom Lane ae293d33cf Make sure ControlFile logId/logSeg don't go backwards (barely possible given a
slow backend, if we update unconditionally as the code did before).
2001-03-18 00:30:27 +00:00
Tom Lane 5a38af7fd8 Rearrange XLogFileInit so that control-file spinlock is not held while filling
the new log file with zeroes, only while renaming it into place.  This should
prevent problems with 'stuck spinlock' errors under heavy load.
2001-03-17 20:54:13 +00:00
Michael Meskes 90c1e2cc43 Fixed bug in handling of pointers to structs. 2001-03-16 13:05:57 +00:00
Hiroshi Inoue 935017457b Oops I forgot to add new files for multibyte support.
Sorry Eiji.
2001-03-16 13:03:04 +00:00
Tom Lane 9d645fd84c Support syncing WAL log to disk using either fsync(), fdatasync(),
O_SYNC, or O_DSYNC (as available on a given platform).  Add GUC parameter
to control sync method.
Also, add defense to XLogWrite to prevent it from going nuts if passed
a target write position that's past the end of the buffers so far filled
by XLogInsert.
2001-03-16 05:44:33 +00:00
Hiroshi Inoue 9242e6c038 Add multibyte support.
Provide an extenisible scheme of encoding conversion.
	As the first step, SJIS and BIG5 are supported.
	From now on multibyte people would be happy to use
	this psqlodbc driver.

Eiji Tokuya e-tokuya@mail.sankyo-unyu.co.jp
2001-03-16 01:17:23 +00:00
D'Arcy J.M. Cain 551e0aa991 Fix parameter handling.
Fix a bug where cs.execute('select %d + %d', (1, 2)) would get interpreted
as cs.executemany('select %d + %d', (1, 2))
2001-03-15 11:56:05 +00:00
D'Arcy J.M. Cain 37d67eb159 Add WIN32 support. 2001-03-15 11:26:22 +00:00
Tom Lane 7f02049137 Give a more reasonable error message for a bad attribute name applied
to a join or subselect alias ... cf. Oliver Elphick's complaint 13-Mar.
2001-03-14 23:55:33 +00:00
Tom Lane 7fdaf78ed0 Reduce amount of memory used per tuple for after-event triggers. This
is still a memory leak, but a little less bad than it was.
2001-03-14 21:50:32 +00:00
Tom Lane c9f26d7af6 COPY should handle after-insert triggers the same as execMain.c does.
I'm not sure that it's really necessary to save insert events when there
are only after update or delete triggers, but certainly it's wrong for
COPY to behave differently from an INSERT query.
2001-03-14 21:47:50 +00:00
Peter Eisentraut 609fee4717 A much better version of this is now in backend/port/aix. 2001-03-14 21:16:57 +00:00
Peter Eisentraut 8ec7986080 It's "gmake dist" now. 2001-03-14 21:11:53 +00:00
Peter Eisentraut b651540720 For some ungodly reason my etags doesn't have an --output option, but it
does have -o.
2001-03-14 21:07:16 +00:00
Peter Eisentraut e6a4413481 We're past Postgres95 now, and I'm sure Jolly doesn't want to receive any
bug reports.  ;-)
2001-03-14 21:03:38 +00:00
Peter Eisentraut a298589e1c We got automatic dependencies now. 2001-03-14 20:53:13 +00:00
Peter Eisentraut fbc69e29af We're way past 6.3 ... 2001-03-14 20:47:24 +00:00
Peter Eisentraut c785e1e3b0 Update. Things are now build through 'make'. 2001-03-14 20:44:40 +00:00
Tom Lane cfab4f6541 Use SEP_CHAR consistently in forming XLOG pathnames. 2001-03-14 20:23:04 +00:00
Tom Lane 7ebbf20763 Remove obsolete PowerPC-specific hack for comparisons to DBL_MIN
(per recent discussion with Tatsuo).  Hopefully the compilers with
that old bug are all long gone.
2001-03-14 20:12:10 +00:00
Tom Lane c6c1fea06d Move -Bsymbolic for HPUX to Makefile.hpux, per Peter E's recommendation. 2001-03-14 19:35:12 +00:00
Bruce Momjian 9de4b77cee 'waiting' status display had extra space, removed.
Change the administrator to 'an' administrator.
2001-03-14 18:24:34 +00:00
Tom Lane 5dd04603b9 Don't go belly-up if fork() fails for a routine checkpoint subprocess.
Just try again later.
2001-03-14 17:58:46 +00:00
Tom Lane 286d1fc382 Fix numeric modulo operator for case of fractional right argument. 2001-03-14 16:50:37 +00:00
Bruce Momjian 2e7835f7f8 New shutdown wording:
This connection has been terminated by the administrator
2001-03-14 15:14:35 +00:00
Hiroshi Inoue 08bf4d68de Fix some memory leaks. 2001-03-14 09:10:04 +00:00
Hiroshi Inoue ebffbb42ac ifdef out reindex stuff in VACUUM for safety. 2001-03-14 08:40:57 +00:00
Peter Eisentraut f192da1ba3 Provide more useful error message if 'postgres -V' failed. Advertise
pg_ctl '-l' option.
2001-03-13 21:37:15 +00:00
Tom Lane 1b87e24c4a Change xlog page-header format to include StartUpID. Use the SUI to
detect case that next page in log came from an older run than the prior
page.  This avoids the necessity to re-zero the log after recovery from
a crash, which is good because we need not risk destroying valuable log
information.
This forces another initdb since yesterday :-(.  Need to get that log
reset utility done...
2001-03-13 20:32:37 +00:00
Philip Warner ccca223b5c - Use subselect when enabling triggers,
- Use exact table names when enabling/disabling triggers
2001-03-13 13:18:44 +00:00
Hiroshi Inoue e376cb6078 The attached file contains the registry settings required to install the
ODBC driver on Windows 9X/ME/NT/2K when using the later versions of the
driver that don't have the Installshield installation:

1) Install psqlodbc.dll in to C:\Windows\System or C:\Winnt\System32
2) Add the registry settings in the attached file using regedit.

A useful addition to src/interfaces/odbc perhaps?

Regards, Dave.
2001-03-13 09:03:24 +00:00
Tom Lane 4d14fe0048 XLOG (and related) changes:
* Store two past checkpoint locations, not just one, in pg_control.
  On startup, we fall back to the older checkpoint if the newer one
  is unreadable.  Also, a physical copy of the newest checkpoint record
  is kept in pg_control for possible use in disaster recovery (ie,
  complete loss of pg_xlog).  Also add a version number for pg_control
  itself.  Remove archdir from pg_control; it ought to be a GUC
  parameter, not a special case (not that it's implemented yet anyway).

* Suppress successive checkpoint records when nothing has been entered
  in the WAL log since the last one.  This is not so much to avoid I/O
  as to make it actually useful to keep track of the last two
  checkpoints.  If the things are right next to each other then there's
  not a lot of redundancy gained...

* Change CRC scheme to a true 64-bit CRC, not a pair of 32-bit CRCs
  on alternate bytes.  Polynomial borrowed from ECMA DLT1 standard.

* Fix XLOG record length handling so that it will work at BLCKSZ = 32k.

* Change XID allocation to work more like OID allocation.  (This is of
  dubious necessity, but I think it's a good idea anyway.)

* Fix a number of minor bugs, such as off-by-one logic for XLOG file
  wraparound at the 4 gig mark.

* Add documentation and clean up some coding infelicities; move file
  format declarations out to include files where planned contrib
  utilities can get at them.

* Checkpoint will now occur every CHECKPOINT_SEGMENTS log segments or
  every CHECKPOINT_TIMEOUT seconds, whichever comes first.  It is also
  possible to force a checkpoint by sending SIGUSR1 to the postmaster
  (undocumented feature...)

* Defend against kill -9 postmaster by storing shmem block's key and ID
  in postmaster.pid lockfile, and checking at startup to ensure that no
  processes are still connected to old shmem block (if it still exists).

* Switch backends to accept SIGQUIT rather than SIGUSR1 for emergency
  stop, for symmetry with postmaster and xlog utilities.  Clean up signal
  handling in bootstrap.c so that xlog utilities launched by postmaster
  will react to signals better.

* Standalone bootstrap now grabs lockfile in target directory, as added
  insurance against running it in parallel with live postmaster.
2001-03-13 01:17:06 +00:00
Tom Lane b246510ccc Avoid O(N^2) behavior in deferredTriggerAddEvent() for large numbers of
tuples inserted/deleted/updated in a single transaction.  On my machine,
this reduced the time to delete 80000 tuples in a foreign-key-referencing
table from ~15min to ~8sec.
2001-03-12 23:02:00 +00:00
Peter Eisentraut 671be61916 Add uninstall target to Java build.
Respect default port setting in JDBC driver.
Pick up version number from Makefile.global.
Change installation directory to share/java/.
Document.
2001-03-11 11:07:01 +00:00
Tom Lane 9c2c9fcdfb Turns out the HPUX linker likes -Bsymbolic too. Without this, ODBC
driver does not work because its internal cross-references get bound
to similarly named functions in unixODBC shared library.
2001-03-10 23:15:20 +00:00
Tom Lane 5ab642fdf1 Provide a hack to let initialization happen on platforms for which
psqlodbc.c's constructor-making techniques do not work.
2001-03-10 23:12:28 +00:00
Tom Lane eb9033ce95 Do not accept values from sections following the specified section. 2001-03-10 22:30:57 +00:00
Peter Eisentraut a3176dac22 Use install-sh unconditionally. 2001-03-10 10:38:59 +00:00
Tom Lane 2cfc8fcb5d FATAL errors should cause exit with nonzero status if we are not running
under the postmaster --- specifically, if we are a standalone backend
running under the initdb script, this is critical!
2001-03-10 04:21:51 +00:00
Hiroshi Inoue e666422ebf 1)Allow the access to indexes with up to 16 keys.
2)Fix some memory leaks.
3)Change some bogus error messages.
2001-03-10 03:34:57 +00:00
Tom Lane 5490195f04 Don't choke on superuser names containing random punctuation. 2001-03-09 22:10:13 +00:00
Peter Eisentraut edebfec803 Recursive distclean shouldn't depend on recursive clean. Subdirectories
handle this.
2001-03-09 21:50:27 +00:00
Hiroshi Inoue 8fff96f1cb hold interupts during LockWaitCancel(). 2001-03-09 06:36:32 +00:00
Tom Lane d73e9df087 A subplan invoked within an aggregate function's argument should
be allowed to receive ungrouped variables of the current query level.
Curious that no one reported this bug before...
2001-03-08 01:49:01 +00:00
Tom Lane 572fda2711 Modify wchar conversion routines to not fetch the next byte past the end
of a counted input string.  Marinos Yannikos' recent crash report turns
out to be due to applying pg_ascii2wchar_with_len to a TEXT object that
is smack up against the end of memory.  This is the second just-barely-
reproducible bug report I have seen that traces to some bit of code
fetching one more byte than it is allowed to.  Let's be more careful
out there, boys and girls.
While at it, I changed the code to not risk a similar crash when there
is a truncated multibyte character at the end of an input string.  The
output in this case might not be the most reasonable output possible;
if anyone wants to improve it further, step right up...
2001-03-08 00:24:34 +00:00
Tom Lane b109b03fea Repair a number of places that didn't bother to check whether PageAddItem
succeeds or not.  Revise rtree page split algorithm to take care about
making a feasible split --- ie, will the incoming tuple actually fit?
Failure to make a feasible split, combined with failure to notice the
failure, account for Jim Stone's recent bug report.  I suspect that
hash and gist indices may have the same type of bug, but at least now
we'll get error messages rather than silent failures if so.  Also clean
up rtree code to use Datum rather than char* where appropriate.
2001-03-07 21:20:26 +00:00
Bruce Momjian 296c806dd5 > Applied. Thanks.
One more :)) It's for improper function argumets for
PLTCL_UNKNOWN_SUPPORT code

I'm not an autoconf expert, but is it possible to enable unknown
support in pltcl with configure option ?
This support is really handy for real life usage of pl/tcl.

seva@sevasoft.kiev.ua
2001-03-07 16:18:08 +00:00
Bruce Momjian 3dc1b2b71d pltcl_loadmod has problems with big (>4k) modules because of missing incr
in splitting code:

seva@sevasoft.kiev.ua
2001-03-07 16:09:09 +00:00
Tom Lane 5e00557fa2 Believe $POSTGRES_LIB and $POSTGRES_INCLUDE only if they name actual
directories, per suggestion from Robert Creager.
2001-03-06 22:07:09 +00:00
Peter Eisentraut d5e2e7dcf8 Help message s/dump/restore/ (must have been copy&pasted from pg_dump). 2001-03-06 19:58:27 +00:00
Peter Mount b562c62b5d Tue Mar 06 12:05:00 GMT 2001 peter@retep.org.uk
- Removed org.postgresql.xa.Test from the JDBC EE driver as it's an old
          test class and prevented it from compiling.
2001-03-06 12:04:46 +00:00
Philip Warner ce495f8d77 - Dump relevant parts of sequences only when doing schemaOnly & dataOnly
- Prevent double-dumping of sequences when dataOnly.
2001-03-06 04:53:28 +00:00
Philip Warner aa28eebf4c - Only disable triggers in DataOnly (or implied data-only) restores.
- Change -U option to -L to allow -U to specify username in future. (pg_restore)
2001-03-06 04:08:04 +00:00
Bruce Momjian 83d0e37947 Update email addresses. 2001-03-05 18:09:55 +00:00
Bruce Momjian ec30cfd799 Here is the chinese_big5 patch for PgAccess. I've tested under Chinese
Windows 2000 without any problem.

Have fun.

LM.Liu
2001-03-05 17:20:37 +00:00
Peter Mount c18bb990d3 Ok, I've split todays commit into three, the first two already done had some
bits in JDBC & the first set of tools into contrib.

This is the third, and deals with enabling JDBC to be compiled with the main
source.

What it does is add a new option to configure: --with-java

This option tells configure to look for ant (our build tool of choice) and
if found, it then compiles both the JDBC driver and the new tools as part
of the normal make.

Also, when the postgresql install is done, all the .jar files are also
installed into the ${PGLIB}/java directory (thought best to keep then separate)

Now I had some conflicts when this applied so could someone please double check
that everything is ok?

Peter
2001-03-05 09:40:02 +00:00
Peter Mount 9142ca2faf Minor fixes... 2001-03-05 09:17:43 +00:00
Bruce Momjian 60cea7d71a Update mysql converter, new version released. 2001-03-04 15:43:33 +00:00
Peter Eisentraut 23e41fb7fb Add configure check for -lunix, for QNX.
Recode test for equality of source and build directory using 'test -ef',
because even using pwd you might not get equal strings.  Thanks, QNX.
2001-03-03 15:53:41 +00:00
D'Arcy J.M. Cain 7a2fdd9632 Update the version number. We may change this to 7.1 if we align it with
PostgreSQL.

Add notice that development has moved into the PostgreSQL tree.
2001-03-03 14:00:56 +00:00
D'Arcy J.M. Cain 88342ae929 Add oid to list of keys cached.
Add a test to avoid an exception in certain cases.
2001-03-03 13:58:24 +00:00
D'Arcy J.M. Cain 6b6f8327ae Incrementing version number in preparation for next release. Note that I
am talking with Thomas Lockhart about the idea of bringing the PyGreSQL
version number into alignment with PostgreSQL so this may change to 7.1
before the release.

I have added to the copyright to indicate that from now on the PostgreSQL
copyright will apply.  If someone wants to make that clearer please do.
The existing copyrights need to stay there for now but if necessary I can
ask Pascal Andre if he agrees to a different wording.

Added reference to the Python DB-API 2.0 compliant API wrapper.

Added reference to the PyGreSQL mailing list.
2001-03-03 13:54:35 +00:00
D'Arcy J.M. Cain a487e0d333 Added postgres.h header for more type checking.
Changed the way that OID is retrieved on inserts.  PQoidStatus appears
to be deprecated so I am using PQoidValue instead.
2001-03-03 13:42:37 +00:00
Peter Eisentraut f1ad18d49a Add missing include. 2001-03-01 19:03:44 +00:00
Peter Eisentraut 653cd3e38e Fix memory leak. 2001-03-01 18:52:50 +00:00
Tom Lane ea7b4f1f04 Ensure previous setting of pset.queryFout is restored after a failed
backslash-g command.
2001-03-01 18:34:29 +00:00
Peter Eisentraut 08372d4e03 Add missing semicolon required by QNX shell.
from "Tegge, Bernd" <tegge@repas-aeg.de>
2001-03-01 16:17:53 +00:00
Tatsuo Ishii fa2e3cffd3 Remove HAVE_OPTARG per discussion in hackers list. 2001-03-01 05:05:29 +00:00
Peter Eisentraut bd6f02e7e6 Do not strip whitespace within quotes. 2001-02-28 20:39:42 +00:00
Tom Lane 778a21ca94 Tweak portal (cursor) code so that it will not call the executor again
when user does another FETCH after reaching end of data, or another
FETCH backwards after reaching start.  This is needed because some plan
nodes are not very robust about being called again after they've already
returned NULL; for example, MergeJoin will crash in some states but not
others.  While the ideal approach would be for them all to handle this
correctly, it seems foolish to assume that no such bugs would creep in
again once cleaned up.  Therefore, the most robust answer is to prevent
the situation from arising at all.
2001-02-27 22:07:34 +00:00
Tom Lane f5ea88ac6e Mark new text<->date, text<->time, text<->timetz conversion functions as
noncachable, so that CURRENT_DATE and CURRENT_TIME work as functions
again, rather than being collapsed to constants immediately.  Marking the
reverse conversions noncachable might be overkill, but I'm not sure;
do these datatypes have the notion of a CURRENT value?  Better safe than
sorry, for now.
2001-02-27 20:34:10 +00:00
Tatsuo Ishii df247b821d Massive commits for SunOS4 port. 2001-02-27 08:13:31 +00:00
Tatsuo Ishii 919ace07d5 Fix vacuum analyze error.
vacuum analyze on pg_type fails if bogus entries remain in pg_operator.
Here is a sample script to reproduce the problem.

drop table t1;
create table t1(i int);
drop function foo(t1,t1);
create function foo(t1,t1) returns bool as 'select true' language 'sql';
create operator = (
	leftarg = t1,
	rightarg = t1,
	commutator = =,
	procedure = foo
	);
drop table t1;
vacuum analyze;
2001-02-27 07:07:00 +00:00
Michael Meskes 06e3d84d88 Fixed variable handling in preproc.y. 2001-02-26 14:42:54 +00:00
Tatsuo Ishii f6f8c332b1 Allow pgaccess to input Japanese. See included mail.
Subject: [HACKERS] pgaccess Japanese input capability patch
From: Tatsuo Ishii <t-ishii@sra.co.jp>
To: teo@flex.ro
Cc: pgsql-hackers@postgresql.org, pgsql-interfaces@postgresql.org
Date: Sat, 24 Feb 2001 21:41:14 +0900

Hi Teodorescu,

I have made patches which enable pgaccess to input Japanese characters
in the table editing window. As you might know, to input Japanese
characters, we first type in "hiragana" then convert it to "kanji". To
make this proccess transparent to tcl application programs, libraries
are provided with localized version of Tcl/Tk. The patches bind
certain keys to initiate a function (kanjiInput) that is responsible
for the conversion process. If the function is not available, those
keys will not be binded.

Comments?
--
Tatsuo Ishii
2001-02-26 05:15:48 +00:00
Tom Lane 9c9936587c Implement COMMIT_SIBLINGS parameter to allow pre-commit delay to occur
only if at least N other backends currently have open transactions.  This
is not a great deal of intelligence about whether a delay might be
profitable ... but it beats no intelligence at all.  Note that the default
COMMIT_DELAY is still zero --- this new code does nothing unless that
setting is changed.
Also, mark ENABLEFSYNC as a system-wide setting.  It's no longer safe to
allow that to be set per-backend, since we may be relying on some other
backend's fsync to have synced the WAL log.
2001-02-26 00:50:08 +00:00
Tom Lane 496ea7a876 At least on HPUX, select with delay.tv_sec = 0 and delay.tv_usec = 1000000
does not lead to a one-second delay, but to an immediate EINVAL failure.
This causes CHECKPOINT to crash with s_lock_stuck much too quickly :-(.
Fix by breaking down the requested wait div/mod 1e6.
2001-02-24 22:42:45 +00:00
Tom Lane f1e0044ba3 When under postmaster, bogus arguments should cause proc_exit(0) not
proc_exit(1).  Unless you think a system-wide restart is an appropriate
response to bogus PGOPTIONS, that is.
2001-02-24 02:04:51 +00:00
Tom Lane 2b0f8ae009 Fix pg_dump crashes caused by bogus use of va_start/va_end (only seen
on some platforms, which is not too surprising considering how platform
specific these macros must be).
2001-02-23 22:52:32 +00:00
Tom Lane e74ce0a566 As long as we're fixing this space calculation, let's actually do it
right.  We should MAXALIGN the individual items because we'll
allocate them individually, not as an array.
2001-02-23 20:12:37 +00:00
Bruce Momjian a37666c2ec Update comments on locks. 2001-02-23 19:24:06 +00:00
Bruce Momjian 81b48493aa Bruce Momjian <pgman@candle.pha.pa.us> writes:
> Is there one LOCKMETHODCTL for every backend?  I thought there was only
> one of them.
>>
>> You're right, that line is erroneous; it should read
>>
>> size += MAX_LOCK_METHODS * MAXALIGN(sizeof(LOCKMETHODCTL));
>>
>> Not a significant error but it should be changed for clarity ...
2001-02-23 18:28:46 +00:00
Hiroshi Inoue 94b61fbc58 Resolve a compile error. 2001-02-23 09:31:52 +00:00
Hiroshi Inoue 34822e517a Reindex of shared system indexes must be overwrite mode. 2001-02-23 09:26:14 +00:00
Tatsuo Ishii 5735c4cf3d Enhanced UTF-8/SJIS mapping generator, contributed by
Eiji Tokuya" <e-tokuya@Mail.Sankyo-Unyu.co.jp>
2001-02-23 08:44:33 +00:00
Bruce Momjian 28f82ebe9e chinese-gb -> chinese_gb. 2001-02-23 01:21:58 +00:00
Bruce Momjian 5df25b357e Rename to chinese-gb 2001-02-23 01:21:27 +00:00
Bruce Momjian a95ac415f7 More comment cleanups. 2001-02-22 23:20:06 +00:00
Bruce Momjian 82fc51e0b3 More comment improvements. 2001-02-22 23:02:33 +00:00
Bruce Momjian 4f6c49fef0 Clean up index/btree comments/macros, as approved. 2001-02-22 21:48:49 +00:00
Bruce Momjian 660ca3e01c Change /*---- commants to /* where appropriate. pgindent will tighten
up the comments later.
2001-02-22 18:39:20 +00:00
Bruce Momjian a69f81c202 Update flowchart xfig file. 2001-02-22 18:09:20 +00:00
Bruce Momjian d19eeb1b1f The attachement is the Chinese (GB) patch for PgAccess, don't know
if it's correct to post here.
It's simple to do the translation, And I've test in 7.0.2 & current CVS,
seems pretty good.
If anyone want this little thing, I'll very happy.
use it is very simple, just gunzip it and copy to
$PGDIR/share/pgaccess/lib/languages/ for current CVS version,
and $PGDIR/pgaccess/lib/languages/ for 7.0*
BTW: I havn't got the tools to translate it to BIG5 encoding, is there
anybody to to it?

He Weiping(Laser Henry)
2001-02-22 15:33:14 +00:00
Hiroshi Inoue 50e3c60b95 Avoid 'FATAL: out of free buffers: time to abort !" error
during WAL recovery.  Recovery failure is always serious.
2001-02-22 08:59:40 +00:00
Tom Lane b200d0993d Adjust expected error message due to change of keyword case-folding. 2001-02-22 05:32:56 +00:00
Tatsuo Ishii a0fa71837a Add _REGEX_UTILS_H to avoid duplication. 2001-02-22 04:35:00 +00:00
Hiroshi Inoue 3df0fce801 Fix the bug report [ODBC] select from a table having more than 32 fields:
reported by Matteo Cavalleri.
Great thanks to Tom for his accurate analysis.
2001-02-22 03:39:30 +00:00
Tom Lane 4dba6814a3 Correct bogus output formatting of timeofday() function. A number of
microseconds < 100000 should be displayed as, eg, 13.000126, not 13.126.
2001-02-21 22:03:00 +00:00
Bruce Momjian 15903a1ed4 Comment improvements. 2001-02-21 19:07:04 +00:00
Tom Lane be92ad49e0 Change case-folding of keywords to conform to SQL99 and fix misbehavior
in Turkish locale.  Keywords are now checked under pure ASCII case-folding
rules ('A'-'Z'->'a'-'z' and nothing else).  However, once a word is
determined not to be a keyword, it will be case-folded under the current
locale, same as before.  See pghackers discussion 20-Feb-01.
2001-02-21 18:53:47 +00:00
Tatsuo Ishii fa877ed8ee Safe guard in case of imporper data is provided to elog()
in multi-byte build.
2001-02-21 06:05:23 +00:00
Tatsuo Ishii 62e48272c2 new regression data for 7.1 2001-02-21 06:03:25 +00:00
Tatsuo Ishii ad7424e391 change destroydb -> dropdb 2001-02-21 06:02:04 +00:00
Tom Lane 5ba0f855d1 Clean out any old versions of no-longer-installed header files that may
be lurking in the install target directory.  But don't zap up-to-date
headers (so install-all-headers before regular install will work).
Per suggestion from Larry Rosenman.
2001-02-20 20:37:13 +00:00
Tom Lane 17137d6c5b Remove unportable #warning directive. 2001-02-20 19:39:24 +00:00
Peter Eisentraut cb6edf9d56 Make sure -L and -I's for our source tree are always before system include
or library directories on the command line.
2001-02-20 19:20:30 +00:00
Tom Lane d1864e388a Select optimization by default for HP's C compiler. 2001-02-20 19:04:04 +00:00
Tom Lane d18c1d1f51 Truncate incoming username and database name to NAMEDATALEN-1 characters
so that we don't reject overlength names unnecessarily.
2001-02-20 01:34:40 +00:00
Tom Lane f35252de28 Fix pg_passwd's failure to cope with usernames > 8 chars. 2001-02-20 01:16:49 +00:00
Tom Lane a24b04de88 Remove inclusion of <varargs.h> on SunOS; this does not work since we
use the ANSI varargs style (<stdarg.h>) not the old style.  Tatsuo had
reported this change was necessary back in the 7.0 beta cycle (4/13/00)
but for some reason, making the edit never got done.
2001-02-20 00:28:07 +00:00
Tom Lane 414f94f262 Change plpgsql's GET DIAGNOSTICS statement to use SQL99-compatible
syntax.  Fix the RESULT_OID case, which never worked.  Add documentation.
2001-02-19 19:49:53 +00:00
Michael Meskes 826dc14d8f Synced gram.y and preproc.y. 2001-02-19 07:30:20 +00:00
Bruce Momjian da84545d61 Add copyright mentions, per Tom Lane. 2001-02-18 18:34:02 +00:00
Peter Eisentraut 215b90d3d7 Allow extract() to accept the same field selectors as date_part(), not just
the ones specified by SQL.
2001-02-18 18:06:10 +00:00
Tom Lane c3b00e7e29 Add --template option to createdb script to allow access to WITH TEMPLATE
option of CREATE DATABASE.  In pg_regress, create regression database
from template0 to ensure that any installation-local cruft in template1
will not mess up the tests.
2001-02-18 17:53:55 +00:00
Tom Lane 57e0847180 Change default commit_delay to zero, update documentation. 2001-02-18 04:50:43 +00:00
Tom Lane 33cc5d8a4d Change s_lock to not use any zero-delay select() calls; these are just a
waste of cycles on single-CPU machines, and of dubious utility on multi-CPU
machines too.
Tweak s_lock_stuck so that caller can specify timeout interval, and
increase interval before declaring stuck spinlock for buffer locks and XLOG
locks.
On systems that have fdatasync(), use that rather than fsync() to sync WAL
log writes.  Ensure that WAL file is entirely allocated during XLogFileInit.
2001-02-18 04:39:42 +00:00
Tom Lane 58c4ab9d62 Remove bogus set_ps_display call --- changing displayed status here is
either wrong or unnecessary in most cases, and on systems where setting
status takes a kernel call, the overhead of setting status three times
per command rather than two is annoying.
2001-02-18 04:28:31 +00:00
Tatsuo Ishii 2bc2738fc4 Fix a bug in psql. unescape() does not work for multi-byte encodings. 2001-02-17 10:03:33 +00:00
Tom Lane 81357b3c02 Seems a bad idea to assume that select(2) doesn't touch the input masks
if it returns EINTR.
2001-02-17 03:37:22 +00:00
Tom Lane b634118af9 Add current seek position to FDDEBUG output for FileRead,
FileWrite, FileSeek.
2001-02-17 01:00:04 +00:00
Tom Lane 6249971b41 Just noticed that use of 'volatile' in HPPA S_UNLOCK() was causing gcc
to generate unnecessarily stupid code.  Tweak macro to describe a series
of store-constant ops, not store/load/store/load/store/load/store.
2001-02-16 23:50:40 +00:00
Tom Lane 1ad93b7e45 Defend against starting a non-MULTIBYTE-enabled backend in a database
with encoding other than SQL_ASCII.  Per recent discussion in pghackers.
2001-02-16 18:50:40 +00:00
Peter Mount cdbd27cb23 Some more updates...
Fri Feb 17 15:11:00 GMT 2001 peter@retep.org.uk
        - Reduced the object overhead in PreparedStatement by reusing the same
          StringBuffer object throughout. Similarly SimpleDateStamp's are alse
          reused in a thread save manner.
        - Implemented in PreparedStatement: setNull(), setDate/Time/Timestamp
          using Calendar, setBlob(), setCharacterStream()
        - Clob's are now implemented in ResultSet & PreparedStatement!
        - Implemented a lot of DatabaseMetaData & ResultSetMetaData methods.
          We have about 18 unimplemented methods left in JDBC2 at the current
          time.
2001-02-16 16:45:01 +00:00
Tom Lane eb90c16dd7 ichar() has been renamed to chr(), so fix translation table. 2001-02-16 03:49:40 +00:00
Tom Lane a2dafc6416 Fix bugs in pltcl's new return_null command: it was liable to go belly up
if the return datatype's input converter was at all strict, because the
converter would get called on junk data when returning NULL.  Also
ensure that it gives an error rather than coredumping if someone tries
to use it in a trigger function.
2001-02-16 03:26:40 +00:00
Tom Lane 60d1d671a8 Fix erroneous sort request in pltcl selftest. 2001-02-16 03:22:41 +00:00
Tom Lane 13cc7eb3e2 Clean up two rather nasty bugs in operator selection code.
1. If there is exactly one pg_operator entry of the right name and oprkind,
oper() and related routines would return that entry whether its input type
had anything to do with the request or not.  This is just premature
optimization: we shouldn't return the single candidate until after we verify
that it really is a valid candidate, ie, is at least coercion-compatible
with the given types.

2. oper() and related routines only promise a coercion-compatible result.
Unfortunately, there were quite a few callers that assumed the returned
operator is binary-compatible with the given datatype; they would proceed
to call it without making any datatype coercions.  These callers include
sorting, grouping, aggregation, and VACUUM ANALYZE.  In general I think
it is appropriate for these callers to require an exact or binary-compatible
match, so I've added a new routine compatible_oper() that only succeeds if
it can find an operator that doesn't require any run-time conversions.
Callers now call oper() or compatible_oper() depending on whether they are
prepared to deal with type conversion or not.

The upshot of these bugs is revealed by the following silliness in PL/Tcl's
selftest: it creates an operator @< on int4, and then tries to use it to
sort a char(N) column.  The system would let it do that :-( (and evidently
has done so since 6.3 :-( :-().  The result in this case was just a silly
sort order, but the reverse combination would've provoked coredump from
trying to dereference integers.  With this fix you get more reasonable
behavior:
pltcl_test=# select * from T_pkey1 order by key1, key2 using @<;
ERROR:  Unable to identify an operator '@<' for types 'bpchar' and 'bpchar'
        You will have to retype this query using an explicit cast
2001-02-16 03:16:58 +00:00
Hiroshi Inoue b24b2a5be0 Add casting for numeric/float4/float8 type value
automatically to compensate the lack of automatic
conversion functionality of PostgreSQL server.
For example if there's a numeric type binding
   1.2567 --> 1.2567::numeric.
I hope this change would enable the use of numeric
type in MS-Access etc.

Thanks Hiroki Kataoka for his checking my code.
2001-02-16 03:10:09 +00:00
Tom Lane b29f68f611 Take OUTER JOIN semantics into account when estimating the size of join
relations.  It's not very bright, but at least it now knows that
A LEFT JOIN B must produce at least as many rows as are in A ...
2001-02-16 00:03:08 +00:00
Tom Lane 6da3b76a94 Add some notes about memory management of RI plans. 2001-02-15 21:57:43 +00:00
Tom Lane db3ac67d8f Update comments about memory management. 2001-02-15 21:47:08 +00:00
Tom Lane 5c2abb960d Update notes about memory context scheme. 2001-02-15 21:38:26 +00:00
Tom Lane 059e361481 Although we can't support out-of-line TOAST storage in indexes (yet),
compressed storage works perfectly well.  Might as well have a coherent
strategy for applying it, rather than the haphazard store-what-you-get
approach that was in the code before.  The strategy I've set up here is
to attempt compression of any compressible index value exceeding
BLCKSZ/16, or about 500 bytes by default.
2001-02-15 20:57:01 +00:00
Tom Lane 39b9c9f221 Reduce default selectivity estimates for geometric operators; it seems
the old ones were not small enough to ensure r-tree and gist indexes would
get picked when available.  These numbers are totally bogus anyway, but
in the absence of any real estimation technique, we'd like to select
indexes when available ...
2001-02-15 17:55:17 +00:00
Tom Lane 83b4ab53ad Update a couple of obsolete comments. 2001-02-15 17:46:40 +00:00
Hiroshi Inoue 462c13215a 1) Change transaction boundary in autocommit off mode
per recent discussion in pgsql-odbc. Now SELECT is
   a boundary but VACUUM isn't.
2) Put back the error handling behavior. When elog(ERROR)
   was detected the driver automatically issue "ABORT"
   if a transaction is in progress.
3) Driver version is 7.01.0003(Dave already set it but
   it was put back).
2001-02-15 05:32:00 +00:00
Tatsuo Ishii 5c90733558 Unicode <-> SJIS new mapping tables (based on CP932.TXT) contributed by
Eiji Tokuya" <e-tokuya@Mail.Sankyo-Unyu.co.jp>
2001-02-15 01:56:29 +00:00
Tom Lane de434c2d5f Arrange for ORDER BY an expression on a UNION/INTERSECT/EXCEPT result,
such as
    SELECT f1 FROM foo UNION SELECT ... ORDER BY upper(f1)
to draw
'ORDER BY on a UNION/INTERSECT/EXCEPT result must be on one of the result columns'
rather than the uninformative 'f1 not found' we were producing before.
Eventually this should actually work, but that looks much too hard to try
to implement in late beta...
2001-02-15 01:10:28 +00:00
Tom Lane c7d2ce7bc6 Repair problems with duplicate index names generated when CREATE TABLE
specifies redundant UNIQUE conditions.
2001-02-14 23:32:38 +00:00
Tom Lane 4a66f9dd54 Change scoping of table and join refnames to conform to SQL92: a JOIN
clause with an alias is a <subquery> and therefore hides table references
appearing within it, according to the spec.  This is the same as the
preliminary patch I posted to pgsql-patches yesterday, plus some really
grotty code in ruleutils.c to reverse-list a query tree with the correct
alias name depending on context.  I'd rather not have done that, but unless
we want to force another initdb for 7.1, there's no other way for now.
2001-02-14 21:35:07 +00:00
Peter Mount bb7b71826d Web Feb 14 17:29:00 GMT 2001 peter@retep.org.uk
- Fixed bug in LargeObject & BlobOutputStream where the stream's output
          was not flushed when either the stream or the blob were closed.
        - Fixed PreparedStatement.setBinaryStream() where it ignored the length
2001-02-14 17:45:17 +00:00
Bruce Momjian cf21f7a187 Add 7.X to dialog box. 2001-02-14 06:10:31 +00:00
Bruce Momjian 594e97b72f Back out all ODBC formatting changes, and back out removal of <6.4
protocol. I have left in Tom's SOCK_get_next_byte() fix, and the new
win32.mak file addition.  I have also left in the 'X' connection close
fix.
2001-02-14 05:45:46 +00:00
Vadim B. Mikheev 7e04843ba7 Comments about GetFreeXLBuffer().
GetFreeXLBuffer(): use Insert->LgwrResult instead of private LgwrResult
copy if it's more fresh (attempt to avoid acquiring info_lck/lgwr_lck).
2001-02-13 20:40:25 +00:00
Peter Mount 3d21bf82c3 Some more including the patch to DatabaseMetaData backed out by Bruce.
Tue Feb 13 16:33:00 GMT 2001 peter@retep.org.uk
        - More TestCases implemented. Refined the test suite api's.
        - Removed need for SimpleDateFormat in ResultSet.getDate() improving
          performance.
        - Rewrote ResultSet.getTime() so that it uses JDK api's better.

Tue Feb 13 10:25:00 GMT 2001 peter@retep.org.uk
        - Added MiscTest to hold reported problems from users.
        - Fixed PGMoney.
        - JBuilder4/JDBCExplorer now works with Money fields. Patched Field &
          ResultSet (lots of methods) for this one. Also changed cash/money to
          return type DOUBLE not DECIMAL. This broke JBuilder as zero scale
          BigDecimal's can't have decimal places!
        - When a Statement is reused, the previous ResultSet is now closed.
        - Removed deprecated call in ResultSet.getTime()

Thu Feb 08 18:53:00 GMT 2001 peter@retep.org.uk
        - Changed a couple of settings in DatabaseMetaData where 7.1 now
          supports those features
        - Implemented the DatabaseMetaData TestCase.

Wed Feb 07 18:06:00 GMT 2001 peter@retep.org.uk
        - Added comment to Connection.isClosed() explaining why we deviate from
          the JDBC2 specification.
        - Fixed bug where the Isolation Level is lost while in autocommit mode.
        - Fixed bug where several calls to getTransactionIsolationLevel()
          returned the first call's result.
2001-02-13 16:39:06 +00:00
Bruce Momjian 2410963e8c Remove postgresql jdbc files, per Peter. 2001-02-13 16:18:15 +00:00
Bruce Momjian 934c5b841e Remove postgresql jdbc files, per Peter Mount. 2001-02-13 16:14:40 +00:00
Bruce Momjian d766693b0a Back out *inv* changes for this file. Peter want to handle it. 2001-02-13 15:43:08 +00:00
Bruce Momjian b9b045de4e Remove unused files, per Andreas 2001-02-13 14:33:51 +00:00
Bruce Momjian 7582bd91cb Please apply the following patch to fix AIX and IRIX timestamp behavior
as previously discussed.

It makes AIX and IRIX not use DST for dates before 1970.

The following expected files need to be removed from the regression tests,
they contain wrong results and are not needed any more.

src/test/regress/expected/horology-1947-PDT.out
src/test/regress/expected/tinterval-1947-PDT.out
src/test/regress/expected/abstime-1947-PDT.out

Zeugswetter Andreas
2001-02-13 14:32:52 +00:00
Vadim B. Mikheev 35273825dc Removed abort() in XLogFileOpen. 2001-02-13 08:44:09 +00:00
Philip Warner 0e39c8ac78 Added some comments to setval, setval_is_called and do_setval 2001-02-13 01:57:12 +00:00
Philip Warner 4a19bd8741 - Fix help output: replace 'f' with 't' and change desc
- Add extra arg to formatStringLiteral to specify how to handle LF & TAB.
  I opted for encoding them except in procedure bodies & comments
- Fixed bug in tar file input when restoring blobs
2001-02-13 01:31:54 +00:00
Tom Lane f7a839bc2b Clean up portability problems in regexp package: change all routine
definitions from K&R to ANSI C style, and fix broken assumption that
int and long are the same datatype.  This repairs problems observed
on Alpha with regexps having between 32 and 63 states.
2001-02-13 00:02:36 +00:00
Bruce Momjian f4e4c7291e Attached is a makefile for the ODBC driver for use under win32. It has been
tested only with MS VC++ 6.0SP4 using nmake.

Dave Page
2001-02-12 22:50:06 +00:00
Tom Lane cf16733983 Hmm, this isn't used either. 2001-02-12 22:17:29 +00:00
Tom Lane d40f4aeac8 Remove unused and largely-broken-anyway compatibility defs. 2001-02-12 22:13:06 +00:00
Bruce Momjian cbb4ab99a8 New MS resource file, pgindented. 2001-02-12 21:45:24 +00:00
Tom Lane dd580f188e Suppress compiler warning on Alpha. 2001-02-12 21:03:03 +00:00
Tom Lane aa88e59ade Rearrange order of operations in heap_create_with_catalog so that if
two transactions create the same table name concurrently, the one that
fails will complain about unique index pg_class_relname_index, rather than
about pg_type_typname_index which'll confuse most people.  Free side
benefit: pg_class.reltype is correctly linked to the pg_type entry now.
It's been zero in all but the preloaded pg_class entries since who knows
when.
2001-02-12 20:07:21 +00:00
Bruce Momjian d8c4cb740c Cleanup 2001-02-12 18:46:40 +00:00
Bruce Momjian 281b7d84fc Add // -> /* */ mapping to pgindent. 2001-02-12 18:30:53 +00:00
Bruce Momjian 97aa5fcd5e Update ODBC resource MS-generated file. 2001-02-12 17:54:02 +00:00
Bruce Momjian 20bea98169 Change more // comments. 2001-02-12 14:17:06 +00:00
Bruce Momjian 09029d66c4 Remove // and make /* */ 2001-02-12 13:56:37 +00:00
Bruce Momjian 36e3c641f6 Replace // comments from file for MS products. 2001-02-12 12:59:22 +00:00
Bruce Momjian 00f4fd2689 poit -> point. 2001-02-12 12:52:02 +00:00
Tom Lane d9eb5b75e3 SOCK_get_next_byte should not return garbage after error/EOF. Return
zero bytes instead.
2001-02-11 23:46:40 +00:00
Bruce Momjian 07faa2fdce Remove unneeded shutdown() call, per Tom Lane. 2001-02-11 23:34:08 +00:00
Tom Lane 68590993ea Improve error message when startup or shutdown proc fails. 2001-02-11 23:12:28 +00:00
Bruce Momjian 72f3b9fce9 More cleanups. 2001-02-11 13:58:12 +00:00
Bruce Momjian 9c891acd52 Include file alignment fixes. 2001-02-11 13:53:42 +00:00
Bruce Momjian cc818a83c0 Move X packet before shutdown(). 2001-02-11 13:15:28 +00:00
Bruce Momjian 3152ef63a6 Source alignment cleanups. 2001-02-11 05:58:41 +00:00
Bruce Momjian a952c79b23 More updates. 2001-02-11 05:15:25 +00:00
Bruce Momjian 26dc50141b More cleanup. 2001-02-11 05:13:52 +00:00
Bruce Momjian 82b1fd1e0d More cleanup. 2001-02-11 05:04:47 +00:00
Bruce Momjian 9d244ddb26 Cleanup of source. 2001-02-11 04:56:58 +00:00
Bruce Momjian e937156690 The attached patch does the following:
1) Tidies up the Datasource Dialogue now the version options are gone.
2) Tidies a comment in info.c.
3) Increments all version numbers to 07.01.0003 to take account of recent
revisions.

Regards, Dave Page
2001-02-11 02:01:22 +00:00
Tatsuo Ishii 8f17e53f0e Move pg_encoding_mblen() from common.c to wchar.c. 2001-02-11 01:59:22 +00:00
Tatsuo Ishii f54c02d2eb conv.c did not compile anymore. Fix wrong header file inclusion. 2001-02-11 01:56:58 +00:00
Tatsuo Ishii 91382c2882 Clean up mutibyte supoorting source files.
Now only wchar.c is shared by fronetnd/backend.
2001-02-11 01:52:11 +00:00
Bruce Momjian 2cb7c5b24c Disable X connection close in ODBC until solution is found. 2001-02-10 23:35:04 +00:00
Bruce Momjian 4ea081e94f Format to match standard conventions 2001-02-10 22:53:40 +00:00
Bruce Momjian b54073ea4c Convert to standard 4-space tabs. 2001-02-10 22:42:01 +00:00
Peter Eisentraut 2660803697 Only look for bison as YACC; other yaccs need to be selected explicitly.
When no suitable YACC is configured, supply useful informational messages
to users.  (Same way flex has been handled for a while.)
2001-02-10 22:31:42 +00:00
Bruce Momjian 20edc4afd2 move comment 2001-02-10 18:46:34 +00:00
Bruce Momjian f0b0337623 Add comment about linker/compiler on bsd. 2001-02-10 17:36:57 +00:00
Bruce Momjian 00ab7b5896 Fix -Bsymbolic for FreeBSD and OpenBSD. NetBSD already had all these fixes. 2001-02-10 17:17:39 +00:00
Peter Eisentraut 8213e63d8c Repair BSD/OS shared library fixes. 2001-02-10 16:51:40 +00:00
Bruce Momjian db98204a8a Revert shlib changes. 2001-02-10 16:26:38 +00:00
Bruce Momjian fd866b4580 Remove protcol option buttons. 2001-02-10 16:25:10 +00:00
Bruce Momjian a4b348f48f ODBC BSD/OS fix. 2001-02-10 15:59:16 +00:00
Bruce Momjian 8814d1b2e7 Allow -Bsymbolic on BSDI for ODBC. 2001-02-10 11:31:35 +00:00
Peter Eisentraut 3f4d68cc7b Fix on Linux 2001-02-10 10:27:28 +00:00
Bruce Momjian 5ad627479c More ODBC formatting cleanup. 2001-02-10 07:11:28 +00:00
Bruce Momjian 755a87332a Run pgindent over ODBC source. We couldn't do this years ago because we
weren't the master source.  We are now, and it really needs it.
2001-02-10 07:01:19 +00:00
Bruce Momjian 505a828a66 Remove protocol-dependent code. This should have been on previous commit. 2001-02-10 06:58:40 +00:00
Bruce Momjian 895a57bdd2 Cleanup 2001-02-10 06:57:53 +00:00
Bruce Momjian d2331b4ebd More cleanup, again not sure it works. 2001-02-10 06:12:15 +00:00
Bruce Momjian 6996a77246 Clean up bad variable used in script. Still not sure it works under Linux. 2001-02-10 05:55:17 +00:00
Bruce Momjian fd40942fd8 Properly exit ODBC with 'X', allow linking on BSD/OS. 2001-02-10 05:50:29 +00:00
Tom Lane af0a15287d Fix byte-vs-word-width oversight in m68k TAS() code.
Man, this brings back some old memories ...
2001-02-10 04:07:25 +00:00
Tom Lane 5b6acff6e0 Ignore leading whitespace when trying to determine statement type,
so that ODBC driver doesn't go belly up by failing to recognize a
SELECT as such.
2001-02-10 03:12:16 +00:00
Tom Lane d08741eab5 Restructure the key include files per recent pghackers discussion: there
are now separate files "postgres.h" and "postgres_fe.h", which are meant
to be the primary include files for backend .c files and frontend .c files
respectively.  By default, only include files meant for frontend use are
installed into the installation include directory.  There is a new make
target 'make install-all-headers' that adds the whole content of the
src/include tree to the installed fileset, for use by people who want to
develop server-side code without keeping the complete source tree on hand.
Cleaned up a whole lot of crufty and inconsistent header inclusions.
2001-02-10 02:31:31 +00:00
Bruce Momjian 5c8055e41f Remove last code that assumed xinv/xinx are large object files. 2001-02-09 22:23:47 +00:00
Tom Lane b1e4cfa5f6 This hasn't been used for anything for a long time... 2001-02-09 19:26:45 +00:00
Tom Lane 7fdca53711 When updating a tuple containing compressed-in-line fields, do not
decompress the existing fields unnecessarily.
2001-02-09 17:30:03 +00:00
Bruce Momjian b483ad84f8 Add -g as synonmym for --globals-only in pg_dumpall. Add info about
-c,--clean option to manual page.
2001-02-09 17:16:57 +00:00
Bruce Momjian cf516c3bb1 I have deleted the include of termios.h in include/port/qnx4.h.
Then I recompiled pgsql and I have compiled a program with ecpg.

I have removed the termios.h, and the ECHO hack.

Thanks
Maurizio
2001-02-09 15:13:49 +00:00
Hiroshi Inoue 5a03b0c393 Change SELECT to not trigger "BEGIN" in not autocommit mode. 2001-02-09 06:03:14 +00:00
Tom Lane dfbd5d6532 plpgsql's private copy of xlateSqlType was out of sync. Again. This
is clearly not maintainable, so dike it out in favor of calling the real
version in the backend's gram.y.
2001-02-09 03:26:28 +00:00
Tom Lane b8cbb8c7e3 Remove no-longer-needed mklang script; now superseded by createlang. 2001-02-09 01:05:42 +00:00
Tom Lane 8a2cdd77ad EXECUTE of a SELECT ... INTO now draws a 'not implemented' error,
rather than executing the INTO clause with non-plpgsql semantics
as it was doing for the last few weeks/months.  This keeps our options
open for making it do the right plpgsql-ish thing in future without
creating a backwards compatibility problem.  There is no loss of
functionality since people can get the same behavior with CREATE TABLE AS.
2001-02-09 00:14:26 +00:00
Peter Eisentraut 088c0b9546 Make -w the default for shut down, add -W option to specify no wait.
Add -l option to name log file.  Set umask to 077.
Proper file descriptor redirection to allow postmaster to detach from
shell's process group.
Add -s option to turn off informational messages.
2001-02-08 19:39:24 +00:00
Hiroshi Inoue 27ed8ac260 Fix a misuse of 'char *' declaration. 2001-02-08 01:54:29 +00:00
Tom Lane 897a895d32 When launching a child backend, take care to close file descriptors for
any other client connections that may exist (which would only happen if
another client is currently in the authentication cycle).  This avoids
wastage of open descriptors in a child.  It might also explain peculiar
behaviors like not closing connections when expected, since the kernel
will probably not signal EOF as long as some other backend is randomly
holding open a reference to the connection, even if the client went away
long since ...
2001-02-08 00:35:10 +00:00
Vadim B. Mikheev 608ddb7503 FixBTree flag still exists and may be used to turn
runtime recovery OFF.
2001-02-07 23:36:22 +00:00
Vadim B. Mikheev c19dadbf08 Runtime btree recovery is now ON by default. 2001-02-07 23:35:33 +00:00
Vadim B. Mikheev 66decbfb08 Macro for btree runtime fix. 2001-02-07 23:34:18 +00:00
Tom Lane 6b52dc7491 Repair postmaster memory leakage during password authentication. 2001-02-07 23:31:38 +00:00
Tom Lane 6aa0821bcd Redo pgaccess' queries about views so that they will work in both 7.1
and prior releases --- rely on pg_views view instead of direct access
to pg_class and pg_rewrite.
2001-02-07 21:30:12 +00:00
Tom Lane 62a029b5c6 Not sure why this work script was in the repository ... but it doesn't
belong ...
2001-02-07 21:25:55 +00:00
Tom Lane a7e24eda58 Use explicit path to libpgtcl.so, instead of relying on LD_LIBRARY_PATH
or local equivalent.  Also, honor --with-pgport configure option for
default port number, and allow PGPORT environment variable to override
this.
2001-02-07 20:30:20 +00:00
Tom Lane a8b9cbfa0e Make DEF_PGPORT available to Makefiles, so it can be substituted into
scripts like pgaccess.
2001-02-07 20:13:27 +00:00
Tom Lane 5add3e8e51 Actually, it looks like DEF_PGPORT belongs over in config.h.win32 for
the Windows build...
2001-02-07 20:00:08 +00:00
Tom Lane b6ffc70dcc Remove broken (and unnecessary) definition of DEF_PGPORT. 2001-02-07 19:30:22 +00:00
Peter Eisentraut d79ab787b8 Only pass the -L* portions of LDFLAGS to the Python build environment.
Other flags can have unpredictable effects when Python uses different
commands to build than we do.
2001-02-07 18:22:10 +00:00
Tom Lane 080af3db80 Need to specify DYNAMIC_PATH flag to shl_load, else HPUX's dld will not
honor library search path that we so carefully installed into the
executable ...
2001-02-07 17:59:58 +00:00
Peter Mount ca5d71cd07 Some updates prior to retrieving a fresh cvs copy:
Tue Feb 06 19:00:00 GMT 2001 peter@retep.org.uk
        - Completed first two TestCase's for the test suite. JUnit is now
          recognised by ant.
2001-02-07 09:13:20 +00:00
Peter Eisentraut c86c379787 If the first argument is --version or --help, skip the root check. 2001-02-06 17:00:01 +00:00
Vadim B. Mikheev 21d08bc1f6 PageAddItem in overwrite mode: must *NOT* check itemid' flag if
OffsetNumber == MaxOffsetNumber + 1 - there may be garbage there!
2001-02-06 06:24:00 +00:00
Hiroshi Inoue 5d08521fcd Improved version handling introduced by Dave Page.
The driver version is 07.01.0002 now.
1) initialized pg_version by DSN's protocol info
   so that we could always use pg_version info
   once a connection is established (pg_version()
   didn't exist before 6.4). PROTOCOL_XX() macros
   are removed(except from connection.[ch]).
2) provided a few macros to encapsulate connection's
   version info and replaced existent comparison
   stuff by those macros.
3) change SQLTables() so that 7.1 servers could show
   views.


In addtion, the following patch from Dave Page is applied.

  This patch fixes a bug in SQLGetInfo for SQL_DBMS_VER which corrupted the
  driver version string. The driver version number has also been incremented
  to 07.01.0002.

  Regards, Dave. <<odbc.diff>>
2001-02-06 02:21:12 +00:00
Tom Lane 300e28888f Now that I look at it, PQoidValue() ain't quite right either. 2001-02-06 02:02:27 +00:00
Tom Lane 8558054aa4 Repair PQoidStatus() bug reported by darcy@druid.net. 2001-02-06 02:00:09 +00:00
Tom Lane 85c17dbff8 Out-of-bounds memory allocation request sizes should be treated as just
elog(ERROR) not an Assert trap, since we've downgraded out-of-memory to
elog(ERROR) not a fatal error.  Also, change the hard boundary from 256Mb
to 1Gb, just so that anyone who's actually got that much memory to spare
can play with TOAST objects approaching a gigabyte.
2001-02-06 01:53:53 +00:00
Peter Eisentraut 0d3c767bb5 Dump/display 'timestamp' as 'timestamp with time zone', to make room for a
future 'timestamp without time zone', which SQL claims is equivalent to
plain 'timestamp'.
2001-02-05 17:35:04 +00:00
Peter Eisentraut b1f528f86c Check for -lresolv. 2001-02-04 14:09:33 +00:00
Peter Eisentraut 8791d12d9e Pass LDFLAGS along with LIBS to the Python build stuff, especially to pick
up -L options.
2001-02-04 13:21:46 +00:00
Tom Lane 503f042cd7 Fix inappropriate attempt to push down qual clauses into a view that
has UNION/INTERSECT/EXCEPT operations.  Per bug report from Ferrier.
2001-02-03 21:17:52 +00:00
Peter Eisentraut 67849c84d6 Use elog() instead of exit() for fatal scanner errors. 2001-02-03 20:13:05 +00:00
Vadim B. Mikheev b18c09ee3a Runtime tree recovery is implemented, just testing is left -:) 2001-02-02 19:49:15 +00:00
Bruce Momjian b60c57da2d Apply patches for QNX from Maurizio 2001-02-02 18:21:59 +00:00
Michael Meskes c9ecf3d1f1 Applied two bug fixes by Christof Petig. 2001-01-31 16:12:34 +00:00
Peter Mount 234599e943 Wed Jan 31 08:46:00 GMT 2001 peter@retep.org.uk
- Some minor additions to Statement to make our own extensions more
          portable.
        - Statement.close() will now call ResultSet.close() rather than just
          dissasociating with it.
2001-01-31 09:23:45 +00:00
Peter Mount 8439a83d84 Tue Jan 30 22:24:00 GMT 2001 peter@retep.org.uk
- Fixed bug where Statement.setMaxRows() was a global setting. Now
          limited to just itself.
        - Changed LargeObject.read(byte[],int,int) to return the actual number
          of bytes read (used to be void).
        - LargeObject now supports InputStream's!
        - PreparedStatement.setBinaryStream() now works!
        - ResultSet.getBinaryStream() now returns an InputStream that doesn't
          copy the blob into memory first!
        - Connection.isClosed() now tests to see if the connection is still alive
          rather than if it thinks it's alive.
2001-01-31 08:26:02 +00:00
Vadim B. Mikheev dca0762efc Couple additional functions to fix tree at runtime.
Need in one more function to handle "my bits moved..."
case. FixBTree is still FALSE.
2001-01-31 01:08:36 +00:00
Vadim B. Mikheev 598a12722a Call _bt_fixroot() from _bt_insertonpg. 2001-01-29 07:28:17 +00:00
Tom Lane 0d54d6ac44 Clean up handling of tuple descriptors so that result-tuple descriptors
allocated by plan nodes are not leaked at end of query.  This doesn't
really matter for normal queries, but it sure does for queries invoked
repetitively inside SQL functions.  Clean up some other grotty code
associated with tupdescs, and fix a few other memory leaks exposed by
tests with simple SQL functions.
2001-01-29 00:39:20 +00:00
Bruce Momjian 51cd037746 The following patch is required for successful compilation on Irix.
Robert E. Bruccole
2001-01-29 00:11:41 +00:00
Philip Warner 3e896ebe4a Used LEFT OUTER JOIN for various queries 2001-01-28 03:47:49 +00:00
Philip Warner 2f9bdffc37 Applied (slightly modified) patches from Tatsuo:
Ok. I have made patches for fixing some of pg_dump problems(see
attached patches). The patches address the problem with user defined
functions, operators and aggregates.
2001-01-28 02:57:06 +00:00
Bruce Momjian d7f0b7ef6e Here is an update on the Win32 patch. Modified files are 'config.h.win32'
and two 'win32.mak'. Addresses the following:

1) Oops. Spelled fcntl.h wrong in the last one. D'uh.
2) PG_VERSION changed to be defined with " around it. psql/command.c failed
to compile without that.
3) Changed makefiles to use "/MD" and link both psql and libpq.dll against
MSVCRT.DLL instead of a static library. This takes care of the
crash-upon-free in psql.

I *think* this is what is on the "Open 7.1 Items" list as "Magnus Hagander
ODBC Issues?". It has nothing to do with ODBC, but it's the only issue I've
been involved with...

Magnus Hagander
2001-01-27 21:49:59 +00:00
Bruce Momjian 2679a38a1f Add missing pgaccess files. 2001-01-27 18:36:24 +00:00
Bruce Momjian 2a7ab4d916 Update to pgaccess 0.98.7. 2001-01-27 18:34:38 +00:00
Philip Warner 7fcd675dc3 When dropping the schema, reconnect as owner of each object. 2001-01-27 12:35:29 +00:00
Peter Eisentraut dc7a0009f0 Add permission check for CHECKPOINT. 2001-01-27 10:19:52 +00:00
Tom Lane 80caa741ab Fix failure to create sequences for more than one SERIAL column in a
table.
2001-01-27 07:23:48 +00:00
Tom Lane a6f0adbe38 Looks like I broke cases involving combinations of deferred update/delete
triggers ... oops ... but the regress tests should have covered this ...
2001-01-27 05:16:58 +00:00
Tom Lane f44639e1bf Don't crash if subquery appears multiple times in jointree. This should
not happen anyway, but let's try not to get completely confused if it does
(due to rewriter bugs or whatever).
2001-01-27 04:42:32 +00:00
Tom Lane 352871ac93 Repair bug reported by Huxton, 1/24/01. We need to include a rule's
original table ('OLD' table) in its join tree if OLD is referenced by
either the rule action, the rule qual, or the original query qual that
will be added to the rule action.  However, we only want one instance
of the original table to be included; so beware of the possibility that
the rule action already has a jointree entry for OLD.
2001-01-27 04:40:59 +00:00
Bruce Momjian d67328f72a Just a quick patch to make the geometry test on Sparc/Linux
regression tests for Pgsql 7.1beta3 pass. This is very similr to the one I
submitted back in July for Linux/Alpha. Apparently non-x86 Linux machines
like to compute nth place float point digits like Sun/Solaris does?
        Otherwise, 7.1beta3 runs without problems (i.e. all other
regression tests pass) on my Sparc 20 running Debian GNU/Linux 2.2.

Ryan Kirkpatrick
2001-01-27 04:26:37 +00:00
Tom Lane c9c8d53d80 Refuse to try to attach a condition to a NOTIFY or other utility statement,
rather than coredumping (as prior 7.1 code did) or silently dropping the
condition (as 7.0 did).  This is annoying but there doesn't seem to be
any good way to fix it, short of a major querytree restructuring.
2001-01-27 01:44:20 +00:00
Tom Lane c1a63c944d Suppress coredump when EXPLAINing query that is rewritten to include
a NOTIFY.
2001-01-27 01:41:19 +00:00
Tom Lane 1dc3051088 Re-read Unix-socket lock file every so often (every CheckPoint interval,
actually) to ensure that its file access time doesn't get old enough to
tempt a /tmp directory cleaner to remove it.  Still another reason we
should never have put the sockets in /tmp in the first place ...
2001-01-27 00:05:31 +00:00
Tom Lane b78d1bed07 Change float8-to-int8 conversion to round to nearest, rather than
truncating to integer.  Remove regress test that checks whether
4567890123456789 can be converted to float without loss; since that's
52 bits, it's on the hairy edge of failing with IEEE float8s, and indeed
rint seems to give platform-dependent results for it.
2001-01-26 22:50:26 +00:00
Bruce Momjian 5a832218fd odbc1.diff changes the text on the Protocol Radio buttons on the driver
dialogue from '6.4/6.5' to '6.5+' and removes some C++ comments from
resource.h (which VC++ insists on putting there).

odbc2.diff adds code to query the PostgreSQL version upon connection. This
is then used to determine what values to return for from SQLGetInfo for
SQL_DBMS_VER, SQL_MAX_ROW_SIZE, SQL_MAX_STATEMENT_LEN, SQL_OJ_CAPABILITIES
and SQL_OUTER_JOINS. The version string as returned by SELECT vERSION() (as
a char array) and the major.minor version number (as a flost) have been
added to the ConnectionClass structure.

Dave Page
2001-01-26 22:41:59 +00:00
Tom Lane 7edafafd73 gcc complains about improperly terminated comment. 2001-01-26 22:25:36 +00:00
Tom Lane f433d0d3cd Special case in ProcSleep() wasn't sufficiently general: must check to
see if we shouldn't block whenever we insert ourselves anywhere before
the end of the queue, not only at the front.
2001-01-26 18:23:12 +00:00
Vadim B. Mikheev c6e6d292bc First step in attempt to fix tree at runtime: create upper levels
and new root page if old root one was splitted but new root page
wasn't created.
New code is protected by FixBTree bool flag setted to FALSE, so
nothing should be affected by this untested approach.
2001-01-26 01:24:31 +00:00
Michael Meskes 19c4197bd2 Synced gram.y and preproc.y. 2001-01-25 20:35:19 +00:00
Peter Eisentraut 7e44f8f9e5 For missing owner of database, default to superuser. 2001-01-25 17:28:15 +00:00
Peter Eisentraut e01e14ed66 Avoid bogus failures due to 'ps x | grep postmaster' detecting 'grep
postmaster' process.
2001-01-25 16:32:25 +00:00
Peter Mount f118c36a78 Added an alternative constructor to PGSQLException so that debugging
some more osteric bugs is easier. If only 1 arg is supplied and it's
          of type Exception, then that Exception's stacktrace is now included.

This was done as there's been a report of an unusual bug during connection.
This will make this sort of bug hunting easier from now on.
2001-01-25 09:16:36 +00:00
Tom Lane 211f5afd40 Whoops, forgot to do ProcLockWakeup() after deadlock checker
rearranges wait queues.
2001-01-25 03:45:50 +00:00
Tom Lane a05eae029a Re-implement deadlock detection and resolution, per design notes posted
to pghackers on 18-Jan-01.
2001-01-25 03:31:16 +00:00
Bruce Momjian 40203e4f3e Further to the previous ODBC patches I posted today, I found a couple of
problems with char array sizes having set a couple of constants to 0 for
unlimited query length and row length. This additional patch cleans those
problems up by defining a new constant (STD_STATEMENT_LEN) to 65536 and
using that in place of MAX_STATEMENT_LEN.

Another constant (MAX_MESSAGE_LEN) was defined as 2*BLCKSZ, but is now
65536. This is used to define the length of the message buffer in a number
of places and as I understand it (probably not that well!) therefore also
places a limit on the query length. Fixing this properly is beyond my
capabilities but 65536 should hopefully be large enough for most people.

Apologies for being over-enthusiastic and posting 3 patches in one day
rather than 1 better tested one!

Regards,

Dave Page
2001-01-25 03:28:27 +00:00
Bruce Momjian 0e968ee705 > From: Tom Lane [mailto:tgl@sss.pgh.pa.us]
> Sent: 24 January 2001 16:51
> To: Dave Page
> Subject: Re: [PATCHES] ODBC Patch for OJs/Large Querys & Rows
>
>
> > SQL_OJ_LEFT = Left outer joins are supported.
>
> Yes.
<snip>

In addition to my earlier patch, this one adds support for SQLGetInfo
SQL_OJ_CAPABILITIES to the ODBC driver.

Dave Page
2001-01-25 03:27:47 +00:00
Bruce Momjian be1276846e I decided to give this a go after all :-) The attached patch does the
following but it does *not* check whether the user is connected to
PostgreSQL 7.0.x or 7.1 first (as would be required for some of the
features) - the driver doesn't do this at all afaik and it's beyond my
capabilities to implement such checking in code that doesn't look like it
was written by my 1 year old daughter!

1) The driver now reports no maximum query length (SQL_MAX_QUERY_SIZE).
2) The driver now reports no maximum row length (SQL_MAX_ROW_SIZE).
3) The driver now reports that Outer Joins are supported (SQL_OUTER_JOINS),
but still does not report oj capabilities (SQL_OJ_CAPABILITIES).
4) The version number has been incremented to 7.1.0000 in psqlodbc.h *and*
psqlodbc.rc


Regards,

Dave Page
2001-01-25 03:27:05 +00:00
Bruce Momjian 4e45005ffb This patch fixes an arrayindexoutofbounds exception that was just
introduced into the code.  The fix is a fix to
org.postgresql.core.ByteArrayDim1.java.

Barry Lind
2001-01-25 00:02:58 +00:00
Bruce Momjian ba6fda5191 Add ./include/config.h.win32 to RELEASE update list. 2001-01-25 00:01:17 +00:00
Bruce Momjian 26e566446f Attached is a revised patch that removes the static SimpleDateFormat
objects that Thomas pointed out might be a problem.

PPS.  I have included and updated the comments from the original patch
request to reflect the changes made in this revised patch.

> Attached is a set of patches for a couple of bugs dealing with
> timestamps in JDBC.
>
> Bug#1) Incorrect timestamp stored in DB if client timezone different
> than DB.
> The buggy implementation of setTimestamp() in PreparedStatement simply
> used the toString() method of the java.sql.Timestamp object to convert
> to a string to send to the database.  The format of this is yyyy-MM-dd
> hh:mm:ss.SSS which doesn't include any timezone information.  Therefore
> the DB assumes its timezone since none is specified.  That is OK if the
> timezone of the client and server are the same, however if they are
> different the wrong timestamp is received by the server.  For example if
> the client is running in timezone GMT and wants to send the timestamp
> for noon to a server running in PST (GMT-8 hours), then the server will
> receive 2000-01-12 12:00:00.0 and interprete it as 2000-01-12
> 12:00:00-08 which is 2000-01-12 04:00:00 in GMT.  The fix is to send a
> format to the server that includes the timezone offset.  For simplicity
> sake the fix uses a SimpleDateFormat object with its timezone set to GMT
> so that '+00' can be used as the timezone for postgresql.  This is done
> as SimpleDateFormat doesn't support formating timezones in the way
> postgresql expects.
>
> Bug#2) Incorrect handling of partial seconds in getting timestamps from
> the DB
>
> When the SimpleDateFormat object parses a string with a format like
> yyyy-MM-dd hh:mm:ss.SS it expects the fractional seconds to be three
> decimal places (time precision in java is miliseconds = three decimal
> places).  This seems like a bug in java to me, but it is unlikely to be
> fixed anytime soon, so the postgresql code needed modification to
> support the java behaviour.  So for example a string of '2000-01-12
> 12:00:00.12-08' coming from the database was being converted to a
> timestamp object with a value of 2000-01-12 12:00:00.012GMT-08:00.  The
> fix was to check for a '.' in the string and if one is found append on
> an extra zero to the fractional seconds part.
>
>
> I also did some cleanup in ResultSet.getTimestamp().  This method has
> had multiple patches applied some of which resulted in code that was no
> longer needed.  For example the ISO timestamp format that postgresql
> uses specifies the timezone as an offset like '-08'.  Code was added at
> one point to convert the postgresql format to the java one which is
> GMT-08:00, however the old code was left around which did nothing.  So
> there was code that looked for yyyy-MM-dd hh:mm:sszzzzzzzzz and
> yyyy-MM-dd hh:mm:sszzz.  This second format would never be encountered
> because zzz (i.e. -08) would be converted into the former (also note
> that the SimpleDateFormat object treats zzzzzzzzz and zzz the same, the
> number of z's does not matter).
>
>
> There was another problem/fix mentioned on the email lists today by
> mcannon@internet.com which is also fixed by this patch:
>
> Bug#3) Fractional seconds lost when getting timestamp from the DB
> A patch by Jan Thomea handled the case of yyyy-MM-dd hh:mm:sszzzzzzzzz
> but not the fractional seconds version yyyy-MM-dd hh:mm:ss.SSzzzzzzzzz.
> The code is fixed to handle this case as well.

Barry Lind
2001-01-24 23:41:04 +00:00
Bruce Momjian 623bf843d2 Change Copyright from PostgreSQL, Inc to PostgreSQL Global Development Group. 2001-01-24 19:43:33 +00:00
Peter Eisentraut 718fc7e0d1 Fix bogus pattern for STRING. 2001-01-24 19:01:31 +00:00
Bruce Momjian 7df3bb50f0 Add all possible config file options. 2001-01-24 18:37:31 +00:00
Bruce Momjian 3347fbad79 Put back old config contents until I am finished. 2001-01-24 15:57:49 +00:00
Bruce Momjian 0843ec088c Add "idle in transaction" status message 2001-01-24 15:53:59 +00:00
Bruce Momjian ab37224426 Fix formatting of db crash. 2001-01-24 14:32:32 +00:00
Peter Mount b869f45d1e Removed the 8k row limit reported by DatabaseMetaData 2001-01-24 09:22:01 +00:00
Bruce Momjian 3f0f30d1a1 Add comment for getpwid() safety. 2001-01-24 05:24:43 +00:00
Bruce Momjian 843657b066 attached is take-2 of a patch which fixes a bug related
to the use of getpwuid when running in standalone mode.
this patch allocates some persistent storage (using
strdup) to store the username obtained with getpwuid
in src/backend/main/main.c.  this is necessary because
later on, getpwuid is called again (in ValidateBinary).

the man pages for getpwuid on SCO OpenServer, FreeBSD,
and Darwin all have words to this effect (this is from
the SCO OpenServer man page):

  Note
  ====
  All information is contained in a static area, so it must
  be copied if it is to be saved. Otherwise, it may be
  overwritten on subsequent calls to these routines.

in particular, on my platform, the storage used to hold
the pw_name from the first call is overwritten such that
it looks like an empty username.  this causes a problem
later on in SetSessionUserIdFromUserName.

i'd assume this isn't a problem on most platforms because
getpwuid is called with the same UID both times, and the
same thing ends up happening to that static storage each
time.  however, that's not guaranteed, and is _not_ what
happens on my platform (at least :).

this is for the version of 7.1 available via anon cvs as
of Tue Jan 23 15:14:00 2001 PST:
  .../src/backend/main/main.c,v 1.37 2000/12/31 18:04:35 tgl Exp

-michael thornburgh, zenomt@armory.com
2001-01-24 03:50:06 +00:00
Bruce Momjian bd0a767eab Here is a patch to make the current snapshot compile on Win32 (native, libpq
and psql) again. Changes are:
1) psql requires the includes of "io.h" and "fcntl.h" in command.c in order
to make a call to open() work (io.h for _open(), fcntl.h for the O_xxx)
2) PG_VERSION is no longer defined in version.h[.in], but in configure.in.
Since we don't do configure on native win32, we need to put it in
config.h.win32 :-(
3) Added define of SYSCONFDIR to config.h.win32 - libpq won't compile
without it. This functionality is *NOT* tested - it's just defined as "" for
now. May work, may not.
4) DEF_PGPORT renamed to DEF_PGPORT_STR

I have done the "basic tests" on it - it connects to a database, and I can
run queries. Haven't tested any of the fancier functions (yet).

However, I stepped on a much bigger problem when fixing psql to work. It no
longer works when linked against the .DLL version of libpq (which the
Makefile does for it). I have left it linked against this version anyway,
pending the comments I get on this mail :-)
The problem is that there are strings being allocated from libpq.dll using
PQExpBuffers (for example, initPQExpBuffer() on line 92 of input.c). These
are being allocated using the malloc function used by libpq.dll. This
function *may* be different from the malloc function used by psql.exe - only
the resulting pointer must be valid. And with the default linking methods,
it *WILL* be different. Later, psql.exe tries to free() this string, at
which point it crashes because the free() function can't find the allocated
block (it's on the allocated blocks list used by the runtime lib of
libpq.dll).

Shouldn't the right thing to do be to have psql call termPQExpBuffer() on
the data instead? As it is now, gets_fromFile() will just return the pointer
received from the PQExpBuffer.data (this may well be present at several
places - this is the one I was bitten by so far). Isn't that kind of
"accessing the internals of the PQExpBuffer structure" wrong? Instead,
perhaps it shuold make a copy of the string, adn then termPQExpBuffer() it?
In that case, the string will have been allocated from within the same
library as the free() is called.

I can get it to work just fine by doing this - changing from (around line
100 of input.c):
and the same a bit further down in the same function.

But, as I said above, this may be at more places in the code? Perhaps
someone more familiar to it could comment on that?


What do you think shuld be done about this? Personally, I go by the "If you
allocate a piece of memory using an interface, use the same interface to
free it", but the question is how to make it work :-)


Also, AFAIK this only affects psql.exe, so the changes made to the libpq
this patch are required no matter how the other issue is handled.

Regards,
 Magnus
2001-01-24 03:42:38 +00:00
Hiroshi Inoue a8b275e76d Removed a dangerours DropRelationBuffers() call. 2001-01-24 00:36:17 +00:00
Tom Lane 997ee51631 Make functional index copy attstorage from the column data type, rather
than forcing 'plain'.  This probably does not matter right now, but I
think it needs to be consistent with the regular (not-functional) index
case, where attstorage is copied from the underlying table.  Clean up
some other dead and infelicitous code too.
2001-01-24 00:06:07 +00:00
Tom Lane c654c69c05 Narrow scope of critical section, per discussion 1/19/01. 2001-01-23 23:32:45 +00:00
Tom Lane 4e27b308e2 Do _bt_wrtbuf() outside critical section, per discussion with Vadim 1/19. 2001-01-23 23:29:22 +00:00
Peter Eisentraut d7157d32cb The -R option didn't accept an argument, which made it kind of useless. 2001-01-23 22:46:14 +00:00
Tom Lane f69ff0c4bd Give 'a_expr ::= a_expr Op' production a slightly lower precedence than
Op, so that the sequence 'a_expr Op Op a_expr' will be parsed as
a_expr Op (Op a_expr) not (a_expr Op) Op a_expr as formerly.  In other
words, prefer treating user-defined operators as prefix operators to
treating them as postfix operators, when there is an ambiguity.
Also clean up a couple of other infelicities in production priority
assignment --- for example, BETWEEN wasn't being given the intended
priority, but that of AND.
2001-01-23 22:39:08 +00:00
Bruce Momjian edfca4b98b Subject: Bug in SQLForeignKeys()
Query used for checking foreign key triggers
returns too many results when there're more than one foreign
key in a table. It happens because only table's oid is used to
link between pg_trigger with INSERT check and pg_trigger with
UPDATE/DELETE check.

I think there should be enough to add following conditions
into WHERE clause of that query:
        AND     pt.tgconstrname = pg_trigger.tgconstrname
        AND     pt.tgconstrname = pg_trigger_1.tgconstrname

/Constantin
2001-01-23 20:36:30 +00:00
Peter Eisentraut 3de8407ea7 Remove useless leftover global variable Ps_status_buffer. 2001-01-23 20:33:29 +00:00
Michael Meskes d09fc12044 Moved database name handling to libecpg. 2001-01-23 08:15:50 +00:00
Tom Lane 786f1a59cd Fix all the places that called heap_update() and heap_delete() without
bothering to check the return value --- which meant that in case the
update or delete failed because of a concurrent update, you'd not find
out about it, except by observing later that the transaction produced
the wrong outcome.  There are now subroutines simple_heap_update and
simple_heap_delete that should be used anyplace that you're not prepared
to do the full nine yards of coping with concurrent updates.  In
practice, that seems to mean absolutely everywhere but the executor,
because *noplace* else was checking.
2001-01-23 04:32:23 +00:00
Bruce Momjian 56970c1bc0 Fix some int4->int32. 2001-01-23 03:10:25 +00:00
Tom Lane b686fb5bf1 Remove no-longer-needed restriction against referencing system
attributes in a FieldSelect node --- all the places that manipulate
these work just fine with system attribute numbers.  OK, it's a new
feature, so shoot me ...
2001-01-23 02:32:26 +00:00
Bruce Momjian 7e533da492 Rename int4 to int32 in a few places. 2001-01-23 01:48:17 +00:00
Tom Lane 728b0aa290 Improve realloc() per idea from Karel Zak --- if chunk to be enlarged is
at end of its block, maybe we can enlarge it in-place.
2001-01-23 01:01:36 +00:00
Tom Lane e9c936ff38 Remove rangechecks on errno; just call strerror unconditionally. This
eliminates a raft of portability issues, including whether sys_nerr
exists, whether the platform has any valid negative errnos, etc.  The
downside is minimal: errno shouldn't ever contain an invalid value anyway,
and if it does, reasonably modern versions of strerror will not choke.
This rangecheck idea seemed good at the time, but it's clearly a net loss,
and I apologize to all concerned for having ever put it in.
2001-01-22 23:28:52 +00:00
Tom Lane e84c429062 Clean up lockmanager data structures some more, in preparation for planned
rewrite of deadlock checking.  Lock holder objects are now reachable from
the associated LOCK as well as from the owning PROC.  This makes it
practical to find all the processes holding a lock, as well as all those
waiting on the lock.  Also, clean up some of the grottier aspects of the
SHMQueue API, and cause the waitProcs list to be stored in the intuitive
direction instead of the nonintuitive one.  (Bet you didn't know that
the code followed the 'prev' link to get to the next waiting process,
instead of the 'next' link.  It doesn't do that anymore.)
2001-01-22 22:30:06 +00:00
Michael Meskes 88ce6a2ba0 Synced preproc.y with gram.y and added missing include file to pgc.l. 2001-01-22 17:05:50 +00:00
Tom Lane c9fe128316 Clean up per-tuple memory leaks in trigger firing and plpgsql
expression evaluation.
2001-01-22 00:50:07 +00:00
Tom Lane 59a3a40149 All the global memory contexts should be DLLIMPORT, if any are. 2001-01-22 00:18:13 +00:00
Bruce Momjian d7d51bc138 Put quotes around environment variables. 2001-01-21 05:16:45 +00:00
Bruce Momjian b8f23aff82 Back out patch for BLOB operations until approval. 2001-01-21 03:50:25 +00:00
Bruce Momjian c655935217 Hello,
here is the patch attached which do check in each BLOB operation, if we are
in transaction, and raise an error otherwise. This will prevent such mistakes.

--
Sincerely Yours,
Denis Perchine
2001-01-21 03:49:14 +00:00
Tom Lane 023a48b811 Deal with C++ incompatibility of sys_nerr declaration by taking it out
of c.h altogether, and putting it into the only places that use it
(elog.c and exc.c), instead.  Modify these routines to check for a
NULL or empty-string return from strerror, too, since some platforms
define strerror to return empty string for unknown errors (what a useless
definition that is ...).  Clean up some cruft in ExcPrint while at it.
2001-01-21 00:59:26 +00:00
Tom Lane 37fd198456 Get rid of sunos4-only strerror() macro, and arrange to use the
implementation in backend/port/strerror.c if configure finds no strerror
in libc, same as we do for snprintf and inet_aton.
2001-01-20 23:07:27 +00:00
Tom Lane 531cd44fd1 Remove no-longer-used STRERROR2 config symbol. 2001-01-20 22:56:33 +00:00
Tom Lane a2405d5554 Get rid of initdb -t bugs by the simple expedient of getting rid of
initdb -t.  This option is obsoleted by 7.1's ability to drop and
recreate template1 during normal operation.
2001-01-20 22:09:24 +00:00
Tom Lane 1a02edae60 Give a good error message for what's likely to be a common syntax error,
namely omitting the alias clause for a sub-SELECT in FROM.
2001-01-20 17:37:52 +00:00
Peter Eisentraut 19cba0cc1b Add missing piece of BitString support to node output functions. Expand
and remove IsA_Value macro.
2001-01-20 00:15:59 +00:00
Tom Lane a7ea9f46e1 Still further tweaking of s_lock assembler: do not assume that leading
whitespace is unimportant in assembly code.  Also, move VAX definition
of typedef slock_t to port header files to be like all the other ports.
Note that netbsd.h and openbsd.h are now identical, and I rather think
that freebsd.h is broken in the places where it doesn't agree --- but
I'll leave it to the freebsders to look at that.
2001-01-20 00:03:55 +00:00
Peter Eisentraut 58f4028518 From Jason Tishler <jt@dothill.com>
* doc/FAQ_MSWIN: Update to be consistent with software -- mainly change
comment from lack of Cygwin UNIX domain socket support and to list of
current Cygwin UNIX domain socket issues.
* src/include/config.h.in: Enable UNIX domain sockets for Cygwin.
* src/include/port/win.h: Disable UNIX domain sockets for Cygwin b20.1.
* src/test/regress/pg_regress.sh: Use UNIX domain sockets for Cygwin
instead of TCP/IP.
2001-01-19 23:43:36 +00:00
Tom Lane 6ce0ed2813 Make critical sections (elog->crash) and interrupt holdoff sections
into distinct concepts, per recent discussion on pghackers.
2001-01-19 22:08:47 +00:00
Bruce Momjian 75815c3100 cleanup. 2001-01-19 21:09:57 +00:00
Bruce Momjian 27aaf9df7e Remove ; and add \n to ASM code. 2001-01-19 20:39:16 +00:00
Peter Eisentraut e4e64e7fef Update to reality. 2001-01-19 19:43:27 +00:00
Tom Lane 6bb6209bee Make pqexpbuffer a little more robust, per bug report from Heinz Ekker. 2001-01-19 19:39:23 +00:00
Peter Eisentraut e8990eba31 Repair circular dependencies and broken clean commands. 2001-01-19 19:15:33 +00:00
Peter Eisentraut d62d4c3300 Change
#! /usr/local/bin/perl -w
to
#! /usr/bin/perl

The path is probably more portable, and the -w was kind of silly for a six
line script that produces two warnings as it stands.
2001-01-19 19:06:48 +00:00
Peter Eisentraut b7001d0f6a Change
#! /usr/local/bin/python
to
#! /usr/bin/env python
which is the recommended way.
2001-01-19 18:35:40 +00:00
Bruce Momjian de266c6d73 > > I have attached a simple change to src/pl/plperl/plperl.c to
> > enable the :bash_math opcodes.  Currently plperl.c only
> > enables the :default opcodes.  This leave out about five of six
> > math functions including sqrt().

Travis Bauer
2001-01-19 16:14:36 +00:00
Peter Mount be281916f9 Fri Jan 19 08:47:00 GMT 2001 peter@retep.org.uk
- Applied patch submitted by John Schutz <schutz@austin.rr.com> that
          fixed a bug with ANT's SQL functions (not needed for building but nice
          to have fixed).
2001-01-19 08:49:06 +00:00
Bruce Momjian 8fe8fc9db0 Fix alignment 2001-01-19 07:03:53 +00:00
Bruce Momjian 246b5398b4 Fix univel asm alignment 2001-01-19 06:59:59 +00:00
Tom Lane 86a2c2595b Suppress compiler warning in MULTIBYTE code. 2001-01-19 06:57:25 +00:00