]> granicus.if.org Git - postgresql/log
postgresql
23 years agoThis fixes the regression test .so builds on sysv5 systems:
Bruce Momjian [Thu, 6 Sep 2001 03:15:43 +0000 (03:15 +0000)]
This fixes the regression test .so builds on sysv5 systems:
I believe this will fix peter_e's problen with gcc.

Larry Rosenman

23 years agoAttached is my attempt to clean up the horrors of the ExecSQL() method in
Bruce Momjian [Thu, 6 Sep 2001 03:13:34 +0000 (03:13 +0000)]
Attached is my attempt to clean up the horrors of the ExecSQL() method in
the JDBC driver.

I've done this by extracting it into a new method object called
QueryExecutor (should go into org/postgresql/core/) and then taking it
apart into different methods in that class.

A short summary:

* Extracted ExecSQL() from Connection into a method object called
  QueryExecutor.

* Moved ReceiveFields() from Connection to QueryExecutor.

* Extracted parts of the original ExecSQL() method body into smaller
  methods on QueryExecutor.

* Bug fix: The instance variable "pid" in Connection was used in two
  places with different meaning. Both were probably in dead code, but it's
  fixed anyway.

Anders Bengtsson

23 years agoAttached is a patch for current CVS, consisting of a cvs diff -c
Bruce Momjian [Thu, 6 Sep 2001 03:11:59 +0000 (03:11 +0000)]
Attached is a patch for current CVS, consisting of a cvs diff -c
for the changed files and a few new files:
- test/jdbc2/BatchExecuteTest.java
- util/MessageTranslator.java
- jdbc2/PBatchUpdateException.java

As an aside, is this the best way to submit a patch consisting
of both changed and new files? Or is there a smarter cvs command
which gets them all in one patch file?

This patch fixes batch processing in the JDBC driver to be
JDBC-2 compliant. Specifically, the changes introduced by this
patch are:

1) Statement.executeBatch() no longer commits or rolls back a
transaction, as this is not prescribed by the JDBC spec. Its up
to the application to disable autocommit and to commit or
rollback the transaction. Where JDBC talks about "executing the
statements as a unit", it means executing the statements in one
round trip to the backend for better performance, it does not
mean executing the statements in a transaction.

2) Statement.executeBatch() now throws a BatchUpdateException()
as required by the JDBC spec. The significance of this is that
the receiver of the exception gets the updateCounts of the
commands that succeeded before the error occurred. In order for
the messages to be translatable, java.sql.BatchUpdateException
is extended by org.postgresql.jdbc2.PBatchUpdateException() and
the localization code is factored out from
org.postgresql.util.PSQLException to a separate singleton class
org.postgresql.util.MessageTranslator.

3) When there is no batch or there are 0 statements in the batch
when Statement.executeBatch() is called, do not throw an
SQLException, but silently do nothing and return an update count
array of length 0. The JDBC spec says "Throws an SQLException if
the driver does not support batch statements", which is clearly
not the case. See testExecuteEmptyBatch() in
BatchExecuteTest.java for an example. The message
postgresql.stat.batch.empty is removed from the language
specific properties files.

4) When Statement.executeBatch() is performed, reset the
statement's list of batch commands to empty. The JDBC spec isn't
100% clear about this. This behaviour is only documented in the
Java tutorial
(http://java.sun.com/docs/books/tutorial/jdbc/jdbc2dot0/batchupdates.html).
Note that the Oracle JDBC driver also resets the statement's
list in executeBatch(), and this seems the most reasonable
interpretation.

5) A new test case is added to the JDBC test suite which tests
various aspects of batch processing. See the new file
BatchExecuteTest.java.

Regards,
Ren? Pijlman

23 years agoApply jdbc error changes.
Bruce Momjian [Thu, 6 Sep 2001 03:07:27 +0000 (03:07 +0000)]
Apply jdbc error changes.

23 years agoSync up jdbc error files.
Bruce Momjian [Thu, 6 Sep 2001 03:03:37 +0000 (03:03 +0000)]
Sync up jdbc error files.

23 years agoOn Sat, Aug 25, 2001 at 08:15:45PM -0400, Bruce Momjian wrote:
Bruce Momjian [Thu, 6 Sep 2001 02:58:33 +0000 (02:58 +0000)]
On Sat, Aug 25, 2001 at 08:15:45PM -0400, Bruce Momjian wrote:
> Can someone research this and figure out what the proper solution for
> this is?  Seems we are going around in circles if we keep
> adding/removing DLLIMPORT.

