Patch to fix bug #6293 - regression in driver performance with regards to ResultSetMetaData-heavy workloads
От | Steven Schlansker |
---|---|
Тема | Patch to fix bug #6293 - regression in driver performance with regards to ResultSetMetaData-heavy workloads |
Дата | |
Msg-id | 5CBAD10C-C4DB-4AE3-ADB4-8197E0AA4146@likeness.com обсуждение исходный текст |
Ответы |
Re: Patch to fix bug #6293 - regression in driver performance
with regards to ResultSetMetaData-heavy workloads
|
Список | pgsql-jdbc |
Hi, There is a bug report and associated mailing list thread [JDBC] [BUGS] BUG #6293: JDBC driver performance, dated Nov 15 2011 >>> >>> The following bug has been logged online: >>> >>> Bug reference: 6293 >>> PostgreSQL version: 9.1 >>> Description: JDBC driver performance >>> Details: >> >> The 9.1 JDBC driver was changed to try and fetch all metadata for the >> entire resultset in one query instead of potentially issuing multiple >> queries for each column. So this change was supposed to improve things. >> >> Looking at the code, the caching pattern has changed slightly, so now it's >> important to hold onto the same ResultSetMetaData instance. That is you >> need to do: I have a proposed fix available as a pull request on GitHub. The commit itself is here: https://github.com/NessComputing/pgjdbc/commit/15dee25198c0a7a4d3bdeca2193a003d552fac2f and the pull request complete with an in-progress discussion is here: https://github.com/pgjdbc/pgjdbc/pull/1 I requested guidance on the mailing list last week on the best way to approach this problem, but there were no responses, so I have changed the ResultSet to cache the MetaData instances. As best as I can tell the MetaData is immutable, so hopefully there will be no ill effects from caching instances. I saw some discussion about licensing re: GitHub on the mailing list the other day, so to be perfectly clear I am releasing this code to the pgsql-jdbc project under whatever terms they so choose, or the public domain if that is the appropriate choice. I hope this will be an example of how moving to GitHub pull requests can be a positive change :-) I believe this fixes the referenced bug, and I've asked the original submitter to test out my change to see if it fixes it for him. Regards, Steven Schlansker Ness Computing
В списке pgsql-jdbc по дате отправления: