Commit Graph

1876 Commits

Author SHA1 Message Date
Bruce Momjian aad4cc7d0d Remove unused INET6 variable. 2002-06-23 20:30:48 +00:00
Bruce Momjian eb3901ec0d Remove INET6 from SSL. We don't support INET6 yet. 2002-06-23 14:56:16 +00:00
Bruce Momjian d84fe82230 Update copyright to 2002. 2002-06-20 20:29:54 +00:00
Bruce Momjian c2c2fd57ee Improve COPY syntax to use WITH clause, keep backward compatibility. 2002-06-20 16:00:44 +00:00
Bruce Momjian 134a1c8178 Use KAME accessor macros for addr8. 2002-06-17 15:55:09 +00:00
Michael Meskes 2fabb99388 Fixed parser bug concerning octal numbers in single quotes. 2002-06-17 13:23:27 +00:00
Dave Cramer 0daee96ed1 implemented refresh row 2002-06-16 18:26:53 +00:00
Tom Lane 32fecad80a Clean up gcc warnings. Avoid the bad habit of putting externs in .c
files rather than a header file where they belong.  Pay some modicum
of attention to picking global routine names that aren't likely to
conflict with surrounding applications.
2002-06-15 22:06:09 +00:00
Bruce Momjian 79ff2e96de PATCH SSL_pending() checks in libpq/fe-misc.c:
I am no longer pursuing a total non-blocking implementation.  I haven't
found a good way to test it with the type of work that I do with
PostgreSQL.  I do use blocking SSL sockets with this mod and have had no
problem whatsoever.  The bug that I fixed in this patch is exceptionally
hard to reproduce reliably.

Jack Bates
2002-06-15 20:01:31 +00:00
Bruce Momjian 240de617fb The method PgLargeObject::LOid() is missing an implementation in the .cc
file.


The program seems to compile ok, but when linking a program that uses
the call,
g++ chokes with an undefined reference error.


If you know how this problem might be fixed, list the solution below:
---------------------------------------------------------------------
I include the code:

Oid PgLargeObject::LOid(){
  return pgObject;
}

in the .cc file.

Chris Traylor
2002-06-15 19:30:40 +00:00
Bruce Momjian 2e58024066 This patch fixes a few minor problems with libpq++: remove the deprecated
PQExec(" ") in the wrapper around PQnotifies(), fix the Makefile for
the examples so that they will actually compile properly (with the
exception of #5, which depends on internal headers), make a minor change
to libpq++.h so that "make examples" now works on my machine, update
some documentation, fix some grammatical problems, and remove some of
the more hideous comments.

Neil Conway
2002-06-15 18:49:29 +00:00
Thomas G. Lockhart 133df7ce70 Add LOCALTIME and LOCALTIMESTAMP functions per SQL99 standard.
Remove ODBC-compatible empty parentheses from calls to SQL99 functions
 for which these parentheses do not match the standard.
Update the ODBC driver to ensure compatibility with the ODBC standard
 for these functions (e.g. CURRENT_TIMESTAMP, CURRENT_USER, etc).
Include a new appendix in the User's Guide which lists the labeled features
 for SQL99 (the labeled features replaced the "basic", "intermediate",
 and "advanced" categories from SQL92). features.sgml does not yet split
 this list into "supported" and "unsupported" lists.
2002-06-15 03:00:09 +00:00
Dave Cramer fd8b153912 added empty result set testing 2002-06-14 14:01:36 +00:00
Dave Cramer 6e2fab0a41 added empty result set testing 2002-06-14 10:56:13 +00:00
Bruce Momjian 1ed4a922b8 Yet another SSL patch. :-) This one adds some informational messages
on the server, if DebugLvl >= 2.

The patch also includes a late addition to the last patch
(X509_check_private_key()).  I'm not sure why it the currect
revision wasn't tagged.


Bear Giles
2002-06-14 04:38:04 +00:00
Bruce Momjian eb7afc1407 SSL patch that adds support for optional client certificates.
If the user has certificates in $HOME/.postgresql/postgresql.crt
and $HOME/.postgresql/postgresql.key exist, they are provided
to the server.  The certificate used to sign this cert must be
known to the server, in $DataDir/root.crt.  If successful, the
cert's "common name" is logged.

Client certs are not used for authentication, but they could be
via the port->peer (X509 *), port->peer_dn (char *) or
port->peer_cn (char *) fields.  Or any other function could be
used, e.g., many sites like the issuer + serial number hash.

Bear Giles
2002-06-14 04:36:58 +00:00
Bruce Momjian 55d053233c SSL support for ephemeral DH keys.
As the comment headers in be-secure.c discusses, EPH preserves
confidentiality even if the static private key (which is usually
kept unencrypted) is compromised.

Because of the value of this, common default values are hard-coded
to protect the confidentiality of the data even if an attacker
successfully deletes or modifies the external file.

Bear Giles
2002-06-14 04:31:49 +00:00
Bruce Momjian 19570420f5 UPDATED PATCH:
Attached are a revised set of SSL patches.  Many of these patches
are motivated by security concerns, it's not just bug fixes.  The key
differences (from stock 7.2.1) are:

*) almost all code that directly uses the OpenSSL library is in two
   new files,

     src/interfaces/libpq/fe-ssl.c
     src/backend/postmaster/be-ssl.c

   in the long run, it would be nice to merge these two files.

*) the legacy code to read and write network data have been
   encapsulated into read_SSL() and write_SSL().  These functions
   should probably be renamed - they handle both SSL and non-SSL
   cases.

   the remaining code should eliminate the problems identified
   earlier, albeit not very cleanly.

*) both front- and back-ends will send a SSL shutdown via the
   new close_SSL() function.  This is necessary for sessions to
   work properly.

   (Sessions are not yet fully supported, but by cleanly closing
   the SSL connection instead of just sending a TCP FIN packet
   other SSL tools will be much happier.)

*) The client certificate and key are now expected in a subdirectory
   of the user's home directory.  Specifically,

	- the directory .postgresql must be owned by the user, and
	  allow no access by 'group' or 'other.'

	- the file .postgresql/postgresql.crt must be a regular file
	  owned by the user.

	- the file .postgresql/postgresql.key must be a regular file
	  owned by the user, and allow no access by 'group' or 'other'.

   At the current time encrypted private keys are not supported.
   There should also be a way to support multiple client certs/keys.

*) the front-end performs minimal validation of the back-end cert.
   Self-signed certs are permitted, but the common name *must*
   match the hostname used by the front-end.  (The cert itself
   should always use a fully qualified domain name (FDQN) in its
   common name field.)

   This means that

	  psql -h eris db

   will fail, but

	  psql -h eris.example.com db

   will succeed.  At the current time this must be an exact match;
   future patches may support any FQDN that resolves to the address
   returned by getpeername(2).

   Another common "problem" is expiring certs.  For now, it may be
   a good idea to use a very-long-lived self-signed cert.

   As a compile-time option, the front-end can specify a file
   containing valid root certificates, but it is not yet required.

*) the back-end performs minimal validation of the client cert.
   It allows self-signed certs.  It checks for expiration.  It
   supports a compile-time option specifying a file containing
   valid root certificates.

*) both front- and back-ends default to TLSv1, not SSLv3/SSLv2.

*) both front- and back-ends support DSA keys.  DSA keys are
   moderately more expensive on startup, but many people consider
   them preferable than RSA keys.  (E.g., SSH2 prefers DSA keys.)

*) if /dev/urandom exists, both client and server will read 16k
   of randomization data from it.

*) the server can read empheral DH parameters from the files

     $DataDir/dh512.pem
     $DataDir/dh1024.pem
     $DataDir/dh2048.pem
     $DataDir/dh4096.pem

   if none are provided, the server will default to hardcoded
   parameter files provided by the OpenSSL project.

Remaining tasks:

*) the select() clauses need to be revisited - the SSL abstraction
   layer may need to absorb more of the current code to avoid rare
   deadlock conditions.  This also touches on a true solution to
   the pg_eof() problem.

*) the SIGPIPE signal handler may need to be revisited.

*) support encrypted private keys.

