~ubuntu-branches/ubuntu/oneiric/libpgjava/oneiric

« back to all changes in this revision

Viewing changes to src/interfaces/jdbc/CHANGELOG

  • Committer: Bazaar Package Importer
  • Author(s): Arnaud Vandyck
  • Date: 2005-04-21 14:25:11 UTC
  • mfrom: (1.2.1 upstream) (2.1.1 warty)
  • Revision ID: james.westby@ubuntu.com-20050421142511-wibh5vc31fkrorx7
Tags: 7.4.7-3
Built with sources...

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
Tue Mar 06 12:05:00 GMT 2001 peter@retep.org.uk
2
 
        - Removed org.postgresql.xa.Test from the JDBC EE driver as it's an old
3
 
          test class and prevented it from compiling.
4
 
 
5
 
Fri Mar 02 10:00:00 GMT 2001 peter@retep.org.uk
6
 
        - Fixed build.xml so that PGclob is not built in the JDBC1.2 driver
7
 
 
8
 
 
9
 
Fri Feb 17 18:25:00 GMT 2001 peter@retep.org.uk
10
 
        - Removed the last deprecation warnings from the Java2 driver. Now only
11
 
          the old examples give deprecation warnings.
12
 
        - Added a new class into core that (JDK1.3+) ensures all connections are
13
 
          closed when the VM terminates.
14
 
 
15
 
Fri Feb 17 15:11:00 GMT 2001 peter@retep.org.uk
16
 
        - Reduced the object overhead in PreparedStatement by reusing the same
17
 
          StringBuffer object throughout. Similarly SimpleDateStamp's are alse
18
 
          reused in a thread save manner.
19
 
        - Implemented in PreparedStatement: setNull(), setDate/Time/Timestamp
20
 
          using Calendar, setBlob(), setCharacterStream()
21
 
        - Clob's are now implemented in ResultSet & PreparedStatement!
22
 
        - Implemented a lot of DatabaseMetaData & ResultSetMetaData methods.
23
 
          We have about 18 unimplemented methods left in JDBC2 at the current
24
 
          time.
25
 
 
26
 
Web Feb 14 17:29:00 GMT 2001 peter@retep.org.uk
27
 
        - Fixed bug in LargeObject & BlobOutputStream where the stream's output
28
 
          was not flushed when either the stream or the blob were closed.
29
 
        - Fixed PreparedStatement.setBinaryStream() where it ignored the length
30
 
 
31
 
Tue Feb 13 16:33:00 GMT 2001 peter@retep.org.uk
32
 
        - More TestCases implemented. Refined the test suite api's.
33
 
        - Removed need for SimpleDateFormat in ResultSet.getDate() improving
34
 
          performance.
35
 
        - Rewrote ResultSet.getTime() so that it uses JDK api's better.
36
 
 
37
 
Tue Feb 13 10:25:00 GMT 2001 peter@retep.org.uk
38
 
        - Added MiscTest to hold reported problems from users.
39
 
        - Fixed PGMoney.
40
 
        - JBuilder4/JDBCExplorer now works with Money fields. Patched Field &
41
 
          ResultSet (lots of methods) for this one. Also changed cash/money to
42
 
          return type DOUBLE not DECIMAL. This broke JBuilder as zero scale
43
 
          BigDecimal's can't have decimal places!
44
 
        - When a Statement is reused, the previous ResultSet is now closed.
45
 
        - Removed deprecated call in ResultSet.getTime()
46
 
 
47
 
Thu Feb 08 18:53:00 GMT 2001 peter@retep.org.uk
48
 
        - Changed a couple of settings in DatabaseMetaData where 7.1 now
49
 
          supports those features
50
 
        - Implemented the DatabaseMetaData TestCase.
51
 
 
52
 
Wed Feb 07 18:06:00 GMT 2001 peter@retep.org.uk
53
 
        - Added comment to Connection.isClosed() explaining why we deviate from
54
 
          the JDBC2 specification.