I believe that the attached patch is the correct solution --  I apologize
for the gyrations.  With the attached patch, Cygwin libpq++ builds
cleanly again.  The root cause was that DLLIMPORT was defaulting to
__declspec(dllimport) since BUILDING_DLL was *not* defined when building
the libpq++ DLL.

Unfortunately, to test my patch requires changing the following makefile:

    src/interfaces/libpq++/examples/Makefile

and the #includes in all of the *.cc to build against the source tree
instead of the following hardcoded installation directory structure:

    /usr/local/pgsql

I was able to manually build

    src/interfaces/libpq++/examples/testlibpq0.exe

against my Cygwin libpq++ without errors.  However, I have not tried to
actually test testlibpq0.exe.

Is this sufficient?  Or, do you want me to clean up libpq++/examples too?
(Or, is it silly to even ask? :,))  Let me know how you want to proceed and
I will submit a patch to pgsql-patches.

Jason Tishler

23 years agoNext version of patch.
Bruce Momjian [Thu, 6 Sep 2001 02:56:32 +0000 (02:56 +0000)]
Next version of patch.
Now with documentation update and disabling of UTF conversion for Tcl <=8.0

On Fri, 24 Aug 2001, Vsevolod Lobko wrote:

> On Thu, 23 Aug 2001, Tom Lane wrote:
>
> > > Is this looks better?
> >
> > It does, but one small gripe: the lack of semicolons will probably cause
> > pg_indent to mess up the indentation.  (I know emacs' autoindent mode
> > will not work nicely with it, either.)  Please set up the macros so that
> > you write
> >
> >                         UTF_BEGIN;
> >                         Tcl_DStringAppend(&unknown_src, UTF_E2U(part), -1);
> >                         UTF_END;
> >
> > and then I'll be happy.
>
> Attached revised patch
>
> > Your point about overhead is a good one, so I retract the gripe about
> > using a configure switch.  But please include documentation patches to
> > describe the configure option in the administrator's guide (installation
> > section).
>
> This patch still uses configure switch for enabling feature.
>
> For enabling based on tcl version we have 2 posibilites:
>  1) having feature enabled by default, but in pltcl.c check for tcl
>     version and disable it for old versions
>  2) enable or disable at configure time based on tcl version, but there
>     are problem - current configure don't checks for tcl version at all
>     and my configure skills not enought for adding this
>

Vsevolod Lobko

23 years agoBelow is the patch against current cvs for libpgtcl and
Bruce Momjian [Thu, 6 Sep 2001 02:54:56 +0000 (02:54 +0000)]
Below is the patch against current cvs for libpgtcl and
two additional files win32.mak and libpgtcl.def.
This patch allows to compile libpgtcl.dll on Windows
with tcl > 8.0. I've tested it on WinNT (VC6.0), SUSE Linux (7.0)
and Solaris 2.6 with tcl 8.3.3.

Mikhail Terekhov

23 years agoHello, i just reviewed the win32 errno patch and i saw that maybe i didn't
Bruce Momjian [Thu, 6 Sep 2001 02:52:00 +0000 (02:52 +0000)]
Hello, i just reviewed the win32 errno patch and i saw that maybe i didn't
really played it totally safe in my last suggestion, the system table might
pick up the msg but not the netmsg.dll, so better try both.
I also added a hex printout of the "errno" appended to all messages, that's
nicer.

If anyone hate my coding style, or that i'm using goto constructs, just tell
me, and i'll rework it into a nested if () thing.

Magnus Naeslund(f)

23 years agoFix handling of pg_type.typdefault per bug report from Dave Blasby.
Tom Lane [Thu, 6 Sep 2001 02:07:42 +0000 (02:07 +0000)]
Fix handling of pg_type.typdefault per bug report from Dave Blasby.
If there's anyone out there who's actually using datatype-defined
default values, this will be an incompatible change in behavior ...
but the old behavior was so broken that I doubt anyone was using it.

23 years agoAdd some debugging details to some of the elog(STOP) conditions for WAL.
Tom Lane [Thu, 6 Sep 2001 02:02:48 +0000 (02:02 +0000)]
Add some debugging details to some of the elog(STOP) conditions for WAL.
Standardize on %X/%X as the formatting for XLOG position display --- we
had a couple of different formats before, and none of 'em were as useful
as hex offsets IMHO.