*) sessions are not yet fully supported.  (SSL sessions can span
   multiple "connections," and allow the client and server to avoid
   costly renegotiations.)

*) makecert - a script that creates back-end certs.

*) pgkeygen - a tool that creates front-end certs.

*) the whole protocol issue, SASL, etc.

 *) certs are fully validated - valid root certs must be available.
    This is a hassle, but it means that you *can* trust the identity
    of the server.

 *) the client library can handle hardcoded root certificates, to
    avoid the need to copy these files.

 *) host name of server cert must resolve to IP address, or be a
    recognized alias.  This is more liberal than the previous
    iteration.

 *) the number of bytes transferred is tracked, and the session
    key is periodically renegotiated.

 *) basic cert generation scripts (mkcert.sh, pgkeygen.sh).  The
    configuration files have reasonable defaults for each type
    of use.

Bear Giles
2002-06-14 04:23:17 +00:00
Bruce Momjian eb43af3210 Back out SSL changes. Newer patch available. 2002-06-14 04:09:37 +00:00
Bruce Momjian a9bd17616e Attached are a revised set of SSL patches. Many of these patches
are motivated by security concerns, it's not just bug fixes.  The key
differences (from stock 7.2.1) are:

*) almost all code that directly uses the OpenSSL library is in two
   new files,

     src/interfaces/libpq/fe-ssl.c
     src/backend/postmaster/be-ssl.c

   in the long run, it would be nice to merge these two files.

*) the legacy code to read and write network data have been
   encapsulated into read_SSL() and write_SSL().  These functions
   should probably be renamed - they handle both SSL and non-SSL
   cases.

   the remaining code should eliminate the problems identified
   earlier, albeit not very cleanly.

*) both front- and back-ends will send a SSL shutdown via the
   new close_SSL() function.  This is necessary for sessions to
   work properly.

   (Sessions are not yet fully supported, but by cleanly closing
   the SSL connection instead of just sending a TCP FIN packet
   other SSL tools will be much happier.)

*) The client certificate and key are now expected in a subdirectory
   of the user's home directory.  Specifically,

	- the directory .postgresql must be owned by the user, and
	  allow no access by 'group' or 'other.'

	- the file .postgresql/postgresql.crt must be a regular file
	  owned by the user.

	- the file .postgresql/postgresql.key must be a regular file
	  owned by the user, and allow no access by 'group' or 'other'.

   At the current time encrypted private keys are not supported.
   There should also be a way to support multiple client certs/keys.

*) the front-end performs minimal validation of the back-end cert.
   Self-signed certs are permitted, but the common name *must*
   match the hostname used by the front-end.  (The cert itself
   should always use a fully qualified domain name (FDQN) in its
   common name field.)

   This means that

	  psql -h eris db

   will fail, but

	  psql -h eris.example.com db

   will succeed.  At the current time this must be an exact match;
   future patches may support any FQDN that resolves to the address
   returned by getpeername(2).

   Another common "problem" is expiring certs.  For now, it may be
   a good idea to use a very-long-lived self-signed cert.

   As a compile-time option, the front-end can specify a file
   containing valid root certificates, but it is not yet required.

*) the back-end performs minimal validation of the client cert.
   It allows self-signed certs.  It checks for expiration.  It
   supports a compile-time option specifying a file containing
   valid root certificates.

*) both front- and back-ends default to TLSv1, not SSLv3/SSLv2.

*) both front- and back-ends support DSA keys.  DSA keys are
   moderately more expensive on startup, but many people consider
   them preferable than RSA keys.  (E.g., SSH2 prefers DSA keys.)

*) if /dev/urandom exists, both client and server will read 16k
   of randomization data from it.

*) the server can read empheral DH parameters from the files

     $DataDir/dh512.pem
     $DataDir/dh1024.pem
     $DataDir/dh2048.pem
     $DataDir/dh4096.pem

   if none are provided, the server will default to hardcoded
   parameter files provided by the OpenSSL project.

Remaining tasks:

*) the select() clauses need to be revisited - the SSL abstraction
   layer may need to absorb more of the current code to avoid rare
   deadlock conditions.  This also touches on a true solution to
   the pg_eof() problem.

*) the SIGPIPE signal handler may need to be revisited.

*) support encrypted private keys.

*) sessions are not yet fully supported.  (SSL sessions can span
   multiple "connections," and allow the client and server to avoid
   costly renegotiations.)

*) makecert - a script that creates back-end certs.

*) pgkeygen - a tool that creates front-end certs.

*) the whole protocol issue, SASL, etc.

 *) certs are fully validated - valid root certs must be available.
    This is a hassle, but it means that you *can* trust the identity
    of the server.

 *) the client library can handle hardcoded root certificates, to
    avoid the need to copy these files.

 *) host name of server cert must resolve to IP address, or be a
    recognized alias.  This is more liberal than the previous
    iteration.

 *) the number of bytes transferred is tracked, and the session
    key is periodically renegotiated.

 *) basic cert generation scripts (mkcert.sh, pgkeygen.sh).  The
    configuration files have reasonable defaults for each type
    of use.

Bear Giles
2002-06-14 03:56:47 +00:00
Dave Cramer b1ac89f594 removed personal test parameters 2002-06-13 14:37:30 +00:00
Dave Cramer 5598cbf641 Added test for newly implemented updateable result sets 2002-06-13 14:06:11 +00:00
Dave Cramer 603c46d8ce changes to accomodate updateable resultset mostly just call setSqlQuery on execute 2002-06-13 14:02:50 +00:00
Dave Cramer 7873bed77c Implemented updateable result sets based on raghu nidagal implementation 2002-06-13 13:52:16 +00:00
Dave Cramer ad88ee1e04 changed some commented out messages to use the Driver.debug and fixed first to read the underlying data into rowbuffer 2002-06-13 13:48:28 +00:00
Dave Cramer 3f857600b2 added messages for updateable result sets 2002-06-13 13:43:02 +00:00
Michael Meskes 0f865e17e2 Applied Lee Kindness' patch to fix one of memory allocation with floating point numbers. 2002-06-12 12:06:53 +00:00
Hiroshi Inoue 0484700cda 1) Fix a bug *double error message*.
2) Fix a bug *passowrd prompt in case of md5 authentication*.
3) Improve the DSN setup dialog.
2002-06-12 02:27:44 +00:00
Jan Wieck 469cb65aca Katherine Ward wrote:
> Changes to avoid collisions with WIN32 & MFC names...
> 1.  Renamed:
>       a.  PROC => PGPROC
>       b.  GetUserName() => GetUserNameFromId()
>       c.  GetCurrentTime() => GetCurrentDateTime()
>       d.  IGNORE => IGNORE_DTF in include/utils/datetime.h & utils/adt/datetim
>
> 2.  Added _P to some lex/yacc tokens:
>       CONST, CHAR, DELETE, FLOAT, GROUP, IN, OUT

Jan
2002-06-11 13:40:53 +00:00
Barry Lind b465f5307f The patch does the following:
Allows you to set the loglevel at runtime by adding ?loglevel=X to the connection URL, where 1 = INFO and 2 = DEBUG.
  Automatically turns on logging by calling DriverManager.setPrintWriter(new PrintWriter(System.out)) if one is not already set.
Adds a Driver.info() message that prints out the version number
Adds member variables logDebug and logInfo that can be checked before making logging methods calls
Adds a build number to the version number string.  This build number will need to be manually incremented when we see fit.

----------------------------------------------------------------------
Modified Files:
 	org/postgresql/Connection.java org/postgresql/Driver.java.in
 	org/postgresql/fastpath/Fastpath.java
 	org/postgresql/jdbc1/DatabaseMetaData.java
 	org/postgresql/jdbc2/Connection.java
 	org/postgresql/jdbc2/DatabaseMetaData.java
 	org/postgresql/largeobject/LargeObjectManager.java
 	org/postgresql/util/PSQLException.java
 	org/postgresql/util/Serialize.java
