On 11/16/2011 08:55 AM, Nicklas Karlsson wrote:
It's a strange one. Got it today on upstream master after
creating one
datasource with
/subsystem=datasources/data-source="OSTiDataSource":add(jndi-name="java:jboss/datasources/OSTiDataSource",
pool-name="OSTiPool", driver-name="oracle",
connection-url="jdbc:oracle:thin:@host:port:sid", user-name="xxx",
password="xxx", flush-strategy="EntirePool",
new-connection-sql="ALTER
SESSION SET NLS_NUMERIC_CHARACTERS='.,'",
stale-connection-checker-class-name="org.jboss.jca.adapters.jdbc.vendor.OracleStaleConnectionChecker",
valid-connection-checker-class-name="org.jboss.jca.adapters.jdbc.vendor.OracleValidConnectionChecker",
exception-sorter-class-name="org.jboss.jca.adapters.jdbc.vendor.OracleExceptionSorter",
idle-timeout-minutes=15)
/subsystem=datasources/data-source="OSTiDataSource":enable
I think the bug is in
org.jboss.jca.core.api.connectionmanager.pool.PoolConfiguration and its
handling of idle connection timeout.
One part of the bug is that idle connection timeout appears to currently
be in milliseconds (not minutes like it should be).
org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool.removeIdleConnections()
is treating the timeout, like its in milliseconds, so its just a bug in
the PoolConfiguration class. Another problem or question, is why does a
15 millisecond timeout cause multiple connections to be enlisted in the
active TX, that is not good.
As a test, could you set idle-timeout-minutes=900000 (that should be 15
minutes).
If changing the idle-timeout-minutes setting helps, could you create a
jira for that.
Thanks,
Scott
and clicking around my app a bit (persisting etc)
I re-created the DS with
/subsystem=datasources/data-source="OSTiDataSource":add(jndi-name="java:jboss/datasources/OSTiDataSource",
pool-name="OSTiPool", driver-name="oracle",
connection-url="jdbc:oracle:thin:@ host:port:sid", user-name="xxx",
password="xxx", flush-strategy="EntirePool",
new-connection-sql="ALTER
SESSION SET NLS_NUMERIC_CHARACTERS='.,'")
/subsystem=datasources/data-source="OSTiDataSource":enable
and I didn't get the application.
but then I re-created the DS in the first manner and I *didn't* get any
exceptions.
On Wed, Nov 16, 2011 at 3:49 PM, Scott Marlow<smarlow(a)redhat.com> wrote:
> What this warning mean "ARJUNA12140: Adding multiple last resources is
> disallowed. Current resource is
> com.arjuna.ats.internal.arjuna.abstractrecords.LastResourceRecord@37f017"
>
> The exception that follows is "javax.transaction.SystemException:
> IJ000356: Failed to enlist: java.lang.Throwable: Unabled to enlist
> resource, see the previous warnings. tx=TransactionImple< ac,
> BasicAction: 0:ffffc082df3f:1b3f9691:4ec10467:3602 status:
> ActionStatus.ABORT_ONLY>"
>
>
http://pastebin.com/GkRTN4jc contains the full exception call stack.
>
> Does this mean that more than one non-XA datasources were enlisted into
> the transaction? Or something else?
>
> Scott
> _______________________________________________
> jboss-as7-dev mailing list
> jboss-as7-dev(a)lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/jboss-as7-dev
>