23 years agoOverhaul ecpg manual page.
Bruce Momjian [Thu, 6 Sep 2001 00:23:42 +0000 (00:23 +0000)]
Overhaul ecpg manual page.

Update Italian jdbc error messages.

23 years agoFix code so that we recover cleanly if there are no free semaphores
Tom Lane [Tue, 4 Sep 2001 21:42:17 +0000 (21:42 +0000)]
Fix code so that we recover cleanly if there are no free semaphores
available in freeSemMap.  As noted by Tatsuo, this is now a likely
scenario for detecting MaxBackends-exceeded; if MaxBackends is a multiple
of PROC_NSEMS_PER_SET then we will fail here and not in sinval.c.  The
cleanup path did not work correctly before, anyway.

23 years agounixdate subdirectory is gone.
Tom Lane [Tue, 4 Sep 2001 19:21:42 +0000 (19:21 +0000)]
unixdate subdirectory is gone.

23 years agoFix comment, add Assert.
Tom Lane [Tue, 4 Sep 2001 19:12:05 +0000 (19:12 +0000)]
Fix comment, add Assert.

23 years agoFix typo.
Tom Lane [Tue, 4 Sep 2001 19:05:59 +0000 (19:05 +0000)]
Fix typo.

23 years agoUpdate TODO list.
Bruce Momjian [Tue, 4 Sep 2001 16:27:18 +0000 (16:27 +0000)]
Update TODO list.

23 years agoAdd java mention.
Bruce Momjian [Tue, 4 Sep 2001 15:40:18 +0000 (15:40 +0000)]
Add java mention.

23 years agoThis is obsolete and doesn't work anymore.
Peter Eisentraut [Tue, 4 Sep 2001 14:33:08 +0000 (14:33 +0000)]
This is obsolete and doesn't work anymore.

23 years ago/usr/local/bin/perl => /usr/bin/perl
Peter Eisentraut [Tue, 4 Sep 2001 11:41:04 +0000 (11:41 +0000)]
/usr/local/bin/perl => /usr/bin/perl

23 years agoUpdate FAQ.
Bruce Momjian [Tue, 4 Sep 2001 05:14:36 +0000 (05:14 +0000)]
Update FAQ.

23 years agoUpdate FAQ.
Bruce Momjian [Tue, 4 Sep 2001 05:06:20 +0000 (05:06 +0000)]
Update FAQ.

23 years agoAdd back incremental patch for BSD indent.
Bruce Momjian [Tue, 4 Sep 2001 03:34:42 +0000 (03:34 +0000)]
Add back incremental patch for BSD indent.

23 years agopg_restore option is {c|t}, not {c|f}. Pointed out by someone on IRC.
Bruce Momjian [Tue, 4 Sep 2001 03:20:29 +0000 (03:20 +0000)]
pg_restore option is {c|t}, not {c|f}.  Pointed out by someone on IRC.

        "  -F {c|t}                 specify backup file format\n"

23 years agoAdd mention of bytea data type and escaping rules.
Bruce Momjian [Tue, 4 Sep 2001 03:17:54 +0000 (03:17 +0000)]
Add mention of bytea data type and escaping rules.

23 years agoClean up the lock state properly when aborting because of early deadlock
Tom Lane [Tue, 4 Sep 2001 02:26:57 +0000 (02:26 +0000)]
Clean up the lock state properly when aborting because of early deadlock
detection in ProcSleep().  Bug noted by Tomasz Zielonka --- how did this
escape detection for this long??

23 years agoBring references to ipcclean in sync with reality.
Peter Eisentraut [Tue, 4 Sep 2001 00:22:34 +0000 (00:22 +0000)]
Bring references to ipcclean in sync with reality.

23 years agoFix misscanning of """" (an identifier consisting of one double-quote).
Peter Eisentraut [Tue, 4 Sep 2001 00:19:39 +0000 (00:19 +0000)]
Fix misscanning of """" (an identifier consisting of one double-quote).

23 years agoFix typo.
Peter Eisentraut [Tue, 4 Sep 2001 00:18:18 +0000 (00:18 +0000)]
Fix typo.

23 years agoAdd patch for 0LL for BSD indent/pgindent.
Bruce Momjian [Mon, 3 Sep 2001 23:11:20 +0000 (23:11 +0000)]
Add patch for 0LL for BSD indent/pgindent.

