This is an automated email from the git hooks/post-receive script.

ebourg-guest pushed a change to tag REL8_1_415
in repository libpostgresql-jdbc-java.

        at  1219f0e   (commit)
This tag includes the following new commits:

       new  c910ef2   Correct the display size calculations for numeric data.  
Don't add precision and scale because scale is just a subset of precision.
       new  9604d6d   DatabaseMetaData.getTables should return all table type 
if passed null as for the types array.  It was previously returning only those 
tables that psql's \d command would for a null type filter.
       new  5eaa49b   Remove javadoc @see reference pointing to removed 
functionality.
       new  b2731e4   Statement.cancel was prone to race conditions even with a 
single threaded client.  It would fire off a cancel message without waiting for 
an acknowledgement of its success.  This resulted in future queries being 
cancelled when the cancel message was received by the backend.  Ensure we get 
an EOF from the server before returning             from the cancel call.  This 
still does nothing about multi-threaded race conditions.
       new  5c996c3   Add scale information for time/timestamp/interval to 
DatabaseMetaData.getColumns.  Include knowledge of interval in 
ResultSetMetaData.
       new  77f5e30   Updated Italian translation from Giuseppe Sacco.
       new  f367d8d   Update getObject and getArray methods that take a map to 
only bail out with a not implemented exception if the supplied map is not null 
and not empty.  Apparently Sun's WebRowSet implementation passes empty Maps to 
these methods.
       new  407dbbe   The V2 protocol wasn't correctly handling EmptyQuery 
messages.  It expected a four byte message length after the EmptyQuery message, 
but there is only a single null byte sent by the backend.
       new  f74b674   Backpatch the fix for incorrect parameter indexes on 
CallableStatements that do not return values to 8.1
       new  64cf8e5   Brazilian Portuguese translation updates.
       new  32fe073   When performing replace processing we must continue 
processing until we hit the end of a user supplied query, not just once we've 
detected the end of a valid query.  Consider the example: SELECT a FROM t WHERE 
(1>0)) ORDER BY a; We must send the whole query to the backend, not just the 
section before the last closing parenthesis.
       new  d9b3c67   escapeQuotes() in DatabaseMetaData was not correctly 
handling backslashes which would result in incorrect searches and has the 
potential for a SQL injection attack.
       new  60ae42a   The TypeInfoCache had a static Map for the pg type name 
to java.sql.Types conversion, but it was being reinitialized for each new 
Connection.  Even though its content is static make this an instance variable 
for simplicity.
       new  5dbd05a   Release build 405.
       new  4ad1445   When the Connection retrieved from 
XAConnection.getConnection() is closed we do not want to rollback the 
transaction because the underlying connection is not closed and the transaction 
is being managed by the XAResource, not the Connection.
       new  3d46f25   When a prepared statement uses different parameter types 
than what the statement was originally prepared for, the driver must replan the 
query for the new types.  When doing this in batches the driver was not 
correctly freeing old plans.
       new  dd554e3   When performing replace processing we must continue 
processing until we hit the end of a user supplied query, not just once we've 
detected the end of a valid query.  Consider the example: SELECT a FROM t WHERE 
(1>0)) ORDER BY a; We must send the whole query to the backend, not just the 
section before the last closing parenthesis.
       new  9acc6d6   gij/gcj has some JDK1.5 classes in it, but it only 
supports JDK1.4 as the default source level.  This confuses older ant versions 
and our build script tries to compile a JDK1.5 version.  Instead of letting ant 
detect the java version, let the jvm tell us that itself using 
java.specification.version as suggested by Heikki Linnakangas. Also put in a 
check for a JDK1.6 compile attempt and bail out with an explanatory unsupported 
error message instead of just failing at  [...]
       new  b5f7e9a   When we're unable to parse a timestamp value, the error 