----------------------------------------------------------------------
2002-06-11 02:55:16 +00:00
Bruce Momjian ccab6f7402 Remove int16 from libpgeasy examples. Improve error reporting. 2002-06-07 16:53:40 +00:00
Barry Lind 936ff27696 fixed bug reported by cc.ais40@wanadoo.fr where getObject was returning an Integer for a smallint datatype instead of a Short 2002-06-07 16:46:24 +00:00
Bruce Momjian ce4a287f43 Fix interface example errors causes by backend changes.
Permaine Cheung
2002-06-07 03:55:15 +00:00
Dave Cramer 106dda2915 change table name to lower case in getColumns 2002-06-06 14:47:52 +00:00
Hiroshi Inoue 6cfb3ec593 Add missing win_setup.h. 2002-06-06 09:47:25 +00:00
Hiroshi Inoue 89d6f6808c Add *Int8 As* option. 2002-06-06 04:50:47 +00:00
Dave Cramer 520695701c fixed getImported/ExportedKeys to be simpler, and return the correct number of keys 2002-06-05 19:12:01 +00:00
Barry Lind b48b4ab48e fixed bug reported by Noel Rappin (nrappin@sockeye.com) java Array type handled Timestamps incorrectly 2002-06-03 17:52:05 +00:00
Bruce Momjian e0faed4bee Small patch to correct the default arraysize associated
with the Cursor object's fetchmany() method.  The API and
inline documentation state that the default is 1.  It
currently defaults to 5.

Patrick Macdonald
2002-06-03 17:42:11 +00:00
Bruce Momjian de1f32efc1 Add PQescapeString and PQescapeBytea for Win32. 2002-06-02 22:36:30 +00:00
Bruce Momjian 6bb39991da Allow pod2man 5.005p3 to work with our current sources. 2002-06-02 21:37:26 +00:00
Dave Cramer 3dd13ffd95 small fix to testExportedKeys 2002-05-30 16:39:26 +00:00
Dave Cramer 1ffd044af7 added imported/exported key testDatabaseMetaDataTest.java 2002-05-30 16:26:55 +00:00
Peter Eisentraut 7662419f1b Change PL/Perl and Pg interface build to use configured compiler and
Makefile.shlib system, not MakeMaker.
2002-05-28 16:57:53 +00:00
Hiroshi Inoue 79420840ee 1) Support Keyset Driven driver cursors.
2) Supprt ARD precision/scale and SQL_C_NUEMRIC.
3) Minimal implementation of SQLGetDiagField().
4) SQLRowCount() reports the result of SQLSetPos and SQLBulkOperation.
5) int8 -> SQL_NUMERIC for Microsoft Jet.
6) Support isolation level change.
7) ODBC3.0 SQLSTATE code.
8) Append mode log files.
2002-05-22 05:51:03 +00:00
Michael Meskes 7f660adeb1 - Fixed some parser bugs.
- Removed some simple rules to work arounf bison limit for now.
        - Update c_keywords.c to reflect changes in keywords.c.
2002-05-20 09:29:41 +00:00
Michael Meskes f35ced3de9 - Fixed reduce/reduce conflict in parser.
- Synced preproc.y with gram.y.
        - Synced pgc.l with scan.l.
        - Synced keywords.c.
2002-05-19 20:00:53 +00:00
Tom Lane f0811a74b3 Merge the last few variable.c configuration variables into the generic
GUC support.  It's now possible to set datestyle, timezone, and
client_encoding from postgresql.conf and per-database or per-user
settings.  Also, implement rollback of SET commands that occur in a
transaction that later fails.  Create a SET LOCAL var = value syntax
that sets the variable only for the duration of the current transaction.
All per previous discussions in pghackers.
2002-05-17 01:19:19 +00:00
Barry Lind e25c93c7eb fixed problem connecting to server with client_min_messages set to debug. The code was not expecting to receive notice messages during the connection handshake. 2002-05-14 03:00:35 +00:00
Hiroshi Inoue 16e22de53a Add a file for version control. 2002-05-09 04:10:22 +00:00
Tom Lane 4a2fe8e03d Fix typo in usage instructions. 2002-05-03 14:21:38 +00:00
Tom Lane 8338cc03a8 Remove the last traces of datatypes datetime and timespan. 2002-05-03 04:11:08 +00:00
Michael Meskes c8996f9c6b - Synced yet again.
- Fixed a typo in a comment printed by ecpg.
2002-04-28 17:20:03 +00:00
Hiroshi Inoue 4eac3919dd Fix for the following items about escape sequence
by Marcelo Aceto <aceto@newinf.com.br> .

1) Wrong translations of embedded escape sequences inside outer join escape
sequences.
2) Wrong translation of parameter markers inside outer joins and function
escape sequences.
3) Bad concatenation of date, time, timestamp constants with next word in
statement:
2002-04-25 02:50:08 +00:00
Peter Eisentraut 39e77dd365 Remove reference to NAMEDATALEN, which wasn't necessary anyway. 2002-04-24 23:00:40 +00:00
Bruce Momjian 80e232f2b8 Update jdbc errors_zh_TW.properties.
Zhenbang Wei
2002-04-24 02:30:53 +00:00
Bruce Momjian 30571b5496 I'm at the win32 error messages once more. The DLL load thingy doesn't
work on all win9x machines, so i made it go thru a l ookup table
instead, using the DLL as last resort.  I also moved this out of the
fe-misc.c file because of the size of the lookup ta ble. Who knows, we
might add more other win32 specific code there in the future.

I also fixed a small typo in the pg_config.h.win32 that made the
compiler compla in about the gnu snprintf declaration.

I tried to make this patch with psql coding style. I've successfully
tested this on win2k and win98 and it works fine (i.e. the mes sage
shows on win98 too, it didn't with the old implementation).

Magnus Naeslund
2002-04-24 02:26:06 +00:00
Bruce Momjian be9728acf1 pgdb.connect() seems to be broken on Python 2.0.1 (which ships with
Slackware 8), and perhaps on other Pythons, haven't checked.  Something in
the _pg.connect() call isn't working.  I think the problem stems from the
fact that 'host' is a named parameter of both _pg.connect and pgdb.connect,
and so Python treats it as a variable assignment, not a named parameter.

Uses non-named parameters.

Andrew Johnson
2002-04-24 01:58:31 +00:00
Bruce Momjian 2d81019493 Sorry for the package, but the following patch need to be applied to get
the new verion compiled on SCO Openserver 5.0.5 and Unixware 7.1.1

Nicolas Bazin
2002-04-24 01:56:20 +00:00
Hiroshi Inoue bf1f2e545c 1) Fix SQLProcedures().
2) Handle timestamp without time zone.
3) Improve SQLForeignKeys() in multibyte mode.
2002-04-23 04:14:13 +00:00
Michael Meskes 75c33220ad Synced preproc.y and keywords.c. 2002-04-22 18:54:43 +00:00
Thomas G. Lockhart 3fab49325d Include stdio.h and stdlib.h for completeness. 2002-04-21 19:51:44 +00:00
Peter Eisentraut ff4281472a Add missing include. 2002-04-20 03:46:16 +00:00
Bruce Momjian 2de427d1ef Ant 1.4.1 now requires for jdbc. Mention in HISTORY release notes. 2002-04-18 04:58:13 +00:00
Bruce Momjian a770da9d8d Back out python change, needs delay. 2002-04-18 03:38:30 +00:00
Bruce Momjian 3cd9399d86 Change docs to do 20! rather than larger. 2002-04-18 03:37:13 +00:00
Dave Cramer 4da51bfd6d Added some rudimentary table and column tests
added a setup/teardown to create and drop the connection, and table
2002-04-16 15:25:17 +00:00
Dave Cramer 710a711ac3 fixed getColumns as per Panu Outinen's email. At this point have only repaired the bug, haven't made it caseInsensitive 2002-04-16 13:28:44 +00:00
Michael Meskes cc592ed8ea Fixed typo in preproc/type.h 2002-04-16 07:03:56 +00:00
Bruce Momjian 5b92d004fa Fix for NOTIFY when NAMEDATALEN is nonstandard in server. Fix idea from
Tom Lane to move string storage to end of structure but keep pointer in
the same location.
2002-04-15 23:35:51 +00:00
Bruce Momjian 394eec1068 Fix for EINTR returns from Win9X socket operations:
In summary, if a software writer implements timer events or other events
 which generate a signal with a timing fast enough to occur while libpq