23 years agoAdd items.
Bruce Momjian [Mon, 3 Sep 2001 21:38:37 +0000 (21:38 +0000)]
Add items.

23 years agoAdd two emails about TODO.detail PL/java discussion.
Bruce Momjian [Mon, 3 Sep 2001 21:17:53 +0000 (21:17 +0000)]
Add two emails about TODO.detail PL/java discussion.

23 years agoPut some kind of grammatical uniformity in the <refpurpose> lines.
Peter Eisentraut [Mon, 3 Sep 2001 12:57:50 +0000 (12:57 +0000)]
Put some kind of grammatical uniformity in the <refpurpose> lines.

23 years agoPut pgstat internal files into $PGDATA/global.
Peter Eisentraut [Mon, 3 Sep 2001 12:00:00 +0000 (12:00 +0000)]
Put pgstat internal files into $PGDATA/global.

23 years agoParse the arguments of \connect as SQL identifiers, so that they expose
Peter Eisentraut [Sun, 2 Sep 2001 23:52:19 +0000 (23:52 +0000)]
Parse the arguments of \connect as SQL identifiers, so that they expose
the expected behavior in mixed-case situations.

bug report from James Pattie, 2001-08-31

23 years agoNew blood and fresh air for tutorial
Peter Eisentraut [Sun, 2 Sep 2001 23:27:50 +0000 (23:27 +0000)]
New blood and fresh air for tutorial

23 years agoThe actual execution results are different from examples.
Tatsuo Ishii [Fri, 31 Aug 2001 07:45:09 +0000 (07:45 +0000)]
The actual execution results are different from examples.

23 years agoActual results are different from examples
Tatsuo Ishii [Fri, 31 Aug 2001 07:30:05 +0000 (07:30 +0000)]
Actual results are different from examples

23 years agoAdd ; to the create operator.
Tatsuo Ishii [Fri, 31 Aug 2001 04:17:13 +0000 (04:17 +0000)]
Add ; to the create operator.

23 years agoSince 7.1 the data type size of TIME has been increased.
Tatsuo Ishii [Fri, 31 Aug 2001 01:55:25 +0000 (01:55 +0000)]
Since 7.1 the data type size of TIME has been increased.

23 years agoConvert some fprintf's to elog's.
Peter Eisentraut [Thu, 30 Aug 2001 19:02:42 +0000 (19:02 +0000)]
Convert some fprintf's to elog's.

23 years agoFor INSERTs, one can now tab complete DEFAULT VALUES.
Peter Eisentraut [Thu, 30 Aug 2001 13:17:03 +0000 (13:17 +0000)]
For INSERTs, one can now tab complete DEFAULT VALUES.

from Liam Stewart

23 years agoFix typo.
Tatsuo Ishii [Thu, 30 Aug 2001 08:16:42 +0000 (08:16 +0000)]
Fix typo.

23 years agoInstall the SQL command man pages into a section appropriate for each
Peter Eisentraut [Wed, 29 Aug 2001 19:14:40 +0000 (19:14 +0000)]
Install the SQL command man pages into a section appropriate for each
system.  Some systems did not understand the 'l' section, and in general
it wasn't entirely appropriate.

On SCO OpenServer, the man pages won't be installed at all until someone
figures out their man system.

23 years agoRemove useless xreflabel.
Peter Eisentraut [Wed, 29 Aug 2001 19:11:00 +0000 (19:11 +0000)]
Remove useless xreflabel.

23 years agoWhoops, wrong logic.
Peter Eisentraut [Wed, 29 Aug 2001 11:54:12 +0000 (11:54 +0000)]
Whoops, wrong logic.

23 years agoChange the conditionals so the mips + gcc code here doesn't apply for Irix.
Peter Eisentraut [Tue, 28 Aug 2001 15:04:27 +0000 (15:04 +0000)]
Change the conditionals so the mips + gcc code here doesn't apply for Irix.
The code in s_lock.h should get used.

report from Bruno Mattarollo <bruno@web1.greenpeace.org>

23 years agoFix the readline test to find dependent libraries on NetBSD and OpenBSD.
Peter Eisentraut [Tue, 28 Aug 2001 14:59:11 +0000 (14:59 +0000)]
Fix the readline test to find dependent libraries on NetBSD and OpenBSD.
Not pretty, but it doesn't look like the OS will get fixed sometime soon.