55
 
        - Fixed bug where the Isolation Level is lost while in autocommit mode.
56
 
        - Fixed bug where several calls to getTransactionIsolationLevel()
57
 
          returned the first call's result.
58
 
 
59
 
Tue Feb 06 19:00:00 GMT 2001 peter@retep.org.uk
60
 
        - Completed first two TestCase's for the test suite. JUnit is now
61
 
          recognised by ant.
62
 
 
63
 
Wed Jan 31 08:46:00 GMT 2001 peter@retep.org.uk
64
 
        - Some minor additions to Statement to make our own extensions more
65
 
          portable.
66
 
        - Statement.close() will now call ResultSet.close() rather than just
67
 
          dissasociating with it.
68
 
 
69
 
Tue Jan 30 22:24:00 GMT 2001 peter@retep.org.uk
70
 
        - Fixed bug where Statement.setMaxRows() was a global setting. Now
71
 
          limited to just itself.
72
 
        - Changed LargeObject.read(byte[],int,int) to return the actual number
73
 
          of bytes read (used to be void).
74
 
        - LargeObject now supports InputStream's!
75
 
        - PreparedStatement.setBinaryStream() now works!
76
 
        - ResultSet.getBinaryStream() now returns an InputStream that doesn't
77
 
          copy the blob into memory first!
78
 
        - Connection.isClosed() now tests to see if the connection is still alive
79
 
          rather than if it thinks it's alive.
80
 
Thu Jan 25 09:11:00 GMT 2001 peter@retep.org.uk
81
 
        - Added an alternative constructor to PGSQLException so that debugging
82
 
          some more osteric bugs is easier. If only 1 arg is supplied and it's
83
 
          of type Exception, then that Exception's stacktrace is now included.
84
 
 
85
 
Wed Jan 24 09:18:00 GMT 2001 peter@retep.org.uk
86
 
        - Removed the 8k limit by setting it to 64k
87
 
 
88
 
Fri Jan 19 08:47:00 GMT 2001 peter@retep.org.uk
89
 
        - Applied patch submitted by John Schutz <schutz@austin.rr.com> that
90
 
          fixed a bug with ANT's SQL functions (not needed for building but nice
91
 
          to have fixed).
92
 
 
93
 
Thu Jan 18 17:30:00 GMT 2001 peter@retep.org.uk
94
 
        - Added new error message into errors.properties "postgresql.notsensitive"
95
 
          This is used by jdbc2.ResultSet when a method is called that should
96
 
          fetch the current value of a row from the database refreshRow() for
97
 
          example.
98
 
        - These methods no longer throw the not implemented but the new noupdate
99
 
          error. This is in preparation for the Updateable ResultSet support
100
 
          which will overide these methods by extending the existing class to
101
 
          implement that functionality, but needed to show something other than
102
 
          notimplemented:
103
 
            moveToCurrentRow()
104
 
            moveToInsertRow()
105
 
            rowDeleted()
106
 
            rowInserted()
107
 
            all update*() methods, except those that took the column as a String
108
 
            as they were already implemented to convert the String to an int.
109
 
        - getFetchDirection() and setFetchDirection() now throws
110
 
          "postgresql.notimp" as we only support one direction.
111
 
          The CursorResultSet will overide this when its implemented.
112
 
        - Created a new class under jdbc2 UpdateableResultSet which extends
113
 
          ResultSet and overides the relevent update methods.
114
 
          This allows us to implement them easily at a later date.
115
 
        - In jdbc2.Connection, the following methods are now implemented:
116
 
            createStatement(type,concurrency);
117
 
            getTypeMap();
118
 
            setTypeMap(Map);
119
 
        - The JDBC2 type mapping scheme almost complete, just needs SQLInput &
120
 
          SQLOutput to be implemented.
121
 
        - Removed some Statement methods that somehow appeared in Connection.
122
 
        - In jdbc2.Statement()
123
 
            getResultSetConcurrency()
124
 
            getResultSetType()
125
 
            setResultSetConcurrency()
126
 
            setResultSetType()
