This Confluence has been LDAP enabled, if you are an ASF Committer, please use your LDAP Credentials to login. Any problems file an INFRA jira ticket please.

Child pages
  • java.io.IOException Failed to create database 'derbydb', see the next exception for details
Skip to end of metadata
Go to start of metadata

If you get an error like this

Jun 19, 2006 10:35:27 PM org.apache.activemq.broker.BrokerService getBroker
INFO: ActiveMQ 4.0 JMS Message Broker (localhost) is starting
Jun 19, 2006 10:35:27 PM org.apache.activemq.broker.BrokerService getBroker
INFO: For help or more information please see:
http://incubator.apache.org/activemq/
java.io.IOException: Failed to create database 'derbydb', see the next
exception for details.
       at
org.apache.activemq.util.IOExceptionSupport.create(IOExceptionSupport.java:42)
       at
org.apache.activemq.store.jdbc.TransactionContext.getConnection(TransactionContext.java:58)
       at
org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.createAdapter(JDBCPersistenceAdapter.java:229)
       at
org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.getAdapter(JDBCPersistenceAdapter.java:213)
       at
org.apache.activemq.store.jdbc.JDBCPersistenceAdapter.start(JDBCPersistenceAdapter.java:139)
       at
org.apache.activemq.store.journal.JournalPersistenceAdapter.start(JournalPersistenceAdapter.java:215)
       at
org.apache.activemq.broker.BrokerService.createRegionBroker(BrokerService.java:930)
       at
org.apache.activemq.broker.BrokerService.createBroker(BrokerService.java:888)
       at
org.apache.activemq.broker.BrokerService.getBroker(BrokerService.java:458)
       at
org.apache.activemq.broker.BrokerService.addConnector(BrokerService.java:143)
       at
org.apache.activemq.broker.BrokerService.addConnector(BrokerService.java:133)
       at
com.ic.ntn.message.HelloWorld$HelloWorldBroker.run(HelloWorld.java:92)
       at java.lang.Thread.run(Thread.java:595)
Caused by: SQL Exception: Failed to create database 'derbydb', see the next
exception for details.
       at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown
Source)
       at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown
Source)
       at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown
Source)
       at
org.apache.derby.impl.jdbc.EmbedConnection.newSQLException(Unknown Source)
       at org.apache.derby.impl.jdbc.EmbedConnection.createDatabase(Unknown
Source)
       at org.apache.derby.impl.jdbc.EmbedConnection.<init>(Unknown Source)
       at org.apache.derby.impl.jdbc.EmbedConnection30.<init>(Unknown
Source)
       at org.apache.derby.jdbc.Driver30.getNewEmbedConnection(Unknown
Source)
       at org.apache.derby.jdbc.InternalDriver.connect(Unknown Source)
       at org.apache.derby.jdbc.EmbeddedDataSource.getConnection(Unknown
Source)
       at org.apache.derby.jdbc.EmbeddedDataSource.getConnection(Unknown
Source)
       at
org.apache.activemq.store.jdbc.TransactionContext.getConnection(TransactionContext.java:54)
       ... 11 more

Then the error is probably that the JDBC driver (Apache Derby by default) could not write to the persistent file area.

Workaround

Create a directory for the broker to write its files. e.g. in Java code call setDataDirectory

File dir = new File("foo");
dir.mkdir();
broker.setDataDirectory(dir);

or in XML use

<broker dataDirectory="foo">...

See

  • No labels