1 Reply Latest reply on Jan 17, 2007 6:04 PM by jeffdo666

    HSQL fail to close data file

    niefeng

      Dear all,

      Did anyone encounter the following error before ?
      [JMSSender.sendMessageToTopic] Error
      org.jboss.mq.SpyJMSException: Could not store message: 18837 msg=282 hard NOT_STORED PERSISTENT queue=TOPIC.fromRouter.ID:7.-2147483648 priority=4 lateClone=false hashCode=31865957; - nested throwable: (java.sql.SQLException: File input/output errorerror java.io.IOException closing file - file E:\jboss-4.0.2\server\default\data\hypersonic\localDB.data in statement [INSERT INTO JMS_MESSAGES (MESSAGEID, DESTINATION, MESSAGEBLOB, TXID, TXOP) VALUES(?,?,?,?,?)])
      at org.jboss.mq.pm.jdbc2.PersistenceManager.saveToStorage(PersistenceManager.java:1283)
      at org.jboss.mq.server.MessageCache.saveToStorage(MessageCache.java:407)
      at org.jboss.mq.server.MessageReference.makeSoft(MessageReference.java:301)
      at org.jboss.mq.server.MessageCache.validateSoftReferenceDepth(MessageCache.java:354)
      at org.jboss.mq.server.MessageCache.addInternal(MessageCache.java:145)
      at org.jboss.mq.server.MessageCache.add(MessageCache.java:115)
      at org.jboss.mq.server.JMSTopic.addMessage(JMSTopic.java:358)
      at org.jboss.mq.server.JMSDestinationManager.addMessage(JMSDestinationManager.java:397)
      at org.jboss.mq.server.JMSDestinationManager.addMessage(JMSDestinationManager.java:373)
      at org.jboss.mq.server.JMSServerInvoker.addMessage(JMSServerInvoker.java:136)
      at org.jboss.mq.il.jvm.JVMServerIL.addMessage(JVMServerIL.java:136)
      at org.jboss.mq.Connection.sendToServer(Connection.java:965)
      at org.jboss.mq.SpySession.sendMessage(SpySession.java:975)
      at org.jboss.mq.SpyMessageProducer.send(SpyMessageProducer.java:265)
      at org.jboss.mq.SpyMessageProducer.send(SpyMessageProducer.java:199)
      at org.jboss.mq.SpyTopicPublisher.publish(SpyTopicPublisher.java:58)


      I am not sure why the hsql db can't close the localdb.data file properly. The JMS message is fairly large, it is about 1.7MB, will it be the issue? The size of the localdb.data has grown up to 210MB, however it still haven't reached the limit as specified in the hsql properties file.

      The jboss vesion i am using now is 4.0.2.
      Hypersonic DB version 1.8.0

      The properties for the HSQL are as follow

      hsqldb.cache_file_scale=1
      runtime.gc_interval=0
      hsqldb.first_identity=0
      version=1.8.0
      modified=yes
      hsqldb.script_format=0
      sql.enforce_size=false
      hsqldb.cache_size_scale=8
      hsqldb.cache_scale=14
      hsqldb.log_size=200
      sql.enforce_strict_size=false
      readonly=false
      hsqldb.compatible_version=1.7.2
      hsqldb.original_version=1.8.0
      sql.compare_in_locale=false
      hsqldb.nio_data_file=true
      hsqldb.cache_version=1.7.0
      hsqldb.default_table_type=memory


      Any help will be greatly appreciated.