127
 
        - Finally removed the old 6.5.x driver.
128
 
 
129
 
Thu Jan 18 12:24:00 GMT 2001 peter@retep.org.uk
130
 
        - These methods in org.postgresql.jdbc2.ResultSet are now implemented:
131
 
            getBigDecimal(int) ie: without a scale (why did this get missed?)
132
 
            getBlob(int)
133
 
            getCharacterStream(int)
134
 
            getConcurrency()
135
 
            getDate(int,Calendar)
136
 
            getFetchDirection()
137
 
            getFetchSize()
138
 
            getTime(int,Calendar)
139
 
            getTimestamp(int,Calendar)
140
 
            getType()
141
 
          NB: Where int represents the column name, the associated version
142
 
              taking a String were already implemented by calling the int
143
 
              version.
144
 
        - These methods no longer throw the not implemented but the new noupdate
145
 
          error. This is in preparation for the Updateable ResultSet support
146
 
          which will overide these methods by extending the existing class to
147
 
          implement that functionality, but needed to show something other than
148
 
          notimplemented:
149
 
            cancelRowUpdates()
150
 
            deleteRow()
151
 
        - Added new error message into errors.properties "postgresql.noupdate"
152
 
          This is used by jdbc2.ResultSet when an update method is called and
153
 
          the ResultSet is not updateable. A new method notUpdateable() has been
154
 
          added to that class to throw this exception, keeping the binary size
155
 
          down.
156
 
        - Added new error message into errors.properties "postgresql.psqlnotimp"
157
 
          This is used instead of unimplemented when it's a feature in the
158
 
          backend that is preventing this method from being implemented.
159
 
        - Removed getKeysetSize() as its not part of the ResultSet API
160
 
 
161
 
Thu Jan 18 09:46:00 GMT 2001 peter@retep.org.uk
162
 
        - Applied modified patch from Richard Bullington-McGuire
163
 
          <rbulling@microstate.com>. I had to modify it as some of the code
164
 
          patched now exists in different classes, and some of it actually
165
 
          patched obsolete code.
166
 
 
167
 
Wed Jan 17 10:19:00 GMT 2001 peter@retep.org.uk
168
 
        - Updated Implementation to include both ANT & JBuilder
169
 
        - Updated README to reflect the changes since 7.0
170
 
        - Created jdbc.jpr file which allows JBuilder to be used to edit the
171
 
          source. JBuilder _CAN_NOT_ be used to compile. You must use ANT for
172
 
          that. It's only to allow JBuilders syntax checking to improve the
173
 
          drivers source. Refer to Implementation for more details
174
 
 
175
 
Wed Dec 20 16:19:00 GMT 2000 peter@retep.org.uk
176
 
        - Finished build.xml and updated Driver.java.in and buildDriver to
177
 
          match how Makefile and ANT operate.
178
 
 
179
 
Tue Dec 19 17:30:00 GMT 2000 peter@retep.org.uk
180
 
        - Finally created ant build.xml file
181
 
 
182
 
Mon Nov 20 08:12:00 GMT 2000 peter@retep.org.uk
183
 
        - Encoding patch to Connection by wrobell@posexperts.com.pl
184
 
 
185
 
Tue Oct 17 15:35:00 BST 2000 petermount@maidstone.gov.uk
186
 
        - Changed getTimestamp() again. This time Michael Stephenson's
187
 
          <mstephenson@tirin.openworld.co.uk> solution looked far better
188
 
          than the original solution put in June.
189
 
 
190
 
Tue Oct 10 13:12:00 BST 2000 peter@retep.org.uk
191
 
        - DatabaseMetaData.supportsAlterTableWithDropColumn() as psql doesn't
192
 
          support dropping of individual columns
193
 
        - Merged in some last patches. Only 1 left, which may not be compatible
194
 
          with jdbc1
195
 
        - Merged in my old retepsql project. Makefile now includes it.
196
 
 
197
 
