Mantis Bugtracker
  

Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0001034 [Resin] minor always 04-03-06 11:08 04-10-06 16:14
Reporter ferg View Status public  
Assigned To ferg
Priority urgent Resolution fixed  
Status closed   Product Version 3.0.18
Summary 0001034: JMS with oracle
Description (rep by Bryan Davis)

I've been attempting to use resin 3.0.18 jms using an oracle datastore and ran into a number of issues.
 
First, creating the consumer fails with oracle exceptions.
 
[14:20:46.337] com.caucho.loader.StartRuntimeException: com.caucho.jms.JMSExceptionWrapper: ORA-01400: cannot insert NULL into ("RCITRIAL"."RESIN_JMS_CONSUMER"."S_ID")
[14:20:46.337]
[14:20:46.337] at com.caucho.loader.EnvironmentClassLoader.start(EnvironmentClassLoader.java:325)
[14:20:46.337] at com.caucho.server.webapp.Application.start(Application.java:1578)
[14:20:46.337] at com.caucho.server.deploy.DeployController.startImpl(DeployController.java:587)
[14:20:46.337] at com.caucho.server.deploy.StartAutoRedeployAutoStrategy.startOnInit(StartAutoRedeployAutoStrategy.java:72)
[14:20:46.337] at com.caucho.server.deploy.DeployController.startOnInit(DeployController.java:475)
[14:20:46.337] at com.caucho.server.deploy.DeployContainer.start(DeployContainer.java:158)
[14:20:46.337] at com.caucho.server.webapp.ApplicationContainer.start(ApplicationContainer.java:651)
[14:20:46.337] at com.caucho.server.host.Host.start(Host.java:385)
[14:20:46.337] at com.caucho.server.deploy.DeployController.startImpl(DeployController.java:587)
[14:20:46.337] at com.caucho.server.deploy.StartAutoRedeployAutoStrategy.startOnInit(StartAutoRedeployAutoStrategy.java:72)
[14:20:46.337] at com.caucho.server.deploy.DeployController.startOnInit(DeployController.java:475)
[14:20:46.337] at com.caucho.server.deploy.DeployContainer.start(DeployContainer.java:158)
[14:20:46.337] at com.caucho.server.host.HostContainer.start(HostContainer.java:467)
[14:20:46.337] at com.caucho.server.resin.ServletServer.start(ServletServer.java:945)
[14:20:46.337] at com.caucho.server.deploy.DeployController.startImpl(DeployController.java:587)
[14:20:46.337] at com.caucho.server.deploy.AbstractDeployControllerStrategy.start(AbstractDeployControllerStrategy.java:56)
[14:20:46.337] at com.caucho.server.deploy.DeployController.start(DeployController.java:483)
[14:20:46.337] at com.caucho.server.resin.ResinServer.start(ResinServer.java:478)
[14:20:46.337] at com.caucho.server.resin.Resin.init(Resin.java)
[14:20:46.337] at com.caucho.server.resin.Resin.main(Resin.java:623)
[14:20:46.337] Caused by: com.caucho.jms.JMSExceptionWrapper: ORA-01400: cannot insert NULL into ("RCITRIAL"."RESIN_JMS_CONSUMER"."S_ID")
[14:20:46.337]
[14:20:46.337] at com.caucho.jms.jdbc.JdbcTopicConsumer.createTopic(JdbcTopicConsumer.java:190)
[14:20:46.337] at com.caucho.jms.jdbc.JdbcTopicConsumer.<init>(JdbcTopicConsumer.java:107)
[14:20:46.337] at com.caucho.jms.jdbc.JdbcTopic.createConsumer(JdbcTopic.java:148)
[14:20:46.337] at com.caucho.jms.jdbc.JdbcTopic.createConsumer(JdbcTopic.java:81)
[14:20:46.337] at com.caucho.jms.session.SessionImpl.createConsumer(SessionImpl.java:378)
[14:20:46.337] at com.caucho.jms.session.SessionImpl.createConsumer(SessionImpl.java:359)
[14:20:46.337] at com.caucho.ejb.message.MessageServer$Consumer.start(MessageServer.java:235)
[14:20:46.337] at com.caucho.ejb.message.MessageServer.start(MessageServer.java:141)
[14:20:46.337] at com.caucho.ejb.EnvServerManager.start(EnvServerManager.java:387)
[14:20:46.337] at com.caucho.ejb.EnvServerManager.environmentStart(EnvServerManager.java:510)
[14:20:46.337] at com.caucho.loader.EnvironmentClassLoader.start(EnvironmentClassLoader.java:318)
[14:20:46.337] ... 19 more
[14:20:46.337] Caused by: java.sql.SQLException: ORA-01400: cannot insert NULL into ("RCITRIAL"."RESIN_JMS_CONSUMER"."S_ID")
[14:20:46.337]
[14:20:46.337] at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
[14:20:46.337] at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
[14:20:46.337] at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
[14:20:46.337] at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
[14:20:46.337] at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:216)
[14:20:46.337] at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:955)
[14:20:46.337] at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1168)
[14:20:46.337] at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3285)
[14:20:46.337] at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3368)
[14:20:46.337] at com.caucho.sql.UserPreparedStatement.executeUpdate(UserPreparedStatement.java:117)
[14:20:46.337] at com.caucho.sql.UserPreparedStatement.executeUpdate(UserPreparedStatement.java:117)
[14:20:46.337] at com.caucho.jms.jdbc.JdbcTopicConsumer.createTopic(JdbcTopicConsumer.java:174)
[14:20:46.337] ... 29 more
 
 
 
 
  The work around for this problem is to modify JdbcTopic to include the topic name so that section of code doesn't get used (which is probably the correct case anyway). Changing line 148/149 of JdbcTopicConsumer.java to be
        return new JdbcTopicConsumer(session, selector, _jdbcManager, this, noLocal, this.getName());
 rather than
        return new JdbcTopicConsumer(session, selector, _jdbcManager, this, noLocal);
 
causes the topic to be created with the appropriate name.
 
 
Second, you get really unpredictable results if the datasource isn't specified in the connection factory, but it is specified in the topic. The messages seem to just hang in the queue table forever and never get received. Some more dire warnings in the documentation about this would be appreciated.
 
Additional Information
Attached Files

- Relationships

- Notes
(0001078)
ferg
04-10-06 16:14

ejb/6a9a
 

- Issue History
Date Modified Username Field Change
04-03-06 11:08 ferg New Issue
04-03-06 11:55 doughty Issue Monitored: doughty
04-10-06 16:14 ferg Note Added: 0001078
04-10-06 16:14 ferg Assigned To  => ferg
04-10-06 16:14 ferg Status new => closed
04-10-06 16:14 ferg Resolution open => fixed
04-10-06 16:14 ferg Fixed in Version  => 3.0.19


Mantis 1.0.0rc3[^]
Copyright © 2000 - 2005 Mantis Group
30 total queries executed.
26 unique queries executed.
Powered by Mantis Bugtracker