[jboss-jira] [JBoss JIRA] Assigned: (JBAS-3953) OracleDatabasePersistencePlugin does not override selectTimers(ObjectName containerId) - selecting persisted timers fails at startup

Dimitris Andreadis (JIRA) jira-events at lists.jboss.org
Thu Apr 12 14:15:51 EDT 2007


     [ http://jira.jboss.com/jira/browse/JBAS-3953?page=all ]

Dimitris Andreadis reassigned JBAS-3953:
----------------------------------------

    Assignee: Dimitris Andreadis

> OracleDatabasePersistencePlugin does not override selectTimers(ObjectName containerId) - selecting persisted timers fails at startup
> ------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: JBAS-3953
>                 URL: http://jira.jboss.com/jira/browse/JBAS-3953
>             Project: JBoss Application Server
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: Scheduling/Timers
>    Affects Versions: JBossAS-4.0.5.GA, JBossAS-4.0.4.GA
>         Environment: Oracle Database instead of HSQL-DB
>            Reporter: Gunnar von der Beck
>         Assigned To: Dimitris Andreadis
>         Attachments: PatchedOraclePersistencePlugin.java
>
>
> Precondition: 
> -------------------
> Configure the use of the OracleDatabasePersistencePlugin for EJBTimers:
>    <!-- A persistence policy that persistes timers to a database -->
>    <mbean code="org.jboss.ejb.txtimer.DatabasePersistencePolicy" name="jboss.ejb:service=EJBTimerService,persistencePolicy=database">
>      <!-- DataSource JNDI name -->
>      <depends optional-attribute-name="DataSource">jboss.jca:service=DataSourceBinding,name=DefaultDS</depends>
>      <!-- The plugin that handles database persistence -->
>      <attribute name="DatabasePersistencePlugin">org.jboss.ejb.txtimer.OracleDatabasePersistencePlugin</attribute>
>    </mbean>
> Error:
> --------
> The org.jboss.ejb.txtimer.OracleDatabasePersistencePlugin extends GeneralPurposeDatabasePersistencePlugin and implements a method
>    public List selectTimers() throws SQLException;
> In order to override the behavior of the GeneralPurposeDatabasePersistencePlugin the correct signature must be 
>    public List selectTimers(ObjectName containerId) throws SQLException;
> Hence the following exception occurs when restoring persisted timers at server startup:
> 2006-12-19 13:27:33,789 ERROR [org.jboss.ejb.txtimer.GeneralPurposeDatabasePersistencePlugin] Cannot deserialize
> java.io.StreamCorruptedException: invalid stream header
> 	at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:764)
> 	at java.io.ObjectInputStream.<init>(ObjectInputStream.java:277)
> 	at org.jboss.invocation.MarshalledValueInputStream.<init>(MarshalledValueInputStream.java:74)
> 	at org.jboss.ejb.txtimer.GeneralPurposeDatabasePersistencePlugin.deserialize(GeneralPurposeDatabasePersistencePlugin.java:386)
> 	at org.jboss.ejb.txtimer.GeneralPurposeDatabasePersistencePlugin.selectTimers(GeneralPurposeDatabasePersistencePlugin.java:228)
> 	at org.jboss.ejb.txtimer.DatabasePersistencePolicy.listTimerHandles(DatabasePersistencePolicy.java:175)
> 	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.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
> 	at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
> 	at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
> 	at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
> 	at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
> 	at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
> 	at $Proxy16.listTimerHandles(Unknown Source)
> 	at org.jboss.ejb.txtimer.EJBTimerServiceImpl.restoreTimers(EJBTimerServiceImpl.java:408)

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

        



More information about the jboss-jira mailing list