Mon Oct 02 12:30:00 BST 2000 peter@retep.org.uk
198
 
        - Merged in byte[] array allocation changes submitted by Gunnar R|nning
199
 
          <gunnar@candleweb.no>
200
 
 
201
 
Mon Sep 25 14:22:00 BST 2000 peter@retep.org.uk
202
 
        - Removed the DriverClass kludge. Now the org.postgresql.Driver class
203
 
          is compiled from a template file, and now has both the connection
204
 
          class (ie jdbc1/jdbc2) and the current version's from Makefile.global
205
 
 
206
 
Thu Jul 20 16:30:00 BST 2000 petermount@it.maidstone.gov.uk
207
 
        - Fixed DatabaseMetaData.getTableTypes()
208
 
 
209
 
Tue Jun 06 12:00:00 BST 2000 petermount@it.maidstone.gov.uk
210
 
        - Added org/postgresql/DriverClass.java to the list of files removed
211
 
          by make clean (it's dynamically built)
212
 
        - Fixed Statement, so that the update count is valid when an SQL
213
 
          DELETE operation is done.
214
 
        - While fixing the update count, made it easier to get the OID of
215
 
          the last insert as well. Example is in example/basic.java
216
 
 
217
 
Tue Jun 06 08:37:00 BST 2000 petermount@it.maidstone.gov.uk
218
 
        - Removed a hardwired 8K limit on query strings
219
 
        - Added some missing org.'s in Connection that prevented
220
 
          the use of the geometric types.
221
 
 
222
 
Thu Jun 01 07:26:00 BST 2000 petermount@it.maidstone.gov.uk
223
 
        - Removed timezone in getTimestamp() methods in ResultSet.
224
 
 
225
 
Mon May 15 22:30:00 BST 2000 peter@retep.org.uk
226
 
        - Fixed the message Makefile produces after compiling. It still said
227
 
          about the old Driver class, not the new package. Spotted by
228
 
          Joseph Shraibman <jks@p1.selectacast.net>
229
 
 
230
 
Thu May 04 11:38:00 BST 2000 petermount@it.maidstone.gov.uk
231
 
        - Corrected incorrect date in CHANGELOG
232
 
        - Fixed the ImageViewer example
233
 
 
234
 
Wed May 03 16:47:00 BST 2000 petermount@it.maidstone.gov.uk
235
 
        - Fixed the Makefile so that postgresql.jar is built everytime
236
 
          the jdbc1 or jdbc2 rules are called.
237
 
        - Fixed the threadsafe example. It had problems with autocommit
238
 
 
239
 
Wed May 03 14:32:00 BST 2000 petermount@it.maidstone.gov.uk
240
 
        - Rewrote the README file (the old one was 18 months old!)
241
 
        - Added @deprecated tags to org.postgresql.jdbc2.ResultSet
242
 
          to clear some warnings issued during compilation.
243
 
 
244
 
Wed Apr 12 22:14:00 BST 2000 peter@retep.org.uk
245
 
        - Implemented the JDBC2 Blob interface, and ResultSet.getBlob().
246
 
 
247
 
Wed Apr 12 20:20:00 BST 2000 peter@retep.org.uk
248
 
        - Fixed bug in ResultSet.absolute(). Negative rows are now supported.
249
 
        - Implemented ResultSet.relative(), afterLast().
250
 
 
251
 
Tue Feb  1 21:40:00 GMT 2000 peter@retep.org.uk
252
 
        - Finally imported the contributed javax extensions by Assaf Arkin
253
 
          arkin@exoffice.com
254
 
 
255
 
Mon Jan 24 21:00:00 GMT 2000 peter@retep.org.uk
256
 
        - Finally introduced the 7.0 additions to the core CVS repository.
257
 
        - All source files are now under the org.postgresql package (previously
258
 
          they were under postgresql). The package lines now changed
259
 
          accordingly.
260
 
        - The Makefile was rewritten so it should now work on machines that
261
 
          can't handle the $( ) syntax.
262
 
        - Dutch translation by Arnout Kuiper (ajkuiper@wxs.nl)
263
 
 
264
 
Mon Sep 13 23:56:00 BST 1999 peter@retep.org.uk
265
 
        - PG_Stream.SendChar() optimised, increased default buffer size of
266
 
          output stream to 8k, and introduced an 8k buffer on the input stream
267
 
          Sverre H Huseby <sverrehu@online.no>
268
 
        - Added a finalize() method to Connection class in both drivers so that
269
 
          the connection to the backend is really closed.
270
 
        - Due to many JVM's not returning a meaningful value for java.version
271
 
          the decision for building the JDBC1.2 or JDBC2 driver is now a
272
 
          compile time option.
273
 
        - Replaced $$(cmd...) with `cmd...` in the Makefile. This should allow
274
 
          the driver to compile when using shells other than Bash.
275
 
 
276
 
Thu Sep  9 01:18:39 MEST 1999 jens@jens.de
277
 
        - fixed bug in handling of DECIMAL type
278
 
 
279
 
Wed Aug  4 00:25:18 CEST 1999 jens@jens.de
280
 
        - updated ResultSetMetaData.getColumnDisplaySize() to return
281
 
          the actual display size
282
 
        - updated driver to use postgresql FE/BE-protocol version 2
283
 
 
284
 
Mon Aug  2 03:29:35 CEST 1999 jens@jens.de
285
 
         - fixed bug in DatabaseMetaData.getPrimaryKeys()
286
 
 
287
 
Sun Aug  1 18:05:42 CEST 1999 jens@jens.de
288
 
        - added support for getTransactionIsolation and setTransactionIsolation
289
 
 
290
 
Sun Jun 27 12:00:00 BST 1999
291
 
        - Fixed typo in postgresql.Driver that prevented compilation
292
 
        - Implemented getTimestamp() fix submitted by Philipp Matthias Hahn
293
 
          <pmhahn@titan.lahn.de>
294
 
        - Cleaned up some comments in Connection
295
 
 
296
 
Wed Jun 23 06:50:00 BST 1999
297
 
        - Fixed error in errors.properties where the arguments are 0 based not
298
 
          1 based
299
 
        - Fixed bug in postgresql.Driver where exception is thrown, then
300
 
          intercepted rather than being passed to the calling application.
301
 
        - Removed the file postgresql/CallableStatement, as it's not used and
302
 
          really exists in the jdbc1 & jdbc2 sub packages only.
303
 
 
304
 
Wed May 19 00:20:00 BST 1999
305
 
        - Internationalisation now done. Surprising that there's 68 error
306
 
          messages in the driver ;-)
