[JBoss Cache: Core Edition] - JDBCCacheLoader with Oracle 10g problem
by niuxuetao_fiserv
Hi,
I am using JBossPojo Cache 3.0.0.GA and evicting cache to oracle 10g using JDBCCacheLoader shipped with JBoss. But when I run it with 1 thread, I always see such exception:
| Caused by: java.sql.SQLException: ORA-01461: can bind a LONG value only for insert into a LONG column
|
| at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
| at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
| at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
| at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
| at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:216)
| at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:955)
| at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1168)
| at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3285)
| at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3368)
| at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeUpdate(NewProxyPreparedStatement.java:105)
| at org.jboss.cache.loader.AdjListJDBCCacheLoader.insertNode(AdjListJDBCCacheLoader.java:501)
| ... 69 more
| [2009-06-26 18:23:55,046] [Detection1] WARN PojoCacheImpl - Could not end transaction for operation on: /RTDE/pattern-matching-threshold/663330655
| javax.transaction.RollbackException: outcome is false status: 1
| at org.jboss.cache.transaction.DummyTransaction.commit(DummyTransaction.java:98)
| at org.jboss.cache.transaction.DummyBaseTransactionManager.commit(DummyBaseTransactionManager.java:99)
| at org.jboss.cache.pojo.impl.PojoCacheImpl.endTransaction(PojoCacheImpl.java:152)
| at org.jboss.cache.pojo.impl.PojoCacheImpl.attach(PojoCacheImpl.java:116)
| at org.jboss.cache.pojo.impl.PojoCacheImpl.attach(PojoCacheImpl.java:93)
| at org.jboss.cache.pojo.impl.PojoCacheImpl.attach(PojoCacheImpl.java:88)
| ...
|
If I run it with multiple threads, I get this exception, which looks like jboss is trying to recreate the same table for twice:
|
| Caused by: org.jboss.cache.pojo.PojoCacheException: init org.jboss.cache.config.Configuration@777dc9f6 failed
| at org.jboss.cache.pojo.impl.PojoCacheImpl.<init>(PojoCacheImpl.java:75)
| at org.jboss.cache.pojo.PojoCacheFactory.createCache(PojoCacheFactory.java:54)
| at com.fiserv.detection.eventcache.jboss.JBossPojoCacheStorage.<init>(JBossPojoCacheStorage.java:26)
| at com.fiserv.detection.eventcache.jboss.JBossPojoCacheStorageFactory.getCacheStorage(JBossPojoCacheStorageFactory.java:100)
| at com.fiserv.detection.eventcache.statemachine.CacheAccessorFactory.createAccessor(CacheAccessorFactory.java:38)
| at com.fiserv.detection.eventcache.api.EventCacheService.createCacheAccessor(EventCacheService.java:62)
| at com.fiserv.detection.patternmatching.PatternMatching.init(PatternMatching.java:100)
| at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
| at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1414)
| at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1375)
| at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1335)
| ... 41 more
| Caused by: org.jboss.cache.CacheException: java.lang.reflect.InvocationTargetException
| at org.jboss.cache.util.reflect.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:148)
| at org.jboss.cache.factories.ComponentRegistry$PrioritizedMethod.invoke(ComponentRegistry.java:970)
| at org.jboss.cache.factories.ComponentRegistry.internalStart(ComponentRegistry.java:746)
| at org.jboss.cache.factories.ComponentRegistry.start(ComponentRegistry.java:610)
| at org.jboss.cache.invocation.CacheInvocationDelegate.start(CacheInvocationDelegate.java:355)
| at org.jboss.cache.DefaultCacheFactory.createCache(DefaultCacheFactory.java:121)
| at org.jboss.cache.pojo.impl.PojoCacheImpl.<init>(PojoCacheImpl.java:71)
| ... 54 more
| Caused by: java.lang.reflect.InvocationTargetException
| at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
| at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.cache.util.reflect.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:144)
| ... 60 more
| Caused by: org.jboss.cache.CacheException: Unable to start cache loaders
| at org.jboss.cache.loader.CacheLoaderManager.startCacheLoader(CacheLoaderManager.java:467)
| ... 65 more
| Caused by: java.sql.SQLException: ORA-00955: name is already used by an existing object
|
| at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
| at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
| at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
| at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
| at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:216)
| at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:955)
| at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1168)
| at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3285)
| at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3390)
| at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.execute(NewProxyPreparedStatement.java:989)
| at org.jboss.cache.loader.AdjListJDBCCacheLoader.createDummyTableIfNeeded(AdjListJDBCCacheLoader.java:296)
| at org.jboss.cache.loader.AdjListJDBCCacheLoader.start(AdjListJDBCCacheLoader.java:269)
| at org.jboss.cache.loader.JDBCCacheLoader.start(JDBCCacheLoader.java:376)
| at org.jboss.cache.loader.CacheLoaderManager.startCacheLoader(CacheLoaderManager.java:461)
| ... 65 more
|
My jboss cache configuration file is as below:
| <?xml version="1.0" encoding="UTF-8"?>
| <jbosscache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
| xmlns="urn:jboss:jbosscache-core:config:3.0">
|
| <locking isolationLevel="READ_COMMITTED"
| lockParentForChildInsertRemove="false" lockAcquisitionTimeout="4294967"
| nodeLockingScheme="mvcc" writeSkewCheck="false" concurrencyLevel="500" />
|
| <transaction
| transactionManagerLookupClass="org.jboss.cache.transaction.GenericTransactionManagerLookup"
| syncRollbackPhase="false" syncCommitPhase="false" />
|
| <jmxStatistics enabled="false" />
|
| <startup regionsInactiveOnStartup="true" />
|
| <shutdown hookBehavior="DEFAULT" />
|
| <listeners asyncPoolSize="1" asyncQueueSize="100000" />
|
| <invocationBatching enabled="false" />
|
| <eviction wakeUpInterval="5000">
|
| <!-- Cache wide default -->
| <region name="/_default_" algorithmClass="org.jboss.cache.eviction.LRUAlgorithm">
|
| <property name="maxNodes">100000</property>
| <property name="timeToLiveSeconds">300</property>
| </region>
| </eviction>
|
| <loaders passivation="false" shared="true">
|
| <preload>
| <node fqn="/" />
| </preload>
|
|
| <loader class="org.jboss.cache.loader.JDBCCacheLoader" async="false"
| fetchPersistentState="false" ignoreModifications="false"
| purgeOnStartup="false">
|
| <properties>
|
| cache.jdbc.table.name=Cached_Events
| cache.jdbc.table.create=true
| cache.jdbc.table.drop=false
| cache.jdbc.table.primarykey=jbosscache_pk
| cache.jdbc.fqn.column=fqn
| cache.jdbc.fqn.type=varchar2(255)
| cache.jdbc.node.column=node
| cache.jdbc.node.type=blob
| cache.jdbc.parent.column=parent
|
| cache.jdbc.sql-concat=concat(1,2)
|
| cache.jdbc.connection.factory=org.jboss.cache.loader.C3p0ConnectionFactory
| c3p0.maxPoolSize=20
| c3p0.checkoutTimeout=5000
|
| location=tmp/jbosscache
| </properties>
|
| </loader>
|
|
| </loaders>
|
| </jbosscache>
|
|
I didn't manually create the table in Oracle at all. Has anyone encountered this before?
Regards,
Xuetao
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4240409#4240409
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4240409
16 years, 10 months
[JBoss jBPM] - jbpm-4.0.CR1 can be used already or is only for testing???
by jwerkmeister
Many of the examples only work when you run them with JUNIT and are excluded from the ANT file. So CR1 is only for testing for now???
| <jar destfile="${jbpm.home}/examples/target/examples.bar">
| <fileset dir="${jbpm.home}/examples/src">
| <include name="**/*.jpdl.xml" />
| <exclude name="org/jbpm/examples/task/swimlane/process.jpdl.xml" />
| <exclude name="org/jbpm/examples/task/candidates/process.jpdl.xml" />
| <exclude name="org/jbpm/examples/concurrency/graphbased/process.jpdl.xml" />
| <exclude name="org/jbpm/examples/timer/repeat/process.jpdl.xml" />
| <exclude name="org/jbpm/examples/script/text/process.jpdl.xml" />
| <exclude name="org/jbpm/examples/decision/handler/process.jpdl.xml" />
| <exclude name="org/jbpm/examples/mail/template/process.jpdl.xml" />
| <exclude name="org/jbpm/examples/script/expression/process.jpdl.xml" />
| <exclude name="org/jbpm/examples/task/assignee/process.jpdl.xml" />
| <exclude name="org/jbpm/examples/mail/inline/process.jpdl.xml" />
| <exclude name="org/jbpm/examples/mail/template/process.jpdl.xml" />
| <exclude name="org/jbpm/examples/eventlistener/process.jpdl.xml" />
| <exclude name="org/jbpm/examples/timer/event/process.jpdl.xml" />
| <exclude name="org/jbpm/examples/task/assignmenthandler/process.jpdl.xml" />
| <exclude name="org/jbpm/examples/java/JavaInstantiateTest.java" />
| </fileset>
| </jar>
|
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4240406#4240406
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4240406
16 years, 10 months