23 years agoInclude directory rearrangement
Peter Eisentraut [Tue, 28 Aug 2001 14:20:28 +0000 (14:20 +0000)]
Include directory rearrangement

Client headers are no longer in a subdirectory, since they have been made
namespace-clean.

Internal libpq headers are in a private subdirectory.

Server headers are in a private subdirectory.  pg_config has a new option
to point there.

23 years agoFix a wrong error handling.
Hiroshi Inoue [Tue, 28 Aug 2001 05:52:13 +0000 (05:52 +0000)]
Fix a wrong error handling.

23 years agoAvoid #ifdef inside printf() ... that loses on platforms where printf()
Tom Lane [Tue, 28 Aug 2001 02:47:18 +0000 (02:47 +0000)]
Avoid #ifdef inside printf() ... that loses on platforms where printf()
is a macro.

23 years agoFix some typos.
Tom Lane [Mon, 27 Aug 2001 23:42:34 +0000 (23:42 +0000)]
Fix some typos.

23 years agoAdd some minimal exercising of functional-index feature to regression
Tom Lane [Mon, 27 Aug 2001 23:23:35 +0000 (23:23 +0000)]
Add some minimal exercising of functional-index feature to regression
tests.

23 years agoSuppress definitions of 'true' and 'false' macros if __cplusplus.
Tom Lane [Mon, 27 Aug 2001 23:02:25 +0000 (23:02 +0000)]
Suppress definitions of 'true' and 'false' macros if __cplusplus.
Since we're assuming a C++ compiler knows what 'bool' is, seems we
should assume it knows 'true' and 'false' too.  This prevents problems
on some systems, per report from Leandro Fanzone.

23 years agoUse a cursor for fetching data in -d or -D mode, so that pg_dump doesn't
Tom Lane [Mon, 27 Aug 2001 20:33:07 +0000 (20:33 +0000)]
Use a cursor for fetching data in -d or -D mode, so that pg_dump doesn't
run out of memory with large tables in these modes.  Patch from
Martijn van Oosterhout.

23 years agoFix confusion over static-ness of a subroutine.
Tom Lane [Mon, 27 Aug 2001 20:03:38 +0000 (20:03 +0000)]
Fix confusion over static-ness of a subroutine.

23 years agoRemove unneeded/unportable extern.
Tom Lane [Mon, 27 Aug 2001 20:02:10 +0000 (20:02 +0000)]
Remove unneeded/unportable extern.

23 years agoQuick-hack solution to regproc/oid issue was not the right solution.
Tom Lane [Mon, 27 Aug 2001 01:09:59 +0000 (01:09 +0000)]
Quick-hack solution to regproc/oid issue was not the right solution.

23 years agoUn-break pg_dump --- pg_class.indproc is now regproc not oid, which
Tom Lane [Mon, 27 Aug 2001 00:44:40 +0000 (00:44 +0000)]
Un-break pg_dump --- pg_class.indproc is now regproc not oid, which
for some reason displays a zero oid differently.  Possibly we should
revert that schema change, but it's easy to make pg_dump accept both
spellings so I'll do that for now.

23 years agoDo not install the odbc header files, per discussion on odbc list.
Peter Eisentraut [Mon, 27 Aug 2001 00:38:55 +0000 (00:38 +0000)]
Do not install the odbc header files, per discussion on odbc list.

23 years agoTurn on plpython build by default if we have something that looks like a
Peter Eisentraut [Mon, 27 Aug 2001 00:29:49 +0000 (00:29 +0000)]
Turn on plpython build by default if we have something that looks like a
shared library, or we can do without one.

23 years agoFix a complie error on Windows platform.
Hiroshi Inoue [Mon, 27 Aug 2001 00:18:03 +0000 (00:18 +0000)]
Fix a complie error on Windows platform.

23 years agoVPATH and DESTDIR support for PL/Perl, using the same techniques employed
Peter Eisentraut [Sun, 26 Aug 2001 23:54:41 +0000 (23:54 +0000)]
VPATH and DESTDIR support for PL/Perl, using the same techniques employed
in interfaces/perl5 a brief while ago.

Also, since building PL/Perl without a shared libperl actually works on
some platforms we can enable it there to get some development happening.
I've only checked off linux right now, but others should be added in the
future.

