[hibernate-issues] [Hibernate-JIRA] Assigned: (HHH-4574) ConnectionProviderFactory.getConnectionProperties() includes extra properties

Strong Liu (JIRA) noreply at atlassian.com
Thu Dec 24 08:26:29 EST 2009


     [ http://opensource.atlassian.com/projects/hibernate/browse/HHH-4574?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Strong Liu reassigned HHH-4574:
-------------------------------

    Assignee: Strong Liu

> ConnectionProviderFactory.getConnectionProperties() includes extra properties 
> ------------------------------------------------------------------------------
>
>                 Key: HHH-4574
>                 URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-4574
>             Project: Hibernate Core
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 3.2.4.sp1
>         Environment: Hibernate 3.2.4.sp1, Derby DB.  
> Any Java environment where System properties include many properties whose names *include* 'hibernate.connection' but do not *start with* 'hibernate.connection'.
>            Reporter: Kevin Bowman
>            Assignee: Strong Liu
>         Attachments: org.hibernate.connection.ConnectionProviderFactory.patch, PropertiesTest.java
>
>
> In our environment we are setting a number of properties with keys like 'rpt.3.hibernate.connection.url'.  They are used indirectly for configuring hibernate, but only a small fraction of them are used for configuring any given hibernate session.  Unfortunately, all these System properties are being pulled into JDBC URL because of ConnectionProviderFactory, which causes problems like this with DerbyDB:
> 2009-11-13 09:57:19,065 [com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread-#1] WARN com.mchange.v2.resourcepool.BasicResourcePool - com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask at 67f2b0dd -- Acquisition Attempt Failed!!! Clearing pending acquires. While trying to acquire a needed new resource, we failed to succeed more than the maximum number of allowed acquisition attempts (30). Last acquisition attempt exception:
> java.sql.SQLTransientConnectionException: A connection could not be established because the database name 'reports/lisa-reports.db;ction.password_enc=76f271db3661fd50082e68d4b953fbee;ction.username=sa;autocommit=false;ion.url=internal;create=true;ction.url=jdbc:derby://localhost:1527/db/reports.db;ction.driver_class=org.apache.derby.jdbc.ClientDriver' is larger than the maximum length allowed by the network protocol.
>     at org.apache.derby.client.am.SQLExceptionFactory40.getSQLException(Unknown Source)
>     at org.apache.derby.client.am.SqlException.getSQLException(Unknown Source)
>     at org.apache.derby.jdbc.ClientDriver.connect(Unknown Source)
>     at com.mchange.v2.c3p0.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:134)
>     at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:182)
>     at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:171)
>     at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:137)
>     at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1014)
>     at com.mchange.v2.resourcepool.BasicResourcePool.access$800(BasicResourcePool.java:32)
>     at com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask.run(BasicResourcePool.java:1810)
>     at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:547)
> Caused by: org.apache.derby.client.am.SqlException: A connection could not be established because the database name 'reports/lisa-reports.db;ction.password_enc=76f271db3661fd50082e68d4b953fbee;ction.username=sa;autocommit=false;ion.url=internal;create=true;ction.url=jdbc:derby://localhost:1527/db/reports.db;ction.driver_class=org.apache.derby.jdbc.ClientDriver' is larger than the maximum length allowed by the network protocol.
>     at org.apache.derby.client.net.NetConnectionRequest.buildRDBNAM(Unknown Source)
>     at org.apache.derby.client.net.NetConnectionRequest.buildACCSEC(Unknown Source)
>     at org.apache.derby.client.net.NetConnectionRequest.writeAccessSecurity(Unknown Source)
>     at org.apache.derby.client.net.NetConnection.writeServerAttributesAndKeyExchange(Unknown Source)
>     at org.apache.derby.client.net.NetConnection.flowServerAttributesAndKeyExchange(Unknown Source)
>     at org.apache.derby.client.net.NetConnection.flowUSRIDPWDconnect(Unknown Source)
>     at org.apache.derby.client.net.NetConnection.flowConnect(Unknown Source)
>     at org.apache.derby.client.net.NetConnection.<init>(Unknown Source)
>     at org.apache.derby.client.net.NetConnection40.<init>(Unknown Source)
>     at org.apache.derby.client.net.ClientJDBCObjectFactoryImpl40.newNetConnection(Unknown Source)
>     ... 9 more
> Attached is a test case and patch.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the hibernate-issues mailing list