is inside connect(), then connect returns -EINTR.  The code following
the connect call does not handle this and generates an error message.
The sum result is that the pg_connect() fails.  If the timer or other
event is right on the window of the connect() completion time, the
pg_connect() may appear to work sporadically.  If the event is too slow,
 pg_connect() will appear to always work and if the event is too fast,
pg_connect() will always fail.

David Ford
2002-04-15 23:34:17 +00:00
Hiroshi Inoue ab1ead6b97 1) Fix a bug about reporting varchar info thanks to Aceto.
2) Introcuced 3 drivers.
3) The version is now 7.02.0001.
2002-04-15 02:46:00 +00:00
Michael Meskes 70fb71f487 - Synced preproc.y with gram.y
- Fixed one bug in structure handling resulting in using sizeof indicator instead of variable.
2002-04-14 08:59:16 +00:00
Hiroshi Inoue 40eb5495c9 1) Fix a bug in declare/fetch mode.
2) Suppress some error logs for the request to other drivers.
2002-04-12 08:03:12 +00:00
Tom Lane 902a6a0a4b Restructure representation of aggregate functions so that they have pg_proc
entries, per pghackers discussion.  This fixes aggregates to live in
namespaces, and also simplifies/speeds up lookup in parse_func.c.
Also, add a 'proimplicit' flag to pg_proc that controls whether a type
coercion function may be invoked implicitly, or only explicitly.  The
current settings of these flags are more permissive than I would like,
but we will need to debate and refine the behavior; for now, I avoided
breaking regression tests as much as I could.
2002-04-11 20:00:18 +00:00
Hiroshi Inoue b210b16265 Prevent an infinite loop of error reporting. 2002-04-10 08:18:54 +00:00
Hiroshi Inoue 557de2a715 Let psqlodbc30 be compilable without /D DRIVER_CURSOR_IMPLEMENT. 2002-04-09 03:58:33 +00:00
Tatsuo Ishii 38671e01e9 Fix PQescapeBytea/PQunescapeBytea so that they handle bytes > 0x7f.
This is necessary for mulibyte character sequences.
See "[HACKERS] PQescapeBytea is not multibyte aware" thread posted around
2002/04/05 for more details.
2002-04-08 03:48:10 +00:00
Bruce Momjian 811f7df274 When a macro is replaced by the preprocessor, pgc.l reaches a end of
file, which is not the actual end of the file. One side effect of that
is that if you are i n a ifdef block, you get a wrong error telling you
that a endif is missing.

This patch corrects pgc.l and also adds a test of this problem to
test1.pgc. To  convince you apply the patch to test1.pgc first then try
to compile the test the n apply the patch to pgc.l.

The patch moves the test of the scope of an ifdef block to the end of
the file b eeing parsed, including all includes files, ... .

Nicolas Bazin
2002-04-05 11:39:47 +00:00
Hiroshi Inoue 0e11aea246 Fix a bug in SQLError(). 2002-04-04 23:29:16 +00:00
Hiroshi Inoue af10378ab0 Fix a bug in multibyte_strchr(). 2002-04-04 01:36:17 +00:00
Hiroshi Inoue 2966001c77 Fix compiler warnings. 2002-04-02 10:57:25 +00:00
Hiroshi Inoue f8da3990b5 [HACKERS] Proposed patch for ODBC driver w/ C-a-n-c-e-l
From: Bradley McLean <brad@bradm.net>

Patch against 7,2 submitted for comment.

This seems to work just fine; Now, when our users submit a 2 hour
query with four million row sorts by accident, then cancel it 30 seconds
later, it doesn't bog down the server ...
2002-04-02 10:50:50 +00:00
Barry Lind 8860110a74 Removed error message that was incorectly being issued. This fixes a problem reported a few months ago where a select in a rule was causing an insert statement to return a result set which the code was explicitly prohibiting. 2002-04-02 06:24:10 +00:00
Hiroshi Inoue 6df395f63a 1) Add rollback functionality to updatable cursors.
2) Implement some options for SQLGetDescField().
3) Handle *Inifinity* timestamp for SQL_C_CHAR type output.
4) Separate Unicode conversions from common implementations.
5) Improve internal parse_statement() function.
2002-04-01 03:01:15 +00:00
Bruce Momjian eb1ee9e63f Fix ODBC warnings about missing parens and pg_ismb not used (added
#ifdef NOT_USED).
2002-03-29 07:48:56 +00:00
Bruce Momjian b2c89fa7af Fox for old python PyMem_DEL, was PyMem_Del, 2002-03-29 07:45:39 +00:00
Bruce Momjian ed6cce4c7b Fix '#' commant to be proper C comment. 2002-03-29 07:21:25 +00:00
Hiroshi Inoue 6852741c18 [2002-03-28]
1) Prepare to separate 4 kinds of Descriptor handles.
2) Detect the transaction status more naturally.
3) Improve Parse Statement functionality for the use
   of updatable cursors.
4) Improve updatable cursors.
5) Implement SQLGetDescField() and improve SQLColAttribute().
6) etc.
2002-03-28 08:08:07 +00:00
Barry Lind 2442e79e32 applied patch from Liam Stewart fixing a message in the properties file
also fixed a NPE when calling the next() method on a result set after the
connection or resultset has been closed. (bug reported by Hans Deragon)
2002-03-27 05:33:27 +00:00
Barry Lind da631e931f applied patch submitted by Florian (mailing-list@urbanet.ch) for BigDecimal support 2002-03-26 06:33:21 +00:00
Barry Lind ef7d791074 Changed QueryExecutor.java to correctly read responses from the backend.
Fixed NPE when database name was not passed on the jdbc connection URL
Fixed Connection.isClosed() to not hit the DB for every call
2002-03-26 05:52:50 +00:00
D'Arcy J.M. Cain 102fe3f845 Further changes following discussion on INTERFACES mailing list:
- Use PyObject_Del() rather than macro version
  - Check version and drop back to PyMem_Del() for older systems.
2002-03-26 01:50:14 +00:00
Bruce Momjian 51b55730ae Fix for ODBC compile warnings. 2002-03-25 01:53:55 +00:00
Tom Lane 5eed835b9a Indenting #if commands is not portable, is it? 2002-03-24 18:22:21 +00:00
Tom Lane 6137ed1b59 Fix minor syntax error. 2002-03-21 18:28:07 +00:00
Michael Meskes 73b92d10c6 Added typedef patches and a new option '-c' to automatically create C typedefs from SQL ones. 2002-03-21 09:42:52 +00:00
Dave Cramer 78d40a2a2f Two versions of QueryExecutor, currently only version 2 works 100%
these versions adhere to the backend protocol better than previous version
fixes problem when an error occurs on the backend, and the connection is still used
previous versions were throwing an exception half way through the protocol, leaving it
indeterminate.
also removes empty query code, should speed things up a bit
2002-03-21 03:20:30 +00:00
Dave Cramer 54cc549d8f modifications to the way the protocol is handled to be consistent with
QueryExecutor. This includes:
1) only exit after we receive a 'Z' packet
2) append error messages to a buffer and throw the exception at the end
2002-03-21 02:52:37 +00:00
Dave Cramer 00923229c2 Part of Anders Bengtsson's patch to clean up Connection.java 2002-03-21 02:40:03 +00:00
Dave Cramer d96c29ab30 Applied Anders patch to move the startup code out of Connection into StartupPacket
* Introduces a new class, StartupPacket.
* Moves a lot of constants from Connection to StartupPacket.
* Makes two instance variables in Connection into locals.
2002-03-21 02:39:06 +00:00
Michael Meskes 8e9b215fdf Just one more test case. 2002-03-20 21:00:24 +00:00
D'Arcy J.M. Cain 861c336b51 PyGreSQL causes a segfault when used with a Python executable that was
compiled with --with-pymalloc.  This change fixes that.  Thanks to
Dave Wallace <dwallace@udel.edu>
2002-03-20 14:36:06 +00:00
D'Arcy J.M. Cain b752788510 Bump version number to match tree. 2002-03-19 13:21:14 +00:00
D'Arcy J.M. Cain d6b4153f93 Fix name in comments and add info about this module's place in PyGreSQL. 2002-03-19 13:20:52 +00:00
Bruce Momjian f5810bb8a5 Add missing trailing semicolons to ecpg rules.
Neil Conway
2002-03-19 12:56:38 +00:00
Bruce Momjian eb1fb8650f >Added ServerEncoding
>       Korean (JOHAB), Thai (WIN874),
>       Vietnamese (TCVN), Arabic (WIN1256)
>
>Added ClientEncoding
>       Simplified Chinese (GBK), Korean (UHC)
>
>Add PsqlODBC and document ...etc patch.