23 years agoPut the right runpath to libpq into the Perl module shared object on more
Peter Eisentraut [Sun, 26 Aug 2001 22:28:04 +0000 (22:28 +0000)]
Put the right runpath to libpq into the Perl module shared object on more
platforms and without relinking.

Also support VPATH builds and DESTDIR installs.  One hopes.

23 years agoDocumentation for transaction-ID-wraparound changes. Add a chapter to
Tom Lane [Sun, 26 Aug 2001 21:17:12 +0000 (21:17 +0000)]
Documentation for transaction-ID-wraparound changes.  Add a chapter to
the Admin Guide about routine maintenance tasks.  Currently this only
discusses the various reasons for doing VACUUM, but perhaps it could be
fleshed out with topics like log rotation.

23 years agoPlease pull this patch. It breaks JDBC1 support. The JDBC1 code no
Bruce Momjian [Sun, 26 Aug 2001 17:08:48 +0000 (17:08 +0000)]
Please pull this patch.  It breaks JDBC1 support.  The JDBC1 code no
longer compiles, due to objects being referenced in this patch that do
not exist in JDK1.1.

Barry Lind
---------------------------------------------------------------------------

The JDBC driver requires

  permission java.net.SocketPermission "host:port", "connect";

in the policy file of the application using the JDBC driver
in the postgresql.jar file.  Since the Socket() call in the
driver is not protected by AccessController.doPrivileged() this
permission must also be granted to the entire application.

23 years agoBack out "Remove outdated documentation section of ecpg." for Michael.
Bruce Momjian [Sun, 26 Aug 2001 17:04:02 +0000 (17:04 +0000)]
Back out "Remove outdated documentation section of ecpg." for Michael.

23 years agoTransaction IDs wrap around, per my proposal of 13-Aug-01. More
Tom Lane [Sun, 26 Aug 2001 16:56:03 +0000 (16:56 +0000)]
Transaction IDs wrap around, per my proposal of 13-Aug-01.  More
documentation to come, but the code is all here.  initdb forced.

23 years agoDocument single-letter createuser encryption options.
Bruce Momjian [Sun, 26 Aug 2001 04:20:36 +0000 (04:20 +0000)]
Document single-letter createuser encryption options.

23 years agoAdd single-letter encryption options for createuser. Update createuser --help.
Bruce Momjian [Sun, 26 Aug 2001 04:19:46 +0000 (04:19 +0000)]
Add single-letter encryption options for createuser.  Update createuser --help.

23 years agoPut createuser ENCRYPTED/UNENCRYPTED in the proper place in the query.
Bruce Momjian [Sun, 26 Aug 2001 03:46:58 +0000 (03:46 +0000)]
Put createuser ENCRYPTED/UNENCRYPTED in the proper place in the query.

23 years ago>>>>The JDBC driver requires
Bruce Momjian [Sun, 26 Aug 2001 01:06:20 +0000 (01:06 +0000)]
>>>>The JDBC driver requires
>>>>
>>>> permission java.net.SocketPermission "host:port", "connect";
>>>>
>>>>in the policy file of the application using the JDBC driver
>>>>in the postgresql.jar file.  Since the Socket() call in the
>>>>driver is not protected by AccessController.doPrivileged() this
>>>>permission must also be granted to the entire application.
>>>>
>>>>The attached diff fixes it so that the connect permission can be
>>>>restricted just the the postgresql.jar codeBase if desired.

David Daney

23 years agoHere is a patch to the resultmap to make the regression tests work on
Bruce Momjian [Sun, 26 Aug 2001 00:55:15 +0000 (00:55 +0000)]
Here is a patch to the resultmap to make the regression tests work on
OU8.

Larry Rosenman

23 years agoThe attached file: SerializePatch2.tgz, contains a patch for
Bruce Momjian [Sun, 26 Aug 2001 00:54:42 +0000 (00:54 +0000)]
The attached file: SerializePatch2.tgz, contains a patch for
org.postgresql.util.Serialize and org.postgresql.jdbc2.PreparedStatement
that  fixes the ability to "serialize" a simple java class into a
postgres table.

The current cvs seems completely broken in this support, so the patch
puts it  into working condition, granted that there are many limitations
with  serializing java classes into Postgres.

The code to do serialize appears to have been in the driver since
Postgres  6.4, according to some comments in the source.  My code is not
adding any  totally new ability to the driver, rather just fixing what
is there so that  it actually is usable.  I do not think that it should
affect any existing  functions of the driver that people regularly
depend on.