307
 
 
308
 
Tue May 18 07:00:00 BST 1999
309
 
        - Set the ImageViewer application to use transactions
310
 
 
311
 
Tue May 18 00:00:00 BST 1999
312
 
        - Just after committing, I realised why internationalisation isn't
313
 
          working. This is now fixed (in the Makefile).
314
 
 
315
 
Mon May 17 23:40:00 BST 1999
316
 
        - PG_Stream.close() now attempts to send the close connection message
317
 
          to the backend before closing the streams
318
 
        - Added batch support in the JDBC2, supplied by Yutaka Tanida
319
 
          <yutaka@marin.or.jp>
320
 
        - Removed the old datestyle code. Now the driver uses only ISO.
321
 
        - Removed some files in the postgresql directory still in CVS that were
322
 
          moved since 6.4.x (DatabaseMetaData.java PreparedStatement.java
323
 
          ResultSetMetaData.java Statement.java)
324
 
        - Internationalisation of the error messages is partially implemented,
325
 
          however it's not enabled as it only works when the jar file is
326
 
          _not_ used, and work needs to be done.
327
 
 
328
 
Sun Apr 11 17:00:00 BST 1999
329
 
        - getUpdateCount() now returns the actual update count (before it
330
 
          simply returned 1 for everything).
331
 
        - added some updates to example.basic so it would test the new update
332
 
          count code.
333
 
        - corrected typo in a comment in Statement.java