"JDBC patch" is delivered, too. :-)



Eiji Tokuya
2002-03-19 02:48:45 +00:00
Bruce Momjian d3337c6e3f > I am backing out this patch. Please resubmit with this corrected. Thanks.
>
> I am running Python 1.5.

Therein lies the problem... :)

Since it appears you have the requirement of supporting old python
versions, attached is just the pgdb.py part of the patch (with a fix for
DateTime handling). It has the same functionality but certainly won't be
quite as fast. Given the absence of _PyString_Join in python1.5, it's a
pain to get the C variants working for all versions. The pgdb.py patch
does leaves the hooks in, should someone wish to do the optimization at a
later point.

Elliot Lee
2002-03-19 02:47:57 +00:00
Dave Cramer 525b19399c applied patch from Liam Stewart
If one is trying to compile a JDBC 1 driver and junit.jar is in the
CLASSPATH, then the build fails as ant tries to build the JDBC 2 test
classes. This patch fixes this problem by excluding the jdbc 2 files
unless the jdk1.2+ property is set.
2002-03-19 01:32:48 +00:00
Dave Cramer 202a19e47b Fixes bug where query hangs if there is an error in the query, went back to
code before QueryExecutor class was created and copied behaviour
2002-03-18 04:16:33 +00:00
Dave Cramer 134fe5ec61 fixed QueryExecuter to deal with multiple errors
previously it was throwing a SQLException as soon as the error message was
received from the backend. This did not allow the protocol to finish properly
now, simply collects error messages from the backend until the query is done
and throws exception at the end
Also added setLogLevel to Driver.java, and made the log levels public
2002-03-16 02:15:23 +00:00
Bruce Momjian efd45bc68f Manually clean up indenting of ecpg lex/yacc files, OK'ed by Michael
Meskes.  These files are not touched by pgindent so this has to be
manually done.
2002-03-15 21:46:59 +00:00
Dave Cramer a2b5512929 patch from Alexey Slynko
This patch solve problems with arrays in latest development JDBC driver
2002-03-15 04:11:49 +00:00
Hiroshi Inoue 01e322652b 1) Internal improvements to handle updatable cursors(1st cut).
2) Fix a bug in SQLColAttribute().
2002-03-14 05:42:04 +00:00
Bruce Momjian 80bbfe76d5 Inlined a patch to add the libpq setNoticeProcessor capability to
libpq++.

Ofir Reichenberg
2002-03-11 15:08:18 +00:00
Michael Meskes 9f9e3c9803 Changed the version numbers, but did not commit the Makefiles. 2002-03-11 12:56:02 +00:00
Hiroshi Inoue dadb718b10 Bug fixes for the 2002-03-08 change.
1) Put back the error message for SQLError().
2) Change Disallow premature to handle the SELECTed
   result.
3) Put back the behavior of AUTUCOMMIT mode change.
4) Fix SQLColumns for ODBC3.0.

5) Improve the handling of variable bookmark in ODBC3.0.
6) Enable Recognize Unique Index Button.
2002-03-11 10:25:57 +00:00
Michael Meskes 7f7fb4e64c Fixed two bugs in define command in pgc.l 2002-03-10 12:09:54 +00:00
Bruce Momjian ee27436f6c Disable brackets in multi-statement rules, as discussed. 2002-03-10 06:00:15 +00:00
Dave Cramer ee2154829e Added a check for not calling next() before getting objects from the result set,
moved the check for columnIndex into same call
check at the top of all getXXX
added appropriate error
2002-03-09 17:36:14 +00:00
Dave Cramer 1eb31d197d Here is a small patch that cleans up some error reporting in the JDBC driver. PSQLExceptions are thrown instead of SQLExceptions and if a warning is received while waiting for the backend secret key, that warning is chained to the new Connection object instead of generating an exception. A couple new error messages have been added. 2002-03-09 17:08:39 +00:00
Hiroshi Inoue fc70104725 Remove compile errors. 2002-03-08 09:50:39 +00:00
Hiroshi Inoue 4b47467a6b 1) Implement SQLParamOptions().
2) Handle Multiple results and implement SQLMoreResult().
3) Improve multibyte handling thanks to Eiji Tokuya.
4) Add new options.
   LF <-> CR/LF converion.
   TRUE is -1 (for VB).
5) Introduce unicode(UCS-2) support.
6) Reduce the length of connection strings.
7) Improve SQLError, SQLGetDiagRec(ODBC 3.0).
8) Implement SQLTablePrivileges().
9) Miscellaneous changes for ODBC 3.0 support.
2002-03-08 08:52:55 +00:00
Bruce Momjian 9956c566e3 Add libpgeasy example file. 2002-03-06 14:40:05 +00:00
Michael Meskes 5ca7c8e314 Synced parser with backend. 2002-03-06 10:10:52 +00:00
Bruce Momjian 92288a1cf9 Change made to elog:
o  Change all current CVS messages of NOTICE to WARNING.  We were going
to do this just before 7.3 beta but it has to be done now, as you will
see below.

o Change current INFO messages that should be controlled by
client_min_messages to NOTICE.

o Force remaining INFO messages, like from EXPLAIN, VACUUM VERBOSE, etc.
to always go to the client.

o Remove INFO from the client_min_messages options and add NOTICE.

Seems we do need three non-ERROR elog levels to handle the various
behaviors we need for these messages.

Regression passed.
2002-03-06 06:10:59 +00:00
Dave Cramer 39c58b9065 changed Cancel to cancel 2002-03-06 03:07:45 +00:00
Dave Cramer ffe356b5dd backed out changes for cancel, no need to look for two 'Z' responses 2002-03-05 20:11:57 +00:00
Dave Cramer 29ea8ff9b1 Patch by Nicolas Verger to correctly propogate SQLWarning to the Statement and ResultSet 2002-03-05 18:02:44 +00:00
Dave Cramer ff2f9b663f fixed cancel query bug introduced by patch 2002-03-05 18:01:27 +00:00
Bruce Momjian 0416641baa At this moment, --enable-debug adds debugging information to most of the
parts o f postgresql. The jdbc drivers are never compiled with debugging
support. This p atch make sure that debugging information is added to
the jdbc jar when the --en able-debug is added. This was usefull for me
for debugging some java jdbc poolin g objects but this might perhaps be
usefull for other people too?

Dries Verachtert
2002-03-05 17:55:23 +00:00
Bruce Momjian 6024ac1ba0 Back out old version and update with newer patch of:
Fix for non-blocking connections in libpq

Bernhard Herzog
2002-03-05 06:07:27 +00:00
Bruce Momjian a8bd7e1c6e > Tatsuo Ishii wrote:
> > > > It was made to cope with encoding such as an Asian bloc in 7.2Beta2.
> > > >
> > > > Added ServerEncoding
> > > >         Korean (JOHAB), Thai (WIN874),
> > > >         Vietnamese (TCVN), Arabic (WIN1256)
> > > >
> > > > Added ClientEncoding
> > > >         Simplified Chinese (GBK), Korean (UHC)
> > > >
> > > >
> > > >
> http://www.sankyo-unyu.co.jp/Pool/postgresql-7.2b2.newencoding.diff.tar.gz
> > > > (608K)
> > >
> > > Looks good.  I need some people to review this for me.
> >
> > For me they look good too. The only missing part is a
> > documentation. I will ask him to write it up. If he couldn't, I will
> > do it for him.
> > > The diff is 3mb
> > > but appears to address only additions to multibyte.  I have attached a
> > > list of files it modifies.  Also, look at the sizes of the mb/
> > > directory.  It is getting large:
> > >
> > >   4       ./CVS
> > >   6       ./Unicode/CVS
> > >   3433    ./Unicode
> > >   6197    .
> >
> > Yes. We definitely need the on-the-fly encoding addition capability:
> > i.e. CREATE CHRACTER SET in the future...
> > --
> > Tatsuo Ishii
> >
> >