The code is activated if you use jdbc2.PreparedStatement and try to
setObject  some java class type that is unrecognized, like not String or
not some other  primitive type.  This will cause a sequence of function
calls that results in  an instance of Serialize being instantiated for
the class type passed.  The  Serialize constructor will query pg_class
to see if it can find an existing  table that matches the name of the
java class. If found, it will continue and  try to use the table to
store the object, otherwise an SQL exception is  thrown and no harm is
done.  Serialize.create() has to be used to setup the  table for a java
class before anything can really happen with this code other  than an
SQLException (unless by some freak chance a table exists that it  thinks
it can use).

I saw a difference in Serialize.java between 7.1.3 and 7.2devel that I
didn't  notice before, so I had to redo my changes from the 7.2devel
version (why I  had to resend this patch now).  I was missing the
fixString stuff, which is  nice and is imporant to ensure the inserts
will not fail due to embedded  single quote or unescaped backslashes. I
changed that fixString function in  Serialize just a little since there
is no need to muddle with escaping  newlines: only escaping single quote
and literal backslashes is needed.  Postgres appears to insert newlines
within strings without trouble.

23 years agoFix portability problem in new CLOG code, per report from Rene Pijlman.
Tom Lane [Sat, 25 Aug 2001 23:24:39 +0000 (23:24 +0000)]
Fix portability problem in new CLOG code, per report from Rene Pijlman.

23 years agoRe-apply Array.java patch to new Array.java file to fix compile.
Bruce Momjian [Sat, 25 Aug 2001 21:08:24 +0000 (21:08 +0000)]
Re-apply Array.java patch to new Array.java file to fix compile.

23 years agoReplace implementation of pg_log as a relation accessed through the
Tom Lane [Sat, 25 Aug 2001 18:52:43 +0000 (18:52 +0000)]
Replace implementation of pg_log as a relation accessed through the
buffer manager with 'pg_clog', a specialized access method modeled
on pg_xlog.  This simplifies startup (don't need to play games to
open pg_log; among other things, OverrideTransactionSystem goes away),
should improve performance a little, and opens the door to recycling
commit log space by removing no-longer-needed segments of the commit
log.  Actual recycling is not there yet, but I felt I should commit
this part separately since it'd still be useful if we chose not to
do transaction ID wraparound.

23 years agoAdd ENCRYPTED/UNENCRYPTED control in createuser script.
Bruce Momjian [Sat, 25 Aug 2001 17:46:11 +0000 (17:46 +0000)]
Add ENCRYPTED/UNENCRYPTED control in createuser script.

23 years agoAdd MD5 to win32.mak
Bruce Momjian [Sat, 25 Aug 2001 03:01:26 +0000 (03:01 +0000)]
Add MD5 to win32.mak

23 years agoAdd intended Array.java file that accidentally was patched into the
Bruce Momjian [Sat, 25 Aug 2001 01:35:45 +0000 (01:35 +0000)]
Add intended Array.java file that accidentally was patched into the
wrong directory.

23 years agoupdate from Serguei Mokhov
Peter Eisentraut [Sat, 25 Aug 2001 01:13:29 +0000 (01:13 +0000)]
update from Serguei Mokhov

23 years agoHide backend debug output in initdb by default. To that end, the bootstrap
Peter Eisentraut [Sat, 25 Aug 2001 00:31:17 +0000 (00:31 +0000)]
Hide backend debug output in initdb by default.  To that end, the bootstrap
backend gets on -o option like the regular backend.

23 years agoc.h needs to include postgres_ext.h to be self-contained.
Peter Eisentraut [Fri, 24 Aug 2001 22:46:28 +0000 (22:46 +0000)]
c.h needs to include postgres_ext.h to be self-contained.

23 years agoMissed this part in pg_config.h rename.
Peter Eisentraut [Fri, 24 Aug 2001 22:42:28 +0000 (22:42 +0000)]
Missed this part in pg_config.h rename.

23 years agoAdd ecpg --help and --version. Renumber the exit status codes, which were
Peter Eisentraut [Fri, 24 Aug 2001 22:37:36 +0000 (22:37 +0000)]
Add ecpg --help and --version.  Renumber the exit status codes, which were
documented wrong.