334
 
 
335
 
Mon Jan 25 19:45:00 GMT 1999
336
 
        - created subfolders example/corba and example/corba/idl to hold the
337
 
          new example showing how to hook CORBA and PostgreSQL via JDBC
338
 
        - implemented some JDBC2 methods curtesy of Joachim.Gabler@t-online.de
339
 
 
340
 
Sat Jan 23 10:30:00 GMT 1999
341
 
        - Changed imports in postgresql.jdbc1.ResultSetMetaData as for some
342
 
          reason it didn't want to compile under jdk1.1.6
343
 
 
344
 
Tue Dec 29 15:45:00 GMT 1998
345
 
        - Refreshed the README (which was way out of date)
346
 
 
347
 
Tue Dec 29 15:45:00 GMT 1998
348
 
        - Finished adding the additional methods into the JDBC2 driver.
349
 
        - Had to add some explicit package references for the JDK1.2 Javac to
350
 
          cope with the driver
351
 
 
352
 
Tue Dec 29 12:40:00 GMT 1998
353
 
        - Fixed package imports and some references to java.sql.ResultSet in
354
 
          various files. Compiled and tested the JDBC1 driver.
355
 
 
356
 
Mon Dec 28 19:01:37 GMT 1998
357
 
        - created a new package postgresql.jdbc2 which will contain the JDBC 2
358
 
          specific classes. A similar new package (postgresql.jdbc1) has been
359
 
          created to hold the JDBC 1 specific classes.
360
 
        - modified Makefile to allow compilation of the JDBC 1 & 2 drivers,
361
 
          with the possibility of building a dual-spec driver.
362
 
        - changed the version number in postgresql.Driver to 6.5
363
 
        - modified postgresql.Driver class to initiate the correct driver when
364
 
          used under a 1.1 or 1.2+ JVM.
365
 
        - postgresql.Connection and postgresql.jdbc2.Connection now extends the
366
 
          new class postgresql.ConnectionStub, which allows us to dynamically
367
 
          open the JDBC1 or JDBC2 drivers.
368
 
        - enabled compilation of the driver under Win32 when using the Make
369
 
          from the CygWin package (Cygnus B20.1 was used).
370
 
        - To make future development easier (now we have 2 specifications to
371
 
          work with) the following classes have moved from the postgresql to
372
 
          the postgresql.jdbc1 package:
373
 
                CallableStatement       Connection
374
 
                DatabaseMetaData        PreparedStatement
375
 
                ResultSet               ResultSetMetaData
376
 
                Statement
377
 
          Some of these classes have common code that is not dependent on
378
 
          either JDBC specification. These common code are still in the
379
 
          postgresql package.
380
 
                Ie: postgresql.jdbc1.Connection extends postgresql.Connection
381
 
                and postgresql.jdbc2.Connection extends postgresql.Connection
382
 
 
383
 
Web Oct  7 22:00:00 BST 1998
384
 
        - removed syncronised from Connection.ExecSQL(). See next entry.
385
 
        - added new syncronised locking in the Connection.ExecSQL() and
386
 
          FastPath.fastpath() methods. They now lock against the PG_Steam
387
 
          object for the connection, which now provides full Thread Safety.
388
 
        - Reposted ChangeLog as it's missing from CVS.
389
 
 
390
 
Modifications done since 6.3.2 was released and Sun Aug 30 11:33:06 BST 1998
391
 
 
392
 
        - Fixed PreparedStatement.setObject as it didn't handle shorts
393
 
        - ResultSet.getDate() now handles null dates (returns null ratrher
394
 
          than a NullPointerException)
395
 
        - ResultSetMetaData.getPrecision() new returns 0 for VARCHAR
396
 
        - Field now caches the typename->oid in a Hashtable to speed things
397
 
          up. It removes the need for some unnecessary queries to the backend.
398
 
        - PreparedStatement.toString() now returns the SQL statement that it
399
 
          will send to the backend. Before it did nothing.
400
 
        - DatabaseMetaData.getTypeInfo() now does something.