Address chainge.

http://www.sankyo-unyu.co.jp/Pool/postgresql-7.2.newencoding.diff.gz

Add PsqlODBC and document ...etc patch.

Eiji Tokuya
2002-03-05 05:52:50 +00:00
Bruce Momjian 33766e680d Here's a patch against 7.1.3 that fixes a problem with sending larger
queries over non-blocking connections with libpq. "Larger" here
basically means that it doesn't fit into the output buffer.

The basic strategy is to fix pqFlush and pqPutBytes.

The problem with pqFlush as it stands now is that it returns EOF when an
error occurs or when not all data could be sent. The latter case is
clearly not an error for a non-blocking connection but the caller can't
distringuish it from an error very well.

The first part of the fix is therefore to fix pqFlush. This is done by
to renaming it to pqSendSome which only differs from pqFlush in its
return values to allow the caller to make the above distinction and a
new pqFlush which is implemented in terms of pqSendSome and behaves
exactly like the old pqFlush.

The second part of the fix modifies pqPutBytes to use pqSendSome instead
of pqFlush and to either send all the data or if not all data can be
sent on a non-blocking connection to at least put all data into the
output buffer, enlarging it if necessary. The callers of pqPutBytes
don't have to be changed because from their point of view pqPutBytes
behaves like before. It either succeeds in queueing all output data or
fails with an error.

I've also added a new API function PQsendSome which analogously to
PQflush just calls pqSendSome. Programs using non-blocking queries
should use this new function. The main difference is that this function
will have to be called repeatedly (calling select() properly in between)
until all data has been written.

AFAICT, the code in CVS HEAD hasn't changed with respect to non-blocking
queries and this fix should work there, too, but I haven't tested that
yet.

Bernhard Herzog
2002-03-05 05:20:12 +00:00
Dave Cramer 17b6baf17d Doug Fields patch to prevent exception being thrown on zero length arrays 2002-03-05 03:46:03 +00:00
Dave Cramer fe4e95f682 patch from Zhenbang Wei
The errors_zh_TW.properties must be translated using native2ascii or it
will raise an exception. Please replace the old file.
2002-03-05 03:33:29 +00:00
Dave Cramer 8f83590aa1 Patch from Ryouichi Matsuda
An attached patch corrects problem of this bug and fractional second.


 The handling of time zone was as follows:

   (a) with time zone
       using  SimpleDateFormat("yyyy-MM-dd HH:mm:ss z")
   (b) without time zone
       using  SimpleDateFormat("yyyy-MM-dd HH:mm:ss")


 About problem of fractional second,
 Fractional second was changed from milli-second to nano-second
2002-03-05 03:29:30 +00:00
Dave Cramer 7aa6270fc7 patch from Mitchel Friedman to fix getTables 2002-03-05 03:02:52 +00:00
Dave Cramer 521017c5d0 patch from Vicktor to fix Numeric decimal digits in getColumns 2002-03-05 02:14:08 +00:00
Bruce Momjian fef790cc03 Back out python patch:
Elliot Lee wrote:
> This patch to the python bindings adds C versions of the often-used
query
> args quoting routines, as well as support for quoting lists e.g.
> dbc.execute("SELECT * FROM foo WHERE blah IN %s", ([1,2,3],))
2002-03-05 02:01:44 +00:00
Bruce Momjian 14b05248cc This patch to the python bindings adds C versions of the often-used
query args quoting routines, as well as support for quoting lists e.g.
dbc.execute("SELECT * FROM foo WHERE blah IN %s", ([1,2,3],))

Elliot Lee
2002-03-05 00:23:13 +00:00
Bruce Momjian 294f0d4bd6 Add PQunescapeBytea libpq function.
Everyone using libpq and bytea is probably having to invent this wheel..

Patrick Welche
2002-03-04 23:59:14 +00:00
Bruce Momjian b2aade0e4b Improve libpgeasy API for multiple result sets, add example. 2002-03-04 18:50:21 +00:00
Tom Lane a616cbc5e3 Fix bogus error check in pg_execute, per report from lbayuk@mindspring.com. 2002-03-04 02:41:49 +00:00
Tom Lane 78ab803402 Don't bother to request SSL connection over a Unix socket, since the
postmaster won't accept the request anyway.  (If your kernel can't
be trusted, SSL will not help you.)
2002-03-02 00:49:22 +00:00
Hiroshi Inoue e1716475e4 Add files for Unicode support. 2002-03-01 07:18:34 +00:00
Hiroshi Inoue fc3726b4b9 Improve the handling of ODBC escape(a request from Marcelo Aceto).
Change SQLGetFunctions() to reply not yet implemented ODBC 3.0
functions precisely.
2002-02-27 01:43:24 +00:00
Dave Cramer 7776319a7e Implementation for cancelQuery by Grant Finnemore <grantf@guruhut.co.za> 2002-02-26 02:15:55 +00:00
Dave Cramer f66f7a542f compiles correctly but still doesn't work with jdk 1.4 2002-02-24 16:12:51 +00:00
Peter Eisentraut 42c3381fc7 Heimdal support (Kerberos V implementation from KTH) 2002-02-23 04:17:47 +00:00
Peter Eisentraut 0055a39390 Add -Wno-error to CFLAGS, so the rest of the tree can compile with
-Werror.
2002-02-23 04:16:04 +00:00
Dave Cramer 391e1f7b7f fixed compile error 2002-02-22 03:22:31 +00:00
Dave Cramer 8c17e4e0fc This patch fixes the exception thrown to inform the user the method
getColumnClassName(int) is not implemented. This will futher fixes method
ResultSet.getObject(int) since it requires the getColumnClassName(int) method to return the proper java class used to map the database column.

auther Ed Yu
2002-02-22 02:58:24 +00:00
Dave Cramer deaad93462 Patch from Cormac Twomey
fixes getIndexInfo throwing NullPointerException
fixes getIndexInfo improper results when multiple key indexs are used
2002-02-22 02:40:09 +00:00
Dave Cramer 0786c61c14 Patch from Cormac Twomey
fixes getIndexInfo throwing NullPointerException
fixes getIndexInfo improper results when multiple key indexs are used
2002-02-22 02:17:13 +00:00
Dave Cramer 178961ad47 now compiles clean with jdk 1.4 2002-02-22 02:07:30 +00:00
Hiroshi Inoue c03e7fbadc Remove compile warnings in multibute mode. 2002-02-18 05:54:50 +00:00
Hiroshi Inoue 3c16d095b5 The version is now 7.01.0010.
1) Handle parameter array.
2) Allow re-use of the connection handle after SQLDisconnect.
3) Reject NULL if no indicator specified.
4) Improve the handling of '_' in table name.
5) Unify internal begin/commit/abort operations.
6) Change SQLTables() to return null not "" for the
   table_owner.
7) Fix a bug about parameter handling reported by Benoit Menendez.
8) Add cast in handling ODBC date/time escape sequences.
9) Fix a bug about cache_size handing in declare/fetch mode.

[ODBC3.0 related]
10) Improve the handling of descriptor handles(ODBC3.0).
11) Improve the type handling of some types for ODBC3.0.

[Thanks to Marcelo Aceto for his useful patches]
12) Allow nested ODBC escape.
13) Allow changing autocommit on/off inside the transaction
    block.