23 years agoStart adding some more documentation about the number types. Make
Peter Eisentraut [Fri, 24 Aug 2001 20:03:45 +0000 (20:03 +0000)]
Start adding some more documentation about the number types.  Make
bigserial and alias for serial8 for consistency with bigint/int8.

23 years agoReverse sense of comparison in psql socket test, per Tom Lane.
Bruce Momjian [Fri, 24 Aug 2001 19:59:54 +0000 (19:59 +0000)]
Reverse sense of comparison in psql socket test, per Tom Lane.

23 years agoRemove outdated documentation section of ecpg.
Bruce Momjian [Fri, 24 Aug 2001 18:08:25 +0000 (18:08 +0000)]
Remove outdated documentation section of ecpg.

23 years agoThere are two problems when compiling libpq.dll and psql.exe
Bruce Momjian [Fri, 24 Aug 2001 16:59:10 +0000 (16:59 +0000)]
There are two problems when compiling libpq.dll and psql.exe
on Windows. I'm not sure it is the best way to fix them
(see patch below.)

Mikhail Terekhov with mods by Tom Lane

23 years agoAttached is a patch to fix the current issues with building under jdbc1.
Bruce Momjian [Fri, 24 Aug 2001 16:50:18 +0000 (16:50 +0000)]
Attached is a patch to fix the current issues with building under jdbc1.
  This patch moves the logic that looks up TypeOid, PGTypeName, and
SQLTypeName from Field to Connection.  It is moved to connection since
it needs to differ from the jdbc1 to jdbc2 versions and Connection
already has different subclasses for the two driver versions.  It also
made sense to move the logic to Connection as some of the logic was
already there anyway.

Barry Lind

23 years agoRename config.h to pg_config.h and os.h to pg_config_os.h, fix a number of
Peter Eisentraut [Fri, 24 Aug 2001 14:07:50 +0000 (14:07 +0000)]
Rename config.h to pg_config.h and os.h to pg_config_os.h, fix a number of
places that were including the wrong files.

23 years agoEnsure that all TransactionId comparisons are encapsulated in macros
Tom Lane [Thu, 23 Aug 2001 23:06:38 +0000 (23:06 +0000)]
Ensure that all TransactionId comparisons are encapsulated in macros
(TransactionIdPrecedes, TransactionIdFollows, etc).  First step on the
way to transaction ID wrap solution ...

23 years agoMakefile forgot to install README.btree_gist.
Tom Lane [Thu, 23 Aug 2001 16:55:53 +0000 (16:55 +0000)]
Makefile forgot to install README.btree_gist.

23 years agoAdd chkpass.
Tom Lane [Thu, 23 Aug 2001 16:54:25 +0000 (16:54 +0000)]
Add chkpass.

23 years agoBring chkpass build process into sync with other contrib modules;
Tom Lane [Thu, 23 Aug 2001 16:50:33 +0000 (16:50 +0000)]
Bring chkpass build process into sync with other contrib modules;
make it use Makefile.shlib, etc.

23 years agoRemove test of 'inf' since it introduces a platform dependency (some
Tom Lane [Thu, 23 Aug 2001 15:10:17 +0000 (15:10 +0000)]
Remove test of 'inf' since it introduces a platform dependency (some
Unixen spell it 'Inf').  Not worth adding multiple expected files and
a resultmap just for this.

23 years agotskey_cmp() should use timestamp_cmp() instead of doing its own
Tom Lane [Thu, 23 Aug 2001 15:07:41 +0000 (15:07 +0000)]
tskey_cmp() should use timestamp_cmp() instead of doing its own
interval arithmetic.  From Teodor Sigaev.

23 years agoUpdate TODO list.
Bruce Momjian [Thu, 23 Aug 2001 14:42:05 +0000 (14:42 +0000)]
Update TODO list.

23 years agoAllow the return value of an SQL function to be binary-compatible with
Tom Lane [Thu, 23 Aug 2001 00:49:46 +0000 (00:49 +0000)]
Allow the return value of an SQL function to be binary-compatible with
the declared result type, rather than requiring exact type match as
before.  Per pghackers discusssion of 14-Aug.

23 years agoAdd option to output SET SESSION AUTHORIZATION commands rather than
Peter Eisentraut [Wed, 22 Aug 2001 20:23:24 +0000 (20:23 +0000)]
Add option to output SET SESSION AUTHORIZATION commands rather than
\connect, to avoid possible password prompts and such, at the drawback of
having to have superuser access.