401
 
        - Connection now throws an exception if either of the user or password
402
 
          properties are missing, as they are required for JDBC to work.
403
 
          This occasionally occurs when the client uses the properties version
404
 
          of getConnection(), and is a common question on the email lists.
405
 
 
406
 
Sun Aug 30 11:33:06 BST 1998
407
 
 
408
 
        - Created ChangeLog file, and entered stuff done since 6.3.2 and today
409
 
        - Change version number to 6.4 in Driver.java
410
 
        - Added fix to DatabaseMetaData.getTables() submitted by
411
 
          Stefan Andreasen <stefan@linux.kapow.dk>
412
 
        - Added fix to DatabaseMetaData.getColumns() to handle patterns
413
 
          submitted by Stefan Andreasen <stefan@linux.kapow.dk>
414
 
        - Set TcpNoDelay on the connection, as this gives us a 10x speed
415
 
          improvement on FreeBSD (caused by a bug in their TCP Stack). They
416
 
          should fix the bug before 6.4 is released, but will keep this
417
 
          in here unless it causes more problems.
418
 
          Submitted by Jason Venner <jason@idiom.com>
419
 
        - Removed a duplicate definition of fieldCache
420
 
        - Added a more meaningful message when the connection is refused. It
421
 
          now says:
422
 
                Connection refused. Check that the hostname and port is
423
 
                correct, and that the postmaster is running with the -i flag,
424
 
                which enables TCP/IP networking.
425
 
        - Removed kludge in PreparedStatement.setDate() that acted as a
426
 
          temporary fix to a bug in SimpleDateFormat, as it broke date
427
 
          handling in JDK 1.1.6.
428
 
        - Modified PG_Stream and Connection, so that outbound data is now
429
 
          buffered. This should give us a speed improvement, and reduce the
430
 
          ammount of network packets generated.
431
 
        - Removed duplicate code and optimised PG_Stream.
432
 
        - PG_Stream now returns a more meaningful message when the connection
433
 
          is broken by the backend. It now returns:
434
 
                The backend has broken the connection. Possibly the action you
435
 
                have attempted has caused it to close.
436
 
        - Removed obsolete code from Connection.
437
 
        - The error message returned when the authentication scheme is unknown
438
 
          has been extended. It now reads:
439
 
                Authentication type ### not supported. Check that you have
440
 
                configured the pg_hba.conf file to include the client's IP
441
 
                address or Subnet, and is using a supported authentication
442
 
                scheme.
443
 
        - Connection.getMetaData() now caches the instance returned, so
444
 
          multiple calls will return the same instance.
445
 
        - Created a test application that tests the DatabaseMetaData and
446
 
          ResultSetMetaData classes.
447
 
        - Replaced getString(#).getBytes() with getBytes(#) which should speed
448
 
          things up, and reduce memory useage.
449
 
        - Optimised DatabaseMetaData.getProcedures(), and implemented patterns
450
 
        - Fixed NullPointerExceptions thrown when a field is null (Internal
451
 
          to the driver, not caused by results from the backend.
452
 
          DatabaseMetaData.getProcedures() is an example of a method that
453
 
          causes this):
454
 
                - ResultSetMetaData.getColumnName() now returns field# where
455
 
                  # is the column name.
456
 
                - ResultSet.getObject() fixed
457
 
                - Fixed bug in psql example that was affected by null fields
458
 
                - DatabaseMetaData.getTables()
459
 
        - DatabaseMetaData.getPrimaryKeys() ran a query with an ambiguous field
460
 
          fixed.
461
 
        - getTypeInfo() optimised to increase speed and reduce memory useage
462
 
        - ResultSetMetaData.isCurrency() optimised and is now smaller.
463
 
        - Removed unnecessary code fromResultSetMetaData.getCatalogName()
464
 
          and getSchemaName().
465
 
        - Created new class postgresql.util.PGmoney to map the money type
466
 
        - Created new class postgresql.geometric.PGline to map the line type
467