14) Improve the handling of ODBC scalar functions.
2002-02-18 03:16:11 +00:00
Hiroshi Inoue b6db89a02d Separate info30.c from info.c. 2002-02-18 02:15:04 +00:00
Hiroshi Inoue 22d7fa7de4 Add files for ODBC3.0 support. 2002-02-18 01:43:24 +00:00
Bruce Momjian 4f5991552c Remove ODBC todo, add to main TODO. 2002-02-18 01:15:46 +00:00
Peter Eisentraut 673b48becb Remove warning about automatic inclusion of sqlca. 2002-02-15 17:46:57 +00:00
Peter Eisentraut 3ac85b86cb Update Win32-world version number of libpq++. 2002-01-30 21:59:33 +00:00
Michael Meskes cb8961ab47 Added patch to temporarily disable locale for descriptors too (Christof) 2002-01-23 16:34:06 +00:00
Tom Lane 04c8d4c660 libpq++/pgconnection.h must not include postgres_fe.h, else it fails to
compile in client apps that use the standard installed header set.
To allow removing that include, move DLLIMPORT definitions out of c.h
and into the appropriate port-specific header files.
2002-01-22 19:02:40 +00:00
Dave Cramer 83b5ae65a0 Fixes to getImportedKeys/getExportedKeys from Jason Davies
Previous versions did not correctly identify primary/foreign keys
2002-01-18 17:21:51 +00:00
Michael Meskes 2ab3a88879 Accept subsequent commits. This should have been just a warning anyway. I
cannot see a reason why it should be an error.
2002-01-18 15:51:00 +00:00
Barry Lind 2843a13e51 Applied patch submitted by Ryouichi Matsuda (r-matuda@sra.co.jp) that fixed a problem with leading zeros being lost on fractional seconds when setting a timestamp value on a PreparedStatement. 2002-01-15 07:37:33 +00:00
Barry Lind d013dbed75 Applied patch from Ryouichi Matsuda <r-matuda@sra.co.jp> where the jdbc
driver was not properly handling timestamptz datatype when using the
getObject() method on ResultSet.  Fix adds this datatype to the object mappings.
2002-01-15 06:55:13 +00:00
Tom Lane eab6776358 Ensure that ecpg/test is cleaned by higher-level 'make clean'. 2002-01-14 17:49:56 +00:00
Bruce Momjian d43b364eb9 Small AIX fixes from Rick Flower. 2002-01-14 15:34:41 +00:00
Michael Meskes 7138a1e5fc - Fixed variable handling for struct members.
- Removed check for array input. An attribut might store the
          complete array.
2002-01-13 08:52:09 +00:00
Michael Meskes 051a4f233f Added Christof's fixes. 2002-01-11 14:43:11 +00:00
Hiroshi Inoue d91b445117 *** empty log message *** 2002-01-11 06:01:47 +00:00
Hiroshi Inoue f43b5de649 Add a directory to save the changes until 7.3-tree is branched. 2002-01-11 02:50:01 +00:00
Michael Meskes 7955f98774 Include sqlca.h automatically. 2002-01-10 10:42:54 +00:00
Tom Lane 92a2598f97 The result of getopt() should be compared to -1, not EOF, per
pgsql-hackers discussion of this date.
2002-01-10 01:11:45 +00:00
Tom Lane d079c419d2 Fix include paths for case of VPATH build. 2002-01-09 00:06:42 +00:00
Tom Lane a34f313223 Fix copy-and-paste mistake exposed by gcc warning. 2002-01-08 23:34:47 +00:00
Peter Eisentraut 154ccb6040 Revert last change (CFLAGS+=-g). Probably was a mistake... 2002-01-08 20:41:28 +00:00
Tom Lane 61dd8b6dc4 Remove shift/reduce conflicts introduced by last change. 2002-01-08 19:02:51 +00:00
Michael Meskes 1e15f9e119 Fixed array pointers, no longer using void * in arithmetics. 2002-01-08 14:25:06 +00:00
Michael Meskes 54452833ef Fixed parser to accept initializing expressions starting with "(". 2002-01-07 16:25:45 +00:00
Peter Eisentraut 731204e090 Editorial review 2002-01-07 02:29:15 +00:00
Barry Lind 734e421278 Bugfix for bug reported by Marcus Better (marcus@dactylis.com). When preforming
a get on a bytea value the code was running the raw value from the server
through character set conversion, which if the character set was SQL_ASCII
would cause all 8bit characters to become ?'s.
2002-01-05 22:26:23 +00:00
Tom Lane ee051baeac Make sure that all <ctype.h> routines are called with unsigned char
values; it's not portable to call them with signed chars.  I recall doing
this for the last release, but a few more uncasted calls have snuck in.
2001-12-30 23:09:42 +00:00
Michael Meskes 988fdce5d1 - Removed space_or_nl and line_end from pgc.l.
- Fixed several bugs concerning arrays of structs including a memory
  allocation bug.
