[libpostgresql-jdbc-java] tag REL8_2_511 created (now f597791)
Emmanuel Bourg
ebourg-guest at moszumanska.debian.org
Mon Jan 9 10:20:38 UTC 2017
This is an automated email from the git hooks/post-receive script.
ebourg-guest pushed a change to tag REL8_2_511
in repository libpostgresql-jdbc-java.
at f597791 (commit)
This tag includes the following new commits:
new 8098777 Add Serbian translation.
new 7277193 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 2be2660 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 48bcb0f 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 b752d37 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 2b25a84 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 12a47ef 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 4ca84c0 Change DatabaseMetaData.getSearchStringEscape to always return "\\" instead of "\\\\". Previously it was assuming that it would be fed directly into a query and it needed to escape itself for the backend's input parser. This doesn't work for things like PreparedStatement parameters or DatabaseMetaData methods that take patterns. Backpatch only to 8.2 because it is a compatability problem and this keeps the old behavior for older drivers and gets it right in the new ones.
new 500932f 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 e0c848a 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 4cea038 Parse timezones that have offsets in seconds. 8.2 servers now return this information so we must be able to handle it.
new a071b25 Implement ResultSet.updateArray by simply mapping it to updateObject.
new 9187929 Prepare for release of 8.2-505.
new aedbd0b 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 0c8cde0 Error message has the wrong index into the paramTypes array.
new a5f1608 setObject fails to identify the correct type of java.lang.Byte.
new 18cfcbf Updated Serbian translation from Bojan Skaljac.
new 69656dc 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 57eb9e4 Fix function drop calls so we end up with a clean database at the end of a successful test run.
new 4319a1e 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 dd7439e 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 b2b5f52 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 e5e156e Do escape processing on batch Statements prior to execution. This already worked for PreparedStatements, but not plain Statements.
new f79c540 ResultSet.updateNClob(String, Reader) goes into an infinite loop. It really meant to call updateNClob(int, Reader), but was calling itself instead.
new e0f123d 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 c8dfd32 pt_BR translation update.
new 12eceb1 Prepare for release of 8.2-506.
new 53c1682 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 82690b3 Typo caused PSQLSavepoint to not get built occasionally. This only affects development because a complete successful build will pull this class in, but when it takes several partial builds to get a complete driver it can get left out.
new 1ef4b1d 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 1baf92d 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 d96bbf2 The driver was incorrectly parsing identifiers that had parts that look like dollar quotes. Things like a$b$c are valid identifiers, not dollar quotes.
new c663efb 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 42bd941 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 1a677d0 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 cfb453c 8.2 servers support NULL array elements, so support them in the JDBC driver. Currently this patch is only applied to 8.2 as a more invasive patch is under discussion for 8.3 and we'll wait to see how that pans out first.
new 5bf77d5 Make code that parses queries for updateable resultsets aware of the ONLY clause.
new c9412d8 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 9f13dae Prepare for release of 8.2-507.
new 9b976f3 Deep inside the driver's underlying IO code there is a method to skip over incoming data and discard it. It returns the length of data actually skipped which may differ from the requested skip size. It was incorrectly calculating the total length skipped when it had some data buffered, but also needed to skip over some data it had yet to read. This bug does not affect any existing code because all current callers of skip ensure that enough data is buffered, so the [...]
new 91d5b02 The JDBC spec says that when you have two duplicately named columns, a search by name should return the first one.
new 80e10ff 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 9123231 Updated Brazilian Portuguese translation.
new c143cec backpatched to deal with callable batch statements
new 2566771 Prepare for release of 8.2-508.
new 1957484 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 2a19fc9 Move PGXADataSource to the public API documentation.
new cdfd810 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 abe6ebb 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 d919c4d CallableStatement#getUpdateCount was returning 1 when a function returned a ResultSet. Return -1 instead.
new de54257 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 5f4c917 Updated German translation.
new 0995822 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 8d5bb3c DatabaseMetaData.getTypeInfo was reporting whether the type was signed or not, but the output column is really supposed to indicate whether the the type is unsigned or not.
new e280999 Support a parameter (?) for the amount part of the timestampadd function. Previously we only supported literals.
new 3b35c09 Release build 8.2-509.
new 5a5be9c 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 f624b98 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 a8e3967 Typo: Types.Other -> Types.OTHER.
new 4e9ce46 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 8ea362b Fix sign handling for getFastXXX methods. Don't allow '-' or '-.'.
new 2f1ef64 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 c3a46f2 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 a722ade Release 8.2-510.
new e032415 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 77b27f9 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 e864bb1 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 dba43e4 PoolingDataSources were not picking up all of the properties that were set for them. Notably it would not give you a SSL connection when asked. It was copying individual properties over piecemeal and this got out of date as new properties were added to the BaseDataSource, but not added to the copying code. Use the existing serialization code to ensure that we really do copy all of the properties over.
new fbeba01 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 fdf711e Add some more specific types to the return value for DatabaseMetaData.getTables. Return composite types, temporary views, and temporary sequences with TABLE_TYPE values specifically for them.
new 4c0f896 Fix up the previous patch to ensure datasource parameters are set properly. We must close the ObjectOutputStream to flush the data to the byte array.
new f597791 Release 8.2-511.
The 72 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
More information about the pkg-java-commits
mailing list