[jboss-jira] [JBoss JIRA] (WFLY-8307) If name of database table is written in small letters Artemis can't detect its existence
Jeff Mesnil (JIRA)
issues at jboss.org
Tue Mar 7 03:47:03 EST 2017
[ https://issues.jboss.org/browse/WFLY-8307?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jeff Mesnil moved JBEAP-9346 to WFLY-8307:
------------------------------------------
Project: WildFly (was: JBoss Enterprise Application Platform)
Key: WFLY-8307 (was: JBEAP-9346)
Workflow: GIT Pull Request workflow (was: CDW with loose statuses v1)
Component/s: JMS
(was: JMS)
Affects Version/s: (was: 7.1.0.DR13)
> If name of database table is written in small letters Artemis can't detect its existence
> ----------------------------------------------------------------------------------------
>
> Key: WFLY-8307
> URL: https://issues.jboss.org/browse/WFLY-8307
> Project: WildFly
> Issue Type: Bug
> Components: JMS
> Environment: Oracle 12c database
> Reporter: Jeff Mesnil
> Assignee: Jeff Mesnil
> Priority: Critical
>
> If the name of database table is written in small letters - e.g. node1_messages_table, Artemis can't detect its existence and it tries to create it again what leads to error \[1\]. This happens after restarting of server.
> I don't see the issue if name of database table is written in capital letters - e.g. NODE1_MESSAGES_TABLE.
> \[1\]
> {code}
> 14:00:26,208 ERROR [org.apache.activemq.artemis.jdbc.store.drivers.AbstractJDBCDriver] (ServerService Thread Pool -- 72)
> SQL STATEMENTS:
> CREATE TABLE node1_large_messages_table(ID NUMBER(19) GENERATED BY DEFAULT ON NULL AS IDENTITY, FILENAME VARCHAR(255), EXTENSION VARCHAR(10), DATA BLOB, PRIMARY KEY(ID))
> SQL EXCEPTIONS:
> SQLState: 42000 ErrorCode: 955 Message: ORA-00955: name is already used by an existing object
> 14:00:26,372 ERROR [org.apache.activemq.artemis.journal] (ServerService Thread Pool -- 72) Could not start file factory, unable to connect to database: java.sql.SQLSyntaxErrorException: ORA-00955: name is already used by an existing objec
> t
> at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:450)
> at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:399)
> at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:1059)
> at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:522)
> at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:257)
> at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:587)
> at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:210)
> at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:30)
> at oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:931)
> at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1150)
> at oracle.jdbc.driver.OracleStatement.executeUpdateInternal(OracleStatement.java:1707)
> at oracle.jdbc.driver.OracleStatement.executeUpdate(OracleStatement.java:1670)
> at oracle.jdbc.driver.OracleStatementWrapper.executeUpdate(OracleStatementWrapper.java:310)
> at org.jboss.jca.adapters.jdbc.WrappedStatement.executeUpdate(WrappedStatement.java:430)
> at org.apache.activemq.artemis.jdbc.store.drivers.AbstractJDBCDriver.createTableIfNotExists(AbstractJDBCDriver.java:170) [artemis-jdbc-store-1.5.3.003-redhat-1.jar:1.5.3.003-redhat-1]
> at org.apache.activemq.artemis.jdbc.store.drivers.AbstractJDBCDriver.createTable(AbstractJDBCDriver.java:99) [artemis-jdbc-store-1.5.3.003-redhat-1.jar:1.5.3.003-redhat-1]
> at org.apache.activemq.artemis.jdbc.store.file.JDBCSequentialFileFactoryDriver.createSchema(JDBCSequentialFileFactoryDriver.java:66) [artemis-jdbc-store-1.5.3.003-redhat-1.jar:1.5.3.003-redhat-1]
> at org.apache.activemq.artemis.jdbc.store.drivers.AbstractJDBCDriver.start(AbstractJDBCDriver.java:71) [artemis-jdbc-store-1.5.3.003-redhat-1.jar:1.5.3.003-redhat-1]
> at org.apache.activemq.artemis.jdbc.store.file.JDBCSequentialFileFactory.start(JDBCSequentialFileFactory.java:91) [artemis-jdbc-store-1.5.3.003-redhat-1.jar:1.5.3.003-redhat-1]
> at org.apache.activemq.artemis.core.persistence.impl.journal.JDBCJournalStorageManager.init(JDBCJournalStorageManager.java:74) [artemis-server-1.5.3.003-redhat-1.jar:1.5.3.003-redhat-1]
> at org.apache.activemq.artemis.core.persistence.impl.journal.AbstractJournalStorageManager.<init>(AbstractJournalStorageManager.java:216) [artemis-server-1.5.3.003-redhat-1.jar:1.5.3.003-redhat-1]
> at org.apache.activemq.artemis.core.persistence.impl.journal.JournalStorageManager.<init>(JournalStorageManager.java:104) [artemis-server-1.5.3.003-redhat-1.jar:1.5.3.003-redhat-1]
> at org.apache.activemq.artemis.core.persistence.impl.journal.JDBCJournalStorageManager.<init>(JDBCJournalStorageManager.java:52) [artemis-server-1.5.3.003-redhat-1.jar:1.5.3.003-redhat-1]
> at org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.createStorageManager(ActiveMQServerImpl.java:1860) [artemis-server-1.5.3.003-redhat-1.jar:1.5.3.003-redhat-1]
> at org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.initialisePart1(ActiveMQServerImpl.java:2000) [artemis-server-1.5.3.003-redhat-1.jar:1.5.3.003-redhat-1]
> at org.apache.activemq.artemis.core.server.impl.LiveOnlyActivation.run(LiveOnlyActivation.java:62) [artemis-server-1.5.3.003-redhat-1.jar:1.5.3.003-redhat-1]
> at org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.internalStart(ActiveMQServerImpl.java:520) [artemis-server-1.5.3.003-redhat-1.jar:1.5.3.003-redhat-1]
> at org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.start(ActiveMQServerImpl.java:469) [artemis-server-1.5.3.003-redhat-1.jar:1.5.3.003-redhat-1]
> at org.apache.activemq.artemis.jms.server.impl.JMSServerManagerImpl.start(JMSServerManagerImpl.java:412) [artemis-jms-server-1.5.3.003-redhat-1.jar:1.5.3.003-redhat-1]
> at org.wildfly.extension.messaging.activemq.jms.JMSService.doStart(JMSService.java:199) [wildfly-messaging-activemq-7.1.0.Alpha1-redhat-14.jar:7.1.0.Alpha1-redhat-14]
> at org.wildfly.extension.messaging.activemq.jms.JMSService.access$000(JMSService.java:63) [wildfly-messaging-activemq-7.1.0.Alpha1-redhat-14.jar:7.1.0.Alpha1-redhat-14]
> at org.wildfly.extension.messaging.activemq.jms.JMSService$1.run(JMSService.java:97) [wildfly-messaging-activemq-7.1.0.Alpha1-redhat-14.jar:7.1.0.Alpha1-redhat-14]
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [rt.jar:1.8.0_121]
> at java.util.concurrent.FutureTask.run(FutureTask.java:266) [rt.jar:1.8.0_121]
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0_121]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0_121]
> at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_121]
> at org.jboss.threads.JBossThread.run(JBossThread.java:320) [jboss-threads-2.2.1.Final-redhat-1.jar:2.2.1.Final-redhat-1]
> {code}
> *Customer impact:* If names of database tables are written in small letters, EAP fails at second start. From logs it's not easy to find out what is wrong and how workaround the issue. It is serious user experience problem.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
More information about the jboss-jira
mailing list