2001-12-23 12:17:41 +00:00
Peter Eisentraut cb85a62807 Czech translation updates from Karel Zak 2001-12-21 22:30:49 +00:00
Thomas G. Lockhart daefb89e5a Remove duplicate lines from fouled up last commit (my DSL line failed
during the CVS update, leaving locks and bad files).
2001-12-21 06:01:36 +00:00
Bruce Momjian f3292901b9 More comment for libpgeasy. 2001-12-14 02:15:04 +00:00
Bruce Momjian 2e05d3ecdb Fix double-memory free in libpgeasy; problem introduced yesterday. 2001-12-14 00:52:53 +00:00
Bruce Momjian bdafb40077 Clean up comment in libpgeasy. 2001-12-14 00:40:31 +00:00
Peter Eisentraut 3aaaf5aeee Add Swedish 2001-12-13 22:06:33 +00:00
Peter Eisentraut cfe88fdf4b update 2001-12-13 22:04:40 +00:00
Peter Eisentraut 60e42602a0 revert last change 2001-12-13 18:39:04 +00:00
Bruce Momjian ba578ae667 Free libpgeasy result structure on database close; fixed memory leak. 2001-12-13 09:40:18 +00:00
Barry Lind 3dd85bcb08 Applied patch from Thomas O'Dowd that fixes timestamp parsing. The jdbc code
wasn't updated to handle more than two decimal digits for fractional seconds
that now are possible in 7.2.  This patch fixes the timestamp parsing logic.
I have built and tested on both jdbc1 and jdbc2.
2001-12-11 04:48:05 +00:00
Barry Lind 45a6343ebb Patch from Ned Wolpert that fixes a bug that caused the cache of types not
to be used, causing extra sql statements to be executed.  This was a
significant performance problem with the database meta data classes.
The fix is a simple one liner.
2001-12-11 04:44:23 +00:00
Michael Meskes 0a7a8256b8 committed the missing files 2001-12-10 14:55:47 +00:00
Peter Eisentraut 3f1d142c59 Add French translation 2001-12-10 13:03:55 +00:00
Thomas G. Lockhart 9ed2ac291b Remove duplicate lines from previous patch attempt. Trouble with my
DSL line at home broke things right in the middle of an update. :(
2001-12-10 00:11:06 +00:00
Thomas G. Lockhart abbd64cddf Support ODBC-style CURRENT_TIME, CURRENT_USER, etc with trailing empty
parens. This is not SQL spec syntax, so later we will remove
 this extension from gram.y.
2001-12-10 00:01:14 +00:00
Michael Meskes a4420c4970 Fixed several bugs concerning indicators and added error messages instead of segfaults. 2001-12-09 15:27:49 +00:00
Michael Meskes d6fbb10556 Fix ecpg to allow pointer to structs. 2001-12-08 20:43:35 +00:00
Michael Meskes 9992f2b104 - Removed debug message from preproc.y.
- Fixed some bugs in exec sql var and exec sql type command.
2001-12-06 14:46:20 +00:00
Michael Meskes ee14711ce8 - Fixed variable handling in AT statement.
- Fixed bug that caused segfault when given incorrect DB name.
        - Fixed bug in ecpglib causing indicator to list the size of the
          variable instead of the size of the data.
2001-12-05 15:32:07 +00:00
Michael Meskes 388008cdd7 Fixed dumping of structs without indicators. 2001-12-04 12:33:15 +00:00
Tom Lane 4ea2b8f556 Pg_lo_open must OR together multiple modes, not AND them. Per report
from Andreas Kretzer.
2001-12-03 14:49:46 +00:00
D'Arcy J.M. Cain d75ed09b31 Bump version to 3.3. Mostly this is because there is some confusion about
the latest version and I wanted to make sure that there was a clean release.

I also change the build files as I discussed in my letter of Nov 6, 2001.  At
the time I was asked to hold off until after the release.
2001-12-03 12:39:44 +00:00
Tom Lane ae8a9b8a9f Remove code to lookup WinSock error strings in netmsg.dll; according to
Magnus Hagander that DLL only contains error strings for the Net***
functions, *not* WinSock.  We need to look for a workable solution for
older Windows flavors ... but it won't happen for PG 7.2.
2001-12-03 00:28:24 +00:00
Peter Eisentraut 15abc7788e More correct way to check for existence of types, which allows to specify
which include files to consider.  Should fix BeOS problems with int8 types.
2001-12-02 11:38:40 +00:00
Peter Eisentraut ad81c99984 Update since left and right are no longer key words. 2001-12-02 11:36:04 +00:00
Peter Eisentraut 0556f7ca87 NLS updates, most notably fixed zh_TW translations 2001-11-29 18:59:28 +00:00
Tom Lane 3312b8ed3c Load netmsg.dll locally in winsock_strerror, to avoid actual and
potential problems discussed in pgsql-interfaces.
2001-11-28 19:40:29 +00:00
Bruce Momjian f6e1ebb166 No longer need define test in md5.h because of Hiroshi's win_md5.c. 2001-11-28 00:16:53 +00:00
Tom Lane b3ff03b5d4 strcat should obviously be strcpy here. 2001-11-27 18:21:51 +00:00
Bruce Momjian 0f74fb7871 Chinese PO patch
Laser.
2001-11-27 17:51:54 +00:00
Barry Lind 4bc8c8dd95 This patch fixes a bug reported by Graham Leggett (minfrin@sharp.fm).
The bug was that any insert or update would fail if the returned oid was
larger than a signed int.  Since OIDs are unsigned int's it was
a bug that the code used a java signed int to deal with the values.  The bug
would result in the error message: "Unable to fathom update count".
While fixing the bug, it became apparent that other code made a similar
assumption about OIDs being signed ints.  Therefore some methods that returned
or took OIDs are arguements also needed to be changed.
Since we are so close to the 7.2 release I have added new methods that
return longs and deprecated the old methods returning ints.  Therefore all
old code should still work without requiring a code change to cast from long to int.  Also note that the methods below are PostgreSQL specific extensions to
the JDBC api are are not part of the spec from Sun, thus it is unlikely that
they are used much or at all.

The deprecated methods are:
  ResultSet.getInsertedOID()
  Statement.getInsertedOID()
  Serialize.store()
  Connection.putObject()
and are replaced by:
  ResultSet.getLastOID()
  Statement.getLastOID()
  Serialize.storeObject()
  Connection.storeObject()
All the deprecated methods returned int, while their replacements return long

This patch also fixes two comments in MD5Digest that the author Jeremy Wohl
submitted.

--Barry
2001-11-25 23:26:59 +00:00
Hiroshi Inoue 535d92877e Remove compile errors of psql.exe and libpq.dll under
Multibyte mode.
2001-11-22 10:18:52 +00:00
Tom Lane 6c134eb6f1 Spell 'precedes', 'preceding' correctly in various places. 2001-11-21 22:57:01 +00:00
Bruce Momjian 16cb347eee // -> /* */, per Tatsuo. 2001-11-21 05:03:16 +00:00
Bruce Momjian 28e92b89f4 Change 'return ;' to 'return;'; remove space. 2001-11-19 23:19:21 +00:00
Bruce Momjian 09634eafe1 Indent jdbc case labels using pgjindent. 2001-11-19 23:16:46 +00:00
Bruce Momjian 6c8120d68c More jdbc comment cleanups. Code looks very nice now. 2001-11-19 22:43:13 +00:00
Bruce Momjian f3148bef9f JDBC indenting, comment cleanups. 2001-11-19 22:33:39 +00:00
Hiroshi Inoue 09a2b4f423 Fix comment at top of file to match file name. 2001-11-19 06:26:00 +00:00
Tom Lane 9b03776ff2 A bunch of small doco updates motivated by scanning the comments on
the interactive docs.
2001-11-19 03:58:25 +00:00
Bruce Momjian 09bf48cf79 Improve comments about duplicate files. 2001-11-18 23:02:19 +00:00
Bruce Momjian aea081bb27 Add missing prototype. 2001-11-16 18:28:16 +00:00
Bruce Momjian 07de4cbbbb Add configure result checks on odbc, per Peter E. 2001-11-16 18:10:04 +00:00
Tom Lane 100e7f0c9d Once again, Michael has overwritten someone else's patch ... 2001-11-16 17:01:48 +00:00
Peter Eisentraut aff53b27f0 Make the yacc rules safe for parallel make. See discussion on pgsql-patches
and comment in src/backend/parser/Makefile for the technical details.
2001-11-16 16:32:33 +00:00
Michael Meskes 7845954e49 Committed again to add the missing files/patches. 2001-11-16 08:36:37 +00:00
Hiroshi Inoue 949af991fc Change SQLDescribeCol so that it returns alias name properly. 2001-11-16 05:55:10 +00:00
Tom Lane 2a4660f5aa Update keyword lists per suggestions by Peter. There are now four
mutually exclusive keyword lists spanning all known keywords ---
including AS.  Moved COALESCE and a few other ColLabels into the
can-be-ColId list.
2001-11-16 04:08:33 +00:00
Bruce Momjian 2c1784a9c7 Update md5.h because it can't get the value from configure. 2001-11-15 16:16:08 +00:00
Bruce Momjian 1edbd62cac Fix comment at top of file to match file name. 2001-11-15 03:12:53 +00:00
Dave Cramer 80c029190f fixes getIndex to work with forte's transparent persistence 2001-11-14 20:04:00 +00:00
Michael Meskes 32a4c3008f Added Christof's patches. 2001-11-14 11:11:49 +00:00
Barry Lind ebb93323bb Attached is a patch against the CVS repository that fixes the ResultSet absolute() problem.
There's also a little fix for the getRow() method. While fixing
absolute(), I noticed that getRow() wasn't quite following the spec: it
wasn't returning 0 when the ResultSet wasn't positioned on a row.  I've
started a ResultSet test case and included it as well.

Liam Stewart
2001-11-14 04:11:37 +00:00
Bruce Momjian c97a787e85 Update CVS tags. 2001-11-13 22:08:04 +00:00
Bruce Momjian 2ca65f716a Remove md5.c check, add CVS log stamp. Update comments. 2001-11-13 22:06:58 +00:00
Barry Lind 7a9ef7ee09 fixed bug in ResultSet. Version 1.29 backed out two previous fixes (1.26 and 1.25). This checkin add back those two previous fixes. Problem reported by Daniel Germain 2001-11-12 19:59:46 +00:00
Barry Lind 3a306eefe9 Commit to support MD5 passwords as per the backend for 7.2. This patch was submitted by Jeremy Wohl jeremyw-pgjdbc@igmus.org 2001-11-12 19:11:56 +00:00
Bruce Momjian 67a56f2286 Sync up both files. 2001-11-12 02:05:17 +00:00
Bruce Momjian 36bbb2494e Add comments and remove CVS tag from md5.c so they remain identical. 2001-11-12 01:59:43 +00:00
Bruce Momjian 0611d3980a Update md5 to match. 2001-11-12 01:56:12 +00:00
Hiroshi Inoue b52950cc3d Add md5 authentication support thanks to Bruce Momjian. 2001-11-12 00:54:28 +00:00
Hiroshi Inoue 8bf1e098dd Use abbreviated connection string more widely.
This seems to fix the trouble with PowerBuilder
reported by Magbus Weber.
2001-11-11 07:24:36 +00:00
Tom Lane 15c21bf8e1 Defend against possibility that SSL error reporting mechanism returns
a NULL pointer.  Per report from Stephen Pillinger 8-Nov-01.
2001-11-11 02:09:05 +00:00