message under a kernel that only returns one packet per recv() call. This
didn't use to matter much, but it starts to get annoying with multi-megabyte
EXPLAIN VERBOSE responses...
error/notice message lengths, and number of fields per tuple. Add
pqexpbuffer.c/.h, a frontend version of backend's stringinfo module.
This is first step in applying Mike Ansley's long-query patches,
even though he didn't do any of these particular changes...
August 1994 draft standard.
Use the ecpg support libraries to write the CLI interface?
Date and Darwen claim that CLI is a more modern and flexible approach...
> (native win32, not cygnus).
> It does the following:
> Patches two win32.mak files to DEFINE HAVE_VSNPRINTF and
> HAVE_STRDUP. This is required to build at all.
> Bumps the version number on libpq.dll from 6.4 to 6.5.
> Required for install programs to work.
> Adds defintions for BLCKSZ and MAXIMUM_ALIGN to "win32.h" in
> the client-side libpiq directory.
>
> All these files are only used when building on native win32,
> so it should be safe I think.
>
> Again, really sorry to throw this in so late, but I would
> hate to do the same thing as with 6.4 (which required 6.4.1
> to at all compile on Win32).
>
> Thanks,
>
> //Magnus
PgDatabase::DisplayTuples and PgDatabase::PrintTuples. This is incorrect
according to strict interpretation of the C++ spec, and some compilers
will reject it. Also silence g++ warning about unused parameter.
the ecpg Makefiles use a variable DESTDIR which is never defined
except by debian/rules makefile, in which case the ecpg makefiles
expand wrong pathnames. If we want to support a DESTDIR root it
must be done consistently in all the makefiles, not just in ecpg.
From: Massimo Dal Zotto <dz@cs.unitn.it>
do the right thing: look for a NOTICE message from the backend before we
close our side of the socket. 6.4 libpq did not reliably print the backend's
hara-kiri message, 'The Postmaster has informed me ...', because it only
did the right thing if connection closure was detected during a read
attempt instead of a write attempt.
this file in interfaces/
It will all need to be checked in. I used the char *rcsid[] method for
cvs ids so it can be strings | grep'd to find version numbers. The new
version for the library is 3.0.
Run configure from src/ to create the Makefile and it should be good to
go.
I did minimal documentation references in the README, I'll see if I can
get something to Tom Lockhart rather quickly.
Vince.
on connection. This patch changes it to use PQconnectdb rather than
{fe_setauthsvc,PQsetdb}. This still isn't the complete solution, as
there
is no provision for user,password in class PgEnv, but it does get rid of
the error message. Tested with gcc version egcs-2.91.60 19981201
(egcs-1.1.1 release) under NetBSD-1.3K/i386.
Cheers,
Patrick Welche
been applied. The patches are in the .tar.gz attachment at the end:
varchar-array.patch this patch adds support for arrays of bpchar() and
varchar(), which where always missing from postgres.
These datatypes can be used to replace the _char4,
_char8, etc., which were dropped some time ago.
block-size.patch this patch fixes many errors in the parser and other
program which happen with very large query statements
(> 8K) when using a page size larger than 8192.
This patch is needed if you want to submit queries
larger than 8K. Postgres supports tuples up to 32K
but you can't insert them because you can't submit
queries larger than 8K. My patch fixes this problem.
The patch also replaces all the occurrences of `8192'
and `1<<13' in the sources with the proper constants
defined in include files. You should now never find
8192 hardwired in C code, just to make code clearer.
--
Massimo Dal Zotto
change functionality, but makes the code more ANSI C'ish.
My AIX xlc compiler barfs on all of these. Can someone please
review and apply to current.
<<port.patch>>
Thanks
Andreas
would be a Bad Thing.
For what it's worth, I found another case in libpq where you can get a T
message without a D that my utility patch needs to handle. I have
attached
the updated patch against the 6.4.2 version of
src/interfaces/libpq/fe-exec.c
Jerry Gay
Just in case you'd like to see what I was talking about, I am
attaching
my patch to src/interfaces/libpq/fe-exec.c to prevent utility functions
called from SPI from locking up the client.
Jerry Gay
authentifica
tion
working with postgresql-6.4.2 and KTH-KRB Ebones
(http://www.pdc.kth.se/kth-kr
b) on a dec alpha running DU 4.0D using the native compiler. The
following
patch does the trick.
The rationale behind this is as follows. The KTH-KRB code header files
defines
lots of lengths like INST_SZ,REALM_SZ and KRB_SENDAUTH_VLEN. It also has
a
habit of doing things like
chararray[LENGTH] = '\0'
to ensure null terminated strings. In my instance this just happens to
blat
the kerberos principal instance string leading to error like
pg_krb4_recvauth: kerberos error: Can't decode authenticator
(krb_rd_req
)
The application code that comes with KTH-KRB uses "KRB_SENDAUTH_VLEN +
1" and
sometimes uses "INST_SZ + 1" so it seems safest to put that 1 char
buffer in
the appropriate place.
Rodney McDuff
the handling of negative numbers and commas. The attached path attempts
to fix these.
However the getValue method does not yet insert commas into the
generated string.
Also in getValue there is an incorrect assumption that the currency
symbol is '$', it should of course be '£'!. I have no idea on how to go
about fixing this one.
Alvin
palloc.h again. Move exporting of backend header files out of libpq's
Makefile (whatever was it doing there in the first place?) and into
backend/Makefile.
+
+ Tue Feb 23 17:32:25 CET 1999
+
+ - Other than a struct a union itself cannot be specified as variable.
+
+ Fri Feb 26 07:18:25 CET 1999
+
+ - Synced preproc.y with gram.y.
+
+ Sat Feb 27 20:30:03 CET 1999
+
+ - Added automatic allocating for NULL pointers.
+
+ Son Feb 21 14:10:47 CET 1999
+
+ - Fixed variable detection in libecpg.
+
+ Mon Feb 22 19:47:45 CET 1999
+
+ - Added 'at <db_connection>' option to all commands it is apllicable
+ to. Due to changing the API of some libecpg functions this
+ requires me to increase the major version number.
+ - Synced pgc.l with scan.l.
+ - Added support for unions.
+ - Set library version to 3.0.0
+ - Set ecpg version to 3.0.0
Ok. I made patches replacing all of "#if FALSE" or "#if 0" to "#ifdef
NOT_USED" for current. I have tested these patches in that the
postgres binaries are identical.
+
+ Fri Feb 19 21:40:14 CET 1999
+
+ - Fixed bug in libecpg that caused it to start transactions only for
+ the first connection.
+ - Set library version to 2.7.1
comparisons correctly. The psql monitor converts all table and field
names to lower case. If the PQfnumber function is called with a mixed
case name, it will always return -1.
Bahman Rafatjoo
o allow to use Big5 (a Chinese encoding used in Taiwan) as a client
encoding. In this case the server side encoding should be EUC_TW
o add EUC_TW and Big5 test cases to the regression and the mb test
(contributed by Jonah Kuo)
o fix mistake in include/mb/pg_wchar.h. An encoding id for EUC_TW was
not correct (was 3 and now is 4)
o update documents (doc/README.mb and README.mb.jp)
o update psql helpfile (bin/psql/psqlHelp.h)
--
Tatsuo Ishii
t-ishii@sra.co.jp
+
+ Wed Jan 27 12:42:22 CET 1999
+
+ - Fixed bug that caused ecpg to lose 'goto' information.
+ - Set ecpg version to 2.4.7
+
+ Fri Jan 29 18:03:52 CET 1999
+
+ - Fixed bug that caused 'enum' to be rejected in pure C code.
+ - Fixed bug that caused function names to be translated to lower case.
+ - Set ecpg version to 2.4.8
+
Included patches fix a portability problem of unsetenv() used in
6.4.2 multi-byte support. unsetenv() is only avaliable on FreeBSD and
Linux so I decided to replace with putenv().
This implements some of the JDBC2 methods, fixes a bug introduced into the
JDBC1 portion of the driver, and introduces a new example, showing how to
use the CORBA ORB thats in Java2 with JDBC.
The Tar file contains the new files, the diff the changes to the others.
CHANGELOG is separate as I forgot to make a .orig ;-)
remaining shift/reduce conflict. But the very same conflict is in gram.y, so
I don't dig into it very much now.
Anyway, I just saw that there were minor changes made to ecpg by others. Now
I like that but I would prefer if I was told about that. Otherwise my
version numbering and Changelog maintaining might break. Or simply change
these too. :-)
Also I had to add #include <errno.h> to backend/libpq/pqcomprim.c to be
able to compile postgresql.
Patch is attached. Since my resubscription process is still not finished
yet, I still send them here.
Michael
file containing the latest version of the JDBC driver, allowing it to be
compiled and used under JDK 1.2 and later.
NB: None (well almost none) of the new methods actually do anything. This
release only handles getting it to compile and run. Now this is done, I'll
start working on implementing the new stuff.
Now this tar file replaces everything under src/interfaces/jdbc. I had to
do it this way, rather than diffs, because most of the classes under the
postgresql subdirectory have moved to a new directory under that one, to
enable the support of the two JDBC standards.
Here's a list of files in the tar file. Any file not listed here (in the
postgresql directory) will have to be deleted, otherwise it could cause
the driver to fail:
Peter Mount
+
+Wed Dec 9 11:24:54 MEZ 1998
+
+ - Synced preproc.y with gram.y and the keywords.c files to add CASE
+ statement.
+
+Tue Dec 22 14:16:11 CET 1998
+
+ - Synced preproc.y with gram.y for locking statements.
+ - Set version to 2.4.5
- the first patch is just to preven listing the perl warning in the
make output unless it is actually emitted by the make. this may
prevent new users from being confused by the warning in their output
- the second patch (to 2 files) just enables building/installing
pgaccess if TCL and TK are available. a Makefile is created to do
this, but you may wish to change the heading information in it since
I just copied another Makefile to use as a template.
I hope these make it into 6.4.1.
Cheers,
Brook
missed before the release. It's simply a symbol that is undefined. This
patch defines this symbol in "win32.h", so it should have no effect on any
other platforms. It should go into 6.4.1 if possible, since compilation is
completely broken without it.
I am also attaching a patch for the "win32.mak" file - it leaves a file
behind when doing "make clean" after the library is built on Visual C++ 6.0.
This is not at all as urgent, but I don't see it breaking here, so I think
it might as well go in there too?
//Magnus
Digital Uni x with both DEC cc and gcc) behaviour of modifying an
lvalue on the left side an d then using it on the right side of an
assignment. Since this code modifies the
dbname parameter, it was changing, for example, "dbname=template1"
into "dbname =emplate1".
David Smith Programmer P
src/Makefile.shlib. Updated all the makefiles that try to build shlibs
to include that file instead of having duplicate (and mostly incomplete)
copies of shared-library options. It works on HPUX, a lot better than it
did before in fact, but there's a chance I broke some other platforms.
At least now you only have to fix one place not six...
Get the permissions right, don't overwrite real files with symlinks, etc.
plpgsql and odbc still aren't fully up to speed, but at least they don't crash and burn...
compile out of the tar file on Solaris with the SUN 5.0 compilers.
These compilers will be needed if you wan to compile the libpg++
interface without using the gcc/g++. The SC4.2 compilers do not
understand the string class.
The first patch changes the ecpg intermediate shared library
name from *.sho to *.sho.o so that the SUN compiler will
allow it to be used in conjunction with the -o option.
Matthew C. Aycock
Here are patches needed to complie under AIX 4.2.
I changed configure.in, pqcomm.c, config.h.in, and fe-connect.c.
Also I had to install flex because lex did not want to translate pgc.l.
When importing an image into the database, the example now fires off a
new
Thread, which imports the image in the background. This also means that
the application doesn't freeze on the user, and they can still browse
the
images in the database, while the upload is running.
This now makes the ImageViewer a true example on how to use Threads (the
threadtest class is just that - a test).
Peter
important step towards making the driver compliant, and means that for
some Java applications and servlets, only a single database connection
is
needed, so in a sence this is a nice little show stopper for 6.4 (and
should still be backward compatible to 6.3.2).
Peter
Here are two new patches for the Win32 support.
1) The patch based on the one from Hiroshi Inoue [Inoue@tpf.co.jp], to
load
Winsock.dll from libpq.dll.
2) A patch for psql.c to remove the call to WSAStartup(), since it is
not
required when it's done in libpq.dll.
I'm still looking for the possibility of having a crypt() function in
libpq.dll too, the same way getopt was included. Any chance of getting
this
before 6.4, or should we wait for the next one?
//Magnus
Use @top-srcdir@ to find the right Makefile.global and use ODBCSRCDIR
to point to this local directory.
Move non-platform-specific stuff to outside the if clauses.
Still need to move all platform-specific stuff to the templates.
to get rid of unused variables.
Get clean compile on Linux (Thomas and Gerald).
Implement autoconf/configure for standalone builds and use the existing
autoconf/configure system when in the Postgres source tree.
Code tests and functions with ApplixWare-4.4.1beta on a Linux box.
Changes should be backward compatible with WIN32 but still needs testing.
regression test on a FreeBSD box with both non-MULTIBYTE and
MULTIBYTE-enabled, and confirmed that the results are same.
However I do not tested on PCs(I don't have access to win). Please let
me know if the patches break anything on PCs.
Also please note that the patch for varchar.c is a fix for a nasty bug
of char(n) types that I introduced and I believe at least this should
be applied.
Tatsuo Ishii
Check strdup calls for out of memory.
Set library version to 2.6.2
Synced preproc.y and keywords.c with gram.y and keywords.c yet again.
Set version to 2.4.3
+ Mon Aug 31 09:40:04 CEST 1998
+
+ - Minor patch to Makefile
+ - Put pgc.l in sync with scan.l
+
+ Tue Sep 1 11:31:05 CEST 1998
+
+ - Fixed another bug in preproc.y
+
+ Thu Sep 3 12:21:16 CEST 1998
+
+ - Sync preproc.y with gram.y
+
+ Mon Sep 14 09:21:02 CEST 1998
+
+ - Sync preproc.y with gram.y yet again
+
+ Thu Sep 17 08:55:33 CEST 1998
+
+ - Synced preproc.y and gram.y one more time
+
+ Thu Sep 17 19:23:24 CEST 1998
+
+ - Added missing ´;´ in preproc.y
+ - Set version to 2.4.2
* It works under both Tcl 7.6 and Tcl 8.0 now. (The code claims to
work under Tcl 7.5 as well, but I have no way to test that ---
if anyone still cares, please check it with 7.5.)
* pg_listen suppresses extra LISTEN commands and correctly sends an
UNLISTEN when the last listen request for a relation is cancelled.
(Note this means it will not work with pre-6.4 backends, but that
was true already because it depends on the current libpq, which
only speaks protocol 2.0.)
* Added -error option to pg_result so that there's some way to find
out what you did wrong ;-)
* Miscellaneous cleanups of code comments and overenthusiastic #includes.
BTW, I bumped the package version number from 1.2 to 1.3. Is this
premature? Does someone run around and do that routinely before
each pgsql release?
regards, tom lane
compiler to
attempt to compile libpq++. The patches address the following problems:
1. In my first pass at changing the libpq++ makefile, I forgot to
include the
PORTNAME in the Makefile.in file.
2. The UnixWare 7 C++ compiler did not like the '-K alloca' option in
CXXFLAGS.
Billy G. Allie
1. The UnixWare tas macro was reformatted (by indent or it like?) which caused
it to break. The asm macro construct is very particular about the %mem
construct -- it has to start in column 1.
2. When compiling libpq++, g++ was used even if configure found the C++ com-
piler to be CC.
3. When compiling libpq++, '-Wno-error' was added to CXXFLAGS, even if the
compiler wasn't g++.
Billy G. Allie
structs from libpq-fe.h, as we previously discussed.
There turned out to be sloppy coding practices in more places than
I had realized :-(, but all in all I think it was a well-worth-while
exercise.
I ended up adding several routines to libpq's API in order to respond
to application requirements that were exposed by this work. I owe the
docs crew updates for libpq.sgml to describe these changes. I'm way too
tired to work on the docs tonight, however.
This is the last major change I intend to submit for 6.4. I do want
to see if I can make libpgtcl work with Tcl 8.0 before we go final,
but hopefully that will be a minor bug fix.
Here is a new patch for libpq, to make it work on Win32 again (since
the latest modifications broke it a little).
Please also add the file "libpq.rc" to the interfaces/libpq directory.
This will allow version-stamping of the generated DLL file, so that
automatic install programs (and interested users) can determine
the version of the file. The file is currently set as "prerelease".
Before the release, somebody should change the line "FILEFLAGS
VS_FF_PRERELEASE" to "FILEFLAGS 0". That information should probably
go into toos\RELEASE_CHANGES.
The patch is against the cvs as of ~ 1998-08-26 14:30 CEST.
//Magnus
This one is against the current archive (so it contains the one I send the
other day). It should fix the AIX problems. Andreas, could you please try
it? Thanks.
+ Wed Aug 26 16:17:39 CEST 1998
+
+ - Sync preproc.y with gram.y
+
+ Thu Aug 27 15:32:23 CEST 1998
+
+ - Fix some minor glitches that the AIX compiler complains about
+ - Added patchlevel to library
+
+ Fri Aug 28 15:36:58 CEST 1998
+
+ - Removed one line of code that AIX complains about since it was not
+ needed anyway
+ - Set library version to 2.6.1
> these patches define the UNLISTEN sql command. The code already
> existed but it was unknown to the parser. Now it can be used
> like the listen command.
> You must make clean and delete gram.c and parser.h before make.
+
+ Fri Aug 14 12:44:21 CEST 1998
+
+ - Added EXEC SQL DEFINE statement
+ - Set version to 2.4.0
+
+ Tue Aug 18 09:24:15 CEST 1998
+
+ - Removed keyword IS from DEFINE statement
+ - Added latest changes from gram.y
+ - Removed duplicate symbols from preproc.y
+ - Initialize sqlca structure
+ - Added check for connection to ecpglib
+ - Set version to 2.4.1
+
+ Thu Aug 20 15:31:29 CEST 1998
+
+ - Cleaned up memory allocation in ecpglib.c
+ - Set library version to 2.6
+