message should print out the bad value.  It was printing a char array which 
showed up as a useless [C@xxxx.
       new  f03d154   The previous commit message is completely bogus.  I use 
the -F argument to specify a filename and I picked com.msg instead of oom.msg 
resulting in a random old message.  This is the correct log entry.
       new  7ba14af   Add some more synchronization to the TypeInfoCache.  We 
need synchronization around the PreparedStatements because they may not be used 
by two threads at the same time.  Additional synchronization is applied to the 
maps to ensure that they are in sync with each other.  Make _pgNameToSQLType 
static.
       new  9d967ba   Updated German transalation.
       new  3695bbf   Error messages were not run through MessageFormat if it 
didn't have any parameters.  This was a problem because all error messages are 
written expecting to be run through the formatter and use two single quotes 
when only one is desired in the output.  Without being run through the 
formatter the two quotes appeared in the output.
       new  75d2560   Fix a couple of bugs in CallableStatement outputs.  An 
oversight in the checking of actual results vs. what the caller specified for 
registerOutParameter was checking all register parameters against the first out 
parameter, not the parameter it actually corresponded with.
       new  6b08294   Release build 406.
       new  5aaa290   Remove documentation's claim that we don't support 
functions with out parameters.
       new  03e92ab   Updated German transalation.
       new  982b94c   Backpatch fix for running callable statements against a 
8.1+ server with the v2 protocol.  In this case we can't handle out parameters 
and fallback to traditional processing.
       new  b60938e   Using callable statements against older server versions 
(7.4 or 8.0) did not work because of recent changes to output parameter 
handling. 7.4 and 8.0 do not support function output parameters, but they still 
must support the functions return value.  Every function must have either a 
return value or an output parameter so we force the minimum output parameter 
count to one.
       new  d9e844e   Release build 8.1-407.
       new  bdfcd57   Updated Italian translation from Giuseppe Sacco.
       new  b1bbfeb   Brazilian Portuguese translation updates.
       new  fdf4f16   When issuing multiple queries on one statement the driver 
was not clearing some intermediate state between executions.  When an update, 
insert, or delete followed a select, the select's results were still available 
and would be returned instead of the non-query's affected row count.
       new  6224384   When the driver asks the server to resolve a type the 
resolved type is stored in the SimpleQuery object.  When the statement is 
executed again the driver determines whether the existing types match or if it 
needs to be reprepared by comparing the current Statement's settings with the 
SimpleQuery.  The Statement will have the unspecified oid while the SimpleQuery 
will have the resolved oid, so there will not be a match and the statement will 
needlessly be reprepared.  [...]
       new  a24b7a4   When creating a ResultSet from a refcursor, respect the 
creating ResultSet's scollability setting.  The way the ResultSet is created 
means that it will always be scrollable anyway, so there's no downside.  We 
cannot support updatable refcursor ResultSets until we get updatable cursors.
       new  08eb129   Fix a bug in function escape processing.  When dealing 
with an invalid escape the code attempted to read until it hit the escape end 
and press on, but it forgot to increment its position counter. This lead to an 
infinite loop that eventually resulted in an out of memory error.
       new  a91bc52   Update the documentation to reflect the fact that the 
default prepareThreshold is five, not zero.
       new  e68e7df   Error message wants the paramter's registered return 
type, not the whole array of return types that will be displayed as something 
unintelligible.
       new  7e5c4ca   RecoverdXid.equals was assuming that the object passed to 
it was an Xid which in the general case of the equals method is not true.  To 
respect the contract of the equals method return false if the passed in object 
isn't an Xid.
       new  ef74f71   Escaping of savepoint names in 
org.postgresql.jdbc3.PSQLSavepoint is incorrect. Backslashes in (double-quoted) 
savepoint names are doubled for escaping, but AFAIK, and as my testing shows, 
savepoint names are like identifiers, so regular identifier quoting applies to 
them.
       new  db52e0e   Release 8.1-408.
       new  5e9b62c   Statement.getTime, .getDate, and .getTimestamp methods 
which are passed a Calendar object were rotating the timezone in the wrong 
direction.  Rewrite this code to use the existing TimestampUtils methods to 
match the working code in ResultSets.
       new  4ce8687   Produce the timezone that we send to the server in the 
same format that we can parse.  This is important for updatable ResultSets as 
we must be able to parse the format we produce.
       new  ce6f457   When manipulating large objects we must handle the oid as 
a Java long rather than an int so it works when the oid counter exceeds 
Integer.MAX_VALUE.  This doesn't remove the existing int API to avoid breaking 
code, but instead adds a parallel API that uses long.
       new  04fcfc1   Fix persistence of XA datasources.  PGObjectFactory 
wasn't aware of PGXADataSource and can't be because of the requirements for 
different build versions.  Add a new PGXADataSourceFactory to provide this 
functionality.
       new  819eece   The error message reports the column position incorrectly 
by using ""+i+1 which is (""+i)+1, resulting in a value of 21 instead of 3 for 
an i value of 2.
       new  b362fe2   Interval formatting didn't work for negative seconds 
values greater than -1.  It would format it as -.5, but interval input doesn't 
accept this, so write it as -0.5 instead.
       new  124c2ed   Allow updatable ResultSets to update arrays.  While we 
still haven't implemented updateArray, updateObject with an Array should work. 
Just need to add a mapping for Types.ARRAY for converting the Array to the 
underlying ResultSet format.
       new  5a7244a   In an error message reporting an unparseable timestamp 
value the code was trying to put the unparseable portion into the error 
message, but used the wrong variable to get the correct length.
       new  4234b4e   Implement ResultSet.updateArray by simply mapping it to 
updateObject.
       new  ef22d89   Prepare for release of 8.1-409.
       new  63dd9d6   Explicitly state which source level we are compiling.  
Newer versions of gij/gcj run a 1.5 VM, but default to a 1.4 source level 
compile which tricks up our build system.  This still doens't fix the case of 
running with a newer VM than compiler, but I don't see what we can do about 
that.
       new  b937f44   A XAConnections default autocommit state should be true.  
The driver was previously setting autocommit to false and assuming it would 
stay that way.  This caused two problems.  First, some applications expected to 
be able to issue local autocommit transactions prior to begin().  Second, some 
TMs (Geronimo) set the autocommit state to true themselves, which causes 
problems as the driver did not expect it to be changed.  This patch correctly 
disables and enables autoco [...]
       new  bec89bf   Allow XAResource.start with TMJOIN in a limited set of 
circumstances to work with WebLogic.  We allow TMJOIN only if the resource was 
previously ended and the Xid is the same as the current Xid.
       new  2e206f5   Error message has the wrong index into the paramTypes 
array.
       new  baeb5ba   setObject fails to identify the correct type of 
java.lang.Byte.
       new  38e52a6   The previous patch to try and set a XA based Connection's 
autocommit property correctly didn't quite work.  Calling 
XAConnection.getConnection set autocommit to true even if we already had a 
transaction in progress.
       new  3475c57   Fix function drop calls so we end up with a clean 
database at the end of a successful test run.
       new  1d83d4d   When retrieving the columns that compose a composite type 
don't retrieve system columns (like xmin/xmax/...) that you'll find if the type 
is from a table or view.  A more comprehensive rework of getProcedureColumns 
will go into HEAD.
       new  bb6c723   Fix recently added Byte type test code to work under 
JDK1.4.  It was using Byte.valueOf(byte) which is a JDK1.5 method.
       new  393d899   Don't return quotes around identifiers in the results of 
DatabaseMetaData.getIndexInfo even if they would require quoting in SQL.  The 
code was making a "col = NULL" comparison which doesn't work.
       new  aaa38c4   Do escape processing on batch Statements prior to 
execution.  This already worked for PreparedStatements, but not plain 
Statements.
       new  849e95a   Updatable ResultSets did not work when updating bytea 
data and then retrieving it because we send the data to the server in binary 
format, but the ResultSet was expecting to read it in text format. So we need 
to convert the data from binary to text format before stuffing it into the 
ResultSet.
       new  5619f9e   Prepare for release of 8.1-410.
       new  84d6810   When doing batch execution we can have multiple Parse and 
DescribeStatement messages on the wire at the same time.  When we finally get 
around to collecting the DescribeStatement results we must check whether they 
still apply to the currently parsed query. Otherwise we'll overwrite our type 
information with stale data that will cause failures down the line.
       new  9f0c26a   The prepareThreshold parameter was getting defaulted to 
zero in the test suite by the build system.  It would be nice to just pick up 
the driver's default, but that's tough to do, so just hardcode it to the 
default (five) for now.
       new  1bf9528   CallableStatements with OUT parameters that get executed 
more than prepareThreshold times no longer send Parse messages which invoke 
SimpleParameterList.getTypeOID which has side effects required to setup the 
parameters correctly.  This bug is only exposed if the caller also uses 
clearParameters() which zeros out state that would otherwise be retained from 
previous execution.  Add an explicit convertFunctionOutParameters method to do 
this work instead that we call in [...]
       new  61469fa   Arrays.toString is a JDK1.5+ method, so we can't use it 
in this test.  It's unnecessary anyways as we really want to compare the byte 
arrays, not their String forms.
       new  0a787fe   Ugggh, compiling is not the same as working.  Junit's 
assertEquals converts things to strings which doesn't work for arrays.  Use 
Arrays.equals instead.
       new  d21b0f1   Multiple calls to XAConnection.getConnection within the 
same user transaction ended up restarting the transaction on the server side as 
a result of manipulating the autocommit state.  When retrieving a Connection, 
we must pay attention to whether a user transaction is in progress when setting 
the autocommit state.
       new  5f3b601   Make code that parses queries for updateable resultsets 
aware of the ONLY clause.
       new  12ec7e8   While custom type maps are not implemented, the code to 
detect the caller trying to use them threw a ClassCastException.  Correctly 
detect the attempted use of custom types and bail out with a SQLException.
       new  4f487c4   Prepare for release of 8.1-411.
       new  01fce9c   The JDBC spec says that when you have two duplicately 
named columns, a search by name should return the first one.
       new  b7b8f6a   While the driver currently doesn't support the copy 
protocol, it needs to understand it enough to ignore it.  Now the connection 
will not be irreparably broken when a COPY request is sent.
       new  d5921e1   Updated Brazilian Portuguese translation.
       new  c29d8b9   Prepare for release of 8.1-412.
       new  2be43cb   Make the build system aware of the 1.7 JDK (which icedtea 
reports itself as) and add an explicit check and complaint if we find a JDK 
that we don't support.
       new  f6a9109   Move PGXADataSource to the public API documentation.
       new  5e57f34   Do comparison of identifiers in a known Locale 
(specificially US). In Turkish for example 
"id".toLowerCase().equals("ID".toLowerCase()) is false.  This breaks apps 
running a Turkish locale.
       new  7ac5651   Fix a deadlock that occurs when retrieving notifications. 
 Normal query execution enters the QueryExecutor monitor and then calls a 
synchronized method in the ProtocolConnection to update the transaction state.  
Notification retrieval operates in the reverse order, entering the 
ProtocolConnection monitor and then calling a synchronized method in the 
QueryExecutor.
       new  b714fe2   CallableStatement#getUpdateCount was returning 1 when a 
function returned a ResultSet.  Return -1 instead.
       new  92b7023   Accept UTF8 as an equivalent of UNICODE when trying to 
detect if client_encoding has changed to something the driver doesn't 
understand.  Don't try to accept every possible spelling (UTF-8) as UTF8 is the 
server's canonical name and people shouldn't be messing with this anyway.
       new  772092e   Updated German translation.
       new  887fee1   Adjust the deadlock avoidance code for the V3 protocol to 
be concerned with many statements in a single execute call in addition to the 
existing worry about many statements from an executeBatch call.  This doesn't 
prevent all possible deadlocks as the deadlock avoidance calculation was 
written for batch execution which should not be returning ResultSets.  If many 
long queries that return significant results are issued with a single execute 
we will still deadlock.
       new  2eb09ad   Release build 8.1-413.
       new  88bfe80   The Statement and Connection proxies used for connection 
pooling code relied on the underlying real connection and statement code for 
equals and hashcode support.  When the proxies are closed we discard the 
references to the real objects, so we can't rely on them for this support 
because we'll get a NullPointerException.
       new  1e29a7d   My previous patch to fix the equals and hashcode for 
connection pools didn't build with a 1.4 JDK.  1.5+ was doing autoboxing which 
I didn't originally notice.
       new  3d6df2f   Typo: Types.Other -> Types.OTHER.
       new  197e509   Don't use pg_attrdef.adsrc to display a column's default 
value. This can get out of date when dependent objects are renamed. Instead 
decompile the adbin column to fetch up to date information.
       new  aadfc18   Initialize BatchUpdateExceptions with the SQLState of the 
SQLException that they are wrapping.  Code that inspects the SQLStates of 
SQLExceptions, but doesn't unwrap the nested exception will not understand the 
underlying cause and may make incorrect decisions about the severity of the 
error.
       new  456b630   Fix time tests for timezones which have different rules 
now than at the unix epoch.  We need to pull the zone offset for the time value 
we're manipulating rather than the current time. "Europe/London" is the failing 
example, but there may be more.
       new  ca013de   Release 8.1-414.
       new  dd898f8   After running the statement passed to executeUpdate, we 
check to see if it was a SELECT and complain because it is not a query method.  
The code was not checking all of the results if it was passed a multi- 
statement query string.  This resulted in the surprising and silent partial 
execution of SELECT statements.
       new  7ad8329   Always specify an XA error code when creating an 
XAException. Otherwise a transaction manager won't know what to do with the 
error and may have to asssume the worst.
       new  2f1b5e3   A XA transaction should not change the autocommit setting 
of a Connection.  Ensure that we restore this property correctly after the XA 
transaction completes.
       new  8d2385f   When setNull is called with a TIME or TIMESTAMP type we 
cannot pass that type information on to the backend because we really don't 
know whether it is with or without a time zone.  For a NULL value it doesn't 
matter, but we can't establish a type because a later call with a non-null 
value using the same PreparedStatement can potentially end up using a specific 
type that is incorrect.
       new  1219f0e   Release 8.1-415.

The 98 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "adds" were already present in the repository and have only
been added to this reference.


-- 
Alioth's /usr/local/bin/git-commit-notice on 
/srv/git.debian.org/git/pkg-java/libpostgresql-jdbc-java.git

_______________________________________________
pkg-java-commits mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-commits

Reply via email to