Subject | JBoss/Firebird Integration |
---|---|
Author | petr.kalina |
Post date | 2006-06-05T08:14:19Z |
hi,
I'm experiencing problems when using JBoss CMP on top of Firebird. I'm
not sure, wheather this is JBoss topic or if it's an issue of the
driver/db. I'm trying to get information from the jboss forums on this
topic as well, but any hints would be highly appreciated..
The exception looks like this:
org.firebirdsql.jdbc.FBSQLException: Problem getting connection:
org.jboss.resource.JBossResourceException: Could not enlist in
transaction on entering meta-aware object!; - nested throwable:
(javax.transaction.SystemException: java.lang.Throwable: Unabled to
enlist resource, see the previous warnings.
tx=TransactionImpl:XidImpl[FormatId=257,
GlobalId=jarchive.nem.homolka.cz/6929968, BranchQual=, localId=6929968])
at org.firebirdsql.jdbc.FBDataSource.getConnection(FBDataSource.java:88)
at
org.jboss.ejb.plugins.cmp.jdbc.JDBCAbstractQueryCommand.execute(JDBCAbstractQueryCommand.java:210)
at
org.jboss.ejb.plugins.cmp.jdbc.JDBCAbstractQueryCommand.execute(JDBCAbstractQueryCommand.java:128)
at
org.jboss.ejb.plugins.cmp.jdbc.JDBCFindEntitiesCommand.execute(JDBCFindEntitiesCommand.java:40)
at
org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.findEntities(JDBCStoreManager.java:598)
at
org.jboss.ejb.plugins.CMPPersistenceManager.findEntities(CMPPersistenceManager.java:322)
at
org.jboss.resource.connectionmanager.CachedConnectionInterceptor.findEntities(CachedConnectionInterceptor.java:245)
...
The exception occurs when the server is under heavy load and gets
excessive after some time... It runs JBoss 4.0.3SP1 and FB superserver
2 RC 1.
This is my Datasource config snippet:
<tx-connection-factory>
<jndi-name>FirebirdDS</jndi-name>
<xa-transaction/>
<rar-name>jaybird-2.0.1.rar</rar-name>
<connection-definition>javax.sql.DataSource</connection-definition>
<config-property name="Database"
type="java.lang.String">localhost:${jboss.server.data.dir}/firebird/data.fdb</config-property>
<min-pool-size>20</min-pool-size>
<max-pool-size>100</max-pool-size>
<idle-timeout-minutes>10</idle-timeout-minutes>
<blocking-timeout-millis>5000</blocking-timeout-millis>
<!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml
(optional) -->
<metadata>
<type-mapping>Firebird</type-mapping>
</metadata>
</tx-connection-factory>
I got very similar exceptions using classical server - that is why I
went for SS. However it's still aching.
I have several questions in addition to this:
1) how to enable more detailed loging in firebird?
2) how to see how many connections are currently opened to a server
3) how to make a periodic flush of all opened connections
Thanks for amy assistance or ideas,
-- petr kalina
I'm experiencing problems when using JBoss CMP on top of Firebird. I'm
not sure, wheather this is JBoss topic or if it's an issue of the
driver/db. I'm trying to get information from the jboss forums on this
topic as well, but any hints would be highly appreciated..
The exception looks like this:
org.firebirdsql.jdbc.FBSQLException: Problem getting connection:
org.jboss.resource.JBossResourceException: Could not enlist in
transaction on entering meta-aware object!; - nested throwable:
(javax.transaction.SystemException: java.lang.Throwable: Unabled to
enlist resource, see the previous warnings.
tx=TransactionImpl:XidImpl[FormatId=257,
GlobalId=jarchive.nem.homolka.cz/6929968, BranchQual=, localId=6929968])
at org.firebirdsql.jdbc.FBDataSource.getConnection(FBDataSource.java:88)
at
org.jboss.ejb.plugins.cmp.jdbc.JDBCAbstractQueryCommand.execute(JDBCAbstractQueryCommand.java:210)
at
org.jboss.ejb.plugins.cmp.jdbc.JDBCAbstractQueryCommand.execute(JDBCAbstractQueryCommand.java:128)
at
org.jboss.ejb.plugins.cmp.jdbc.JDBCFindEntitiesCommand.execute(JDBCFindEntitiesCommand.java:40)
at
org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.findEntities(JDBCStoreManager.java:598)
at
org.jboss.ejb.plugins.CMPPersistenceManager.findEntities(CMPPersistenceManager.java:322)
at
org.jboss.resource.connectionmanager.CachedConnectionInterceptor.findEntities(CachedConnectionInterceptor.java:245)
...
The exception occurs when the server is under heavy load and gets
excessive after some time... It runs JBoss 4.0.3SP1 and FB superserver
2 RC 1.
This is my Datasource config snippet:
<tx-connection-factory>
<jndi-name>FirebirdDS</jndi-name>
<xa-transaction/>
<rar-name>jaybird-2.0.1.rar</rar-name>
<connection-definition>javax.sql.DataSource</connection-definition>
<config-property name="Database"
type="java.lang.String">localhost:${jboss.server.data.dir}/firebird/data.fdb</config-property>
<min-pool-size>20</min-pool-size>
<max-pool-size>100</max-pool-size>
<idle-timeout-minutes>10</idle-timeout-minutes>
<blocking-timeout-millis>5000</blocking-timeout-millis>
<!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml
(optional) -->
<metadata>
<type-mapping>Firebird</type-mapping>
</metadata>
</tx-connection-factory>
I got very similar exceptions using classical server - that is why I
went for SS. However it's still aching.
I have several questions in addition to this:
1) how to enable more detailed loging in firebird?
2) how to see how many connections are currently opened to a server
3) how to make a periodic flush of all opened connections
Thanks for amy assistance or ideas,
-- petr kalina