aboutsummaryrefslogtreecommitdiff
path: root/src/interfaces
Commit message (Collapse)AuthorAge
* Fix the bug reported by Chris Lee.Hiroshi Inoue2001-10-12
|
* Allow optional () after current_user, session_user, user, current_time,Peter Eisentraut2001-10-09
| | | | | | | | | current_timestamp, current_date for ODBC compatibility. Add more functions to odbc.sql catalog extension, use new CREATE OR REPLACE FUNCTION. Document iODBC/unixODBC build options.
* This patch fixes a bug introduced in the jdbc bytea support patch.Barry Lind2001-10-09
| | | | | | | | | | | | | | That patch broke the ability to read data from binary cursors. --Barry Lind Modified Files: pgsql/src/interfaces/jdbc/org/postgresql/Connection.java pgsql/src/interfaces/jdbc/org/postgresql/ResultSet.java pgsql/src/interfaces/jdbc/org/postgresql/core/QueryExecutor.java pgsql/src/interfaces/jdbc/org/postgresql/jdbc1/Connection.java pgsql/src/interfaces/jdbc/org/postgresql/jdbc1/ResultSet.java pgsql/src/interfaces/jdbc/org/postgresql/jdbc2/Connection.java pgsql/src/interfaces/jdbc/org/postgresql/jdbc2/ResultSet.java pgsql/src/interfaces/jdbc/org/postgresql/jdbc2/UpdateableResultSet.java
* Fix include file so library is binary compatible again.Michael Meskes2001-10-08
|
* files attached are Traditional Chinese translations translatedBruce Momjian2001-10-05
| | | | | | | and modified from Simplified Chinese translations for backend, pgsql, pg_dump and libpq. I've appended their names to zh_TW.po. forth
* Make sure each call to ECPGraise is logged.Michael Meskes2001-10-05
|
* Fixed typo in proproc.yMichael Meskes2001-10-05
|
* Attached is a patch which deals withBruce Momjian2001-10-04
| | | | | | | | | | | | | | | | | | | | select 'id' as xxx from table The issue is: When the driver gets a data type which does not map into the SQL.Types it attempts to load the object into a java object. Eventually throwing an exception indicating that the type "unknown" was not found. Since the backend defaults "unknown" types to text it was suggested that the jdbc driver do the same. This patch does just that. I have tested it on the above select statement as well as a small program that serializes, and deserializes a class Dave Cramer
* I've just finished the Chinese NLS support(zh_CN part) filesBruce Momjian2001-10-04
| | | | | | | | | translation, the attachement is those four files. (.tar.gz file, with the directory, root is $PGSRC). Tested on some Linux platform. Weiping He
* Consistently use gcc's __attribute__((format)) to check sprintf-styleTom Lane2001-10-03
| | | | | format strings wherever possible. Remarkably, this exercise didn't turn up any inconsistencies, but it seems a good idea for the future.
* DROP AGGREGATE and COMMENT ON AGGREGATE now accept the expected syntaxTom Lane2001-10-03
| | | | | | | 'aggname (aggtype)'. The old syntax 'aggname aggtype' is still accepted for backwards compatibility. Fix pg_dump, which was actually broken for most cases of user-defined aggregates. Clean up error messages associated with these commands.
* Add CREATE OR REPLACE FUNCTION syntax to allow replacing a functionTom Lane2001-10-02
| | | | | definition without changing the function's OID, thereby not breaking rules, views, triggers, etc that depend on it. From Gavin Sherry.
* Re-added Tom's patch fixing my setlocale patch. I accidentlyMichael Meskes2001-10-02
| | | | deleted it.
* - Fixed truncate bug.Michael Meskes2001-10-01
| | | | | | - Added patch by Christof Petig <christof.petig@wtal.de> to clean up ecpglib.
* Make libpq++ safe again for older C++ compilers. Do 'using namespace std'Tom Lane2001-09-30
| | | | | only if configure found it was safe to do so; do not assume const_cast is available.
* Fix sloppiness about static vs non-static declaration of functions.Tom Lane2001-09-30
| | | | Some compilers are pickier about this than gcc is.
* winsock_strerror crashed on me. This fixes a line of code that looksTom Lane2001-09-30
| | | | | | cleverer than it actually is ;-) Braces are good for you :-) Gerhard HÃŒring
* Fix the setlocale problem in a way that actually works. setlocaleTom Lane2001-09-29
| | | | | returns a string corresponding to the new setting, not the old, therefore the previous patch was quite wrong.
* A couple of lines were missing from my last patch - this one fixes things.Bruce Momjian2001-09-29
| | | | Liam Stewart
* Per the recent discussion there's been some code changes in JDBC'sBruce Momjian2001-09-29
| | | | | | | | | | | | | | | | | | | | | | | DatabaseMetaData.getColumn(). I proposed a patch that would change the number of queries to find out all columns in a table from 2 * N + 1 to 1 (N being the number of columns reported) by using some outer joins. I also fixed the fact that getColumns() only returned columns that had a default defined. OTOH, I did not use to change the code required for obtaining a column's remarks (by using col_description() for 7.2 and requested by Tom Lane). Finally, I have found a way to get all the column details in a single query *and* use col_description() for 7.2 servers. A patch is attached. It overrules Ren? Pijlman's fix for this that was committed just today, but still used N + 1 queries (sorry Ren? ;-) ) I also fixed the return values for TABLE_CAT and TABLE_SCHEM from "" to null, to be more standard compliant (and requested in Ren?'s mail found at http://fts.postgresql.org/db/mw/msg.html?mid=1034253). As always, the JDBC1 version has not been tested as I have no JDK 1.1 Jeroen van Vianen
* Fix the bug about boolean type handling reported byHiroshi Inoue2001-09-29
| | | | Kristis Markis.
* Disable local creds on OpenBSD because it doesn't support it. DocumentBruce Momjian2001-09-26
| | | | supported platforms in pg_hba.conf.
* - Synced preproc.y with gram.y.Michael Meskes2001-09-25
| | | | - Changed locale handling.
* 1) Fix compile errors on Windows.Hiroshi Inoue2001-09-24
| | | | 2) Change *Common* --> *Default*.
* Don't refer to odbcinst.ini by absolute path. SQLGetPrivateProfileStringPeter Eisentraut2001-09-23
| | | | | | handles this. Don't install our own odbcinst.ini. That's the driver manager's business.
* The attached patch is my first run-through of the JDBC test suite. ABruce Momjian2001-09-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | summary of changes: . removal of the tablename property from build.xml . addition of a dropTable method in JDBC2Tests and cleanups of many methods in the same . all tests now use non-deprecated assertXYZ methods instead of the deprecated assert method . failure in TimestampTest (testSetTimestamp) fixed. The failure is because testSetTimestamp was inserting a timestamp with hour 7 but checkTimeTest was expecting a timestamp with hour 8. AFAICS, there are no issues wrt daylight savings time and timestamps being pushed in and pulled out (but more explicit tests should be added in the future) . failure in TimeTest (testGetTime) fixed. Times to be inserted were interpreted in the localtime zone but checking was done with the assumption that the insertion was done in GMT. . formatting changes in a few of the source files (because I found it convenient to have consistent formatting while working on them). The formatting is consistent with the new format for java source files in PostgreSQL. Liam Stewart
* Provide some initial support for building the ODBC driver forPeter Eisentraut2001-09-22
| | | | | | | | an already installed iODBC or unixODBC driver manager. In particular, use the include files provided by the driver manager over our own, and use the odbcinst library of the driver manager rather than gpps.c. Migrate portability sections common to several files into psqlodbc.h.
* Code review for MD5 authorization patch. Clean up some breakageTom Lane2001-09-21
| | | | (salts were always zero!?), add much missing documentation.
* 1) Avoid an overflow of connection string for Access(Microsoft Jet).Hiroshi Inoue2001-09-21
| | | | | 2) Change to retry lower version in case of "Unsupported frontend procotol".
* Change the version. We are moving towards the next release.D'Arcy J.M. Cain2001-09-19
| | | | Fixed a nasty bug that messed up negative money amounts.
* - Synced preproc.y with gram.y.Michael Meskes2001-09-19
| | | | | | - Synced pgc.l with scan.l. - Synced keyword.c. - Include the remaining patches by Christof Petig <christof.petig@wtal.de>.
* Fix bogus failure-return value from lo_create, per report from GavinTom Lane2001-09-17
| | | | | Sherry. Also clean up leakage of open files and LOs in failure exits from lo_import and lo_export.
* Attached is a patch that fixes ResultSetMetaData.isNullable() inBruce Momjian2001-09-17
| | | | | | | | | | | | | | | | | | | | | | | | the JDBC driver. This method is currently unimplemented and always returns ResultSetMetaData.columnNullable. This is obviously incorrect when a column is defined with NOT NULL or PRIMARY KEY. And we have to think of check constraints, views, functions etc. The patch simply changes the return value to ResultSetMetaData.columnNullableUnknown. This is until someone comes up with a real implementation of course. On Fri, 14 Sep 2001 17:53:50 +0200, Tomisaw Kity?ski wrote: >Hello there, > >could someone tell me, please, do I have any chance to get >proper implementation of above method in JDBC (1.1+) soon? > >Current "return 1" works fine on most tables, however it seems >to be a little bit incorrect with some of them ;) Ren? Pijlman
* I'm attaching a patch which fixes the corruption in strings causedBruce Momjian2001-09-17
| | | | | | | | | | | | | by escape processing in the SQL statement. I've tested this for a while now and it appears to work well. Previously string data with {d was getting corrupt as the {d was being stripped regardless of whether it was an escape code or not. I also added checking for time and timestamp escape processing strings as per 11.3 in the specification. The patch is against the latest CVS. Thomas O'Dowd
* Use portable putenv(), not unportable setenv().Tom Lane2001-09-17
|
* > Here's a revised patch. Changes:Bruce Momjian2001-09-14
| | | | | | | | | | | | | | | | | | | | | | | | > > 1. Now outputs '\\' instead of '\134' when using encode(bytea, 'escape') > Note that I ended up leaving \0 as \000 so that there are no ambiguities > when decoding something like, for example, \0123. > > 2. Fixed bug in byteain which allowed input values which were not valid > octals (e.g. \789), to be parsed as if they were octals. > > Joe > Here's rev 2 of the bytea string support patch. Changes: 1. Added missing declaration for MatchBytea function 2. Added PQescapeBytea to fe-exec.c 3. Applies cleanly on cvs tip from this afternoon I'm hoping that someone can review/approve/apply this before beta starts, so I guess I'd vote (not that it counts for much) to delay beta a few days :-) Joe Conway
* Allow '1' in jdbc2 boolean test.Bruce Momjian2001-09-14
|
* Change an *if condition*.Hiroshi Inoue2001-09-14
| | | | Hiroshi Inoue
* 1) Improve the implementation of *Disallow Premature* forHiroshi Inoue2001-09-14
| | | | | | | older versions of servers. 2) Implement SQLProcedures. Hiroshi Inoue
* Fix a coversation error with pre 6.4 versions.Hiroshi Inoue2001-09-14
| | | | Hiroshi Inoue
* Add missing paren to ODBC compiles.Bruce Momjian2001-09-13
|
* Didn't want that jdbc patch in there yet.Bruce Momjian2001-09-13
|
* > I found a problem with PQescapeString (I think). Since it escapesBruce Momjian2001-09-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | > null bytes to be literally '\0', the following can happen: > 1. User inputs string value as "<null byte>##" where ## are digits in the > range of 0 to 7. > 2. PQescapeString converts this to "\0##" > 3. Escaped string is used in a context that causes "\0##" to be evaluated as > an octal escape sequence. I agree that this is a problem, though it is not possible to do anything harmful with it. In addition, it only occurs if there are any NUL characters in its input, which is very unlikely if you are using C strings. The patch below addresses the issue by removing escaping of \0 characters entirely. > If the goal is to "safely" encode null bytes, and preserve the rest of the > string as it was entered, I think the null bytes should be escaped as \\000 > (note that if you simply use \000 the same string truncation problem > occurs). We can't do that, this would require 4n + 1 bytes of storage for the result, breaking the interface. Florian Weimer
* 1) Not export ODBC 3.0 functions.Hiroshi Inoue2001-09-13
| | | | 2) (Maybe) fix a bug reported by Mika Muntila.
* Link ODBC driver with -lnsl and -lsocket, for Solaris.Peter Eisentraut2001-09-11
| | | | reported by Bob Deblier (bob@virtualunlimited.com)
* Fix some multibyte related bugs.Hiroshi Inoue2001-09-11
| | | | | | Psqlodbc is 7.01.0007 now. Hiroshi Inoue
* Attached is a patch that fixes DatabaseMetaDataTest in the JDBCBruce Momjian2001-09-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | driver's test suite. With previous patches applied, this reduces the number of failures of the test suite from 6 to 4. The patch fixes the test case itself, rather than the driver. Details: 1) The driver correctly provided DatabaseMetaData about the sort order of NULLs. This was confirmed by Peter Eisentraut on pgsql-hackers. I fixed the test to accept/require the current behaviour, and made it dependent on the backend version. See nullsAreSortedAtStart(), nullsAreSortedAtEnd(), nullsAreSortedHigh() and nullsAreSortedLow(). 2) DatabaseMetaData.supportsOrderByUnrelated() correctly returned true (an ORDER BY clause can contain columns that are not in the SELECT clause), but the test case required false. Fixed that. 3) Replaced deprecated assert() of junit.framework.TestCase by assertEquals(), assertTrue() and assertNotNull(). This is because assert will be a new keyword in Java 1.4. 4) Replaced assert(message,false) by the more elegant fail(message). Regards, Ren? Pijlman <rene@lab.applinet.nl>
* Attached is a patch to add bytea support to JDBC.Bruce Momjian2001-09-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch does the following: - Adds binary datatype support (bytea) - Changes getXXXStream()/setXXXStream() methods to be spec compliant - Adds ability to revert to old behavior Details: Adds support for the binary type bytea. The ResultSet.getBytes() and PreparedStatement.setBytes() methods now work against columns of bytea type. This is a change in behavior from the previous code which assumed the column type was OID and thus a LargeObject. The new behavior is more complient with the JDBC spec as BLOB/CLOB are to be used for LargeObjects and the getBytes()/setBytes() methods are for the databases binary datatype (which is bytea in postgres). Changes the behavior of the getBinaryStream(), getAsciiStream(), getCharacterStream(), getUnicodeStream() and their setXXXStream() counterparts. These methos now work against either the bytea type (BinaryStream) or the text types (AsciiStream, CharacterStream, UnicodeStream). The previous behavior was that these all assumed the underlying column was of type OID and thus a LargeObject. The spec/javadoc for these methods indicate that they are for LONGVARCHAR and LONGVARBINARY datatypes, which are distinct from the BLOB/CLOB datatypes. Given that the bytea and text types support upto 1G, they are the LONGVARBINARY and LONGVARCHAR datatypes in postgres. Added support for turning off the above new functionality. Given that the changes above are not backwardly compatible (however they are more spec complient), I added the ability to revert back to the old behavior. The Connection now takes an optional parameter named 'compatible'. If the value of '7.1' is passed, the driver reverts to the 7.1 behavior. If the parameter is not passed or the value '7.2' is passed the behavior is the new behavior. The mechanism put in place can be used in the future when/if similar needs arise to change behavior. This is patterned after how Oracle does this (i.e. Oracle has a 'compatible' parameter that behaves in a similar manner). Misc fixes. Cleaned up a few things I encountered along the way. Note that in testing the patch I needed to ignore whitespace differences in order to get it to apply cleanly (i.e. patch -l -i byteapatch.diff). Also this patch introduces a new file (src/interfaces/jdbc/org/postgresql/util/PGbytea.java). Barry Lind
* On Fri, 07 Sep 2001 01:34:46 -0400, Tom Lane wrote:Bruce Momjian2001-09-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | >there is still an unpatched reference to pg_description in >getColumns(), in both jdbc1 and jdbc2. This was introduced by Jeroen's patch (see http://fts.postgresql.org/db/mw/msg.html?mid=1032468). Attached is a patch that returns getColumns() to using "select obj_description()" instead of direct access to pg_description, as per the request by Tom. I've incorporated Jeroen's fix to left outer join with pg_attrdef instead of inner join, so getColumns() also returns columns without a default value. I have, however, not included Jeroen's attempt to combine multiple queries into one huge multi-join query for better performance, because: 1) I don't know how to do that using obj_description() instead of direct access to pg_description 2) I don't think a performance improvement (if any) in this method is very important Because of the outer join, getColumns() will only work with a backend >= 7.1. Since the conditional coding for 7.1/7.2 and jdbc1/jdbc2 is already giving me headaches I didn't pursue a pre-7.1 solution. Regards, Ren? Pijlman <rene@lab.applinet.nl>
* Attached is a patch that fixesBruce Momjian2001-09-10
| | | | | | | | | | | | | | | | | | | | | | | ConnectionTest.testTransactionIsolation() in the JDBC driver's test suite. This reduces the number of failures of the test suite from 7 to 6. The patch fixes the test case itself, rather than the driver. In addition to the change described in my posting below, I fixed the part of the test with autocommit enabled. The author of the test assumed that setting the transaction isolation level would have no effect, but in fact it does. Perhaps the test case worked with pre-7.1 behaviour, when the JDBC driver set the isolation level in every transaction, instead of using "set session characteristics". Anyway, now it works with a backend built from current CVS and the behaviour is JDBC compliant. I also extended the test case by changing the isolation level before beginning a transaction and verifying it inside the transaction. Regards, Ren? Pijlman