mq
  1. mq
  2. MQ-274

enhanced cluster: max. clusterid length error log message based on max. db table name in broker log is not correct

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 4.1, 4.2, 4.3, 4.4, 4.4u1, 4.4u2, 4.5, 4.5.1, 4.5.2
    • Fix Version/s: 5.0
    • Component/s: broker-core
    • Labels:
      None

      Description

      The following error log message on longest cluster id length allowed by a database for MQ enhanced cluster is not accurate, similarly in MQ Administration Guide, see MQ-275

      [#|2013-01-28T21:32:32.508-0800|SEVERE|5.0|imq.log.Logger|_ThreadID=1;_ThreadName=main;|ERROR [B3198]: Error initializing cluster manager:
      com.sun.messaging.jmq.jmsserver.util.BrokerException: [B3179]: The specified cluster identifier (a123456789123456789) is too long. The length should
      not exceed the database maximum table name length 30 minus 14.

      Then imq.cluster.clusterid=a123456789123456, it still fails because an index name would be too long, finally making imq.cluster.clusterid=a12345678912 worked
      ----------------------
      Caused by: com.sun.messaging.jmq.jmsserver.persist.jdbc.comm.MQSQLException: [CREATE INDEX MQCONSTATE41Ca123456789123456IDX1 ON MQCONSTATE41Ca123456789123456 (TRANSACTION_ID)]: ORA-00972: identifier is too long
      [42000, 972]
      at com.sun.messaging.jmq.jmsserver.persist.jdbc.comm.CommDBManager.wrapSQLException(CommDBManager.java:1157)
      at com.sun.messaging.jmq.jmsserver.persist.jdbc.comm.CommBaseDAOImpl.createTable(CommBaseDAOImpl.java:251)
      ... 24 more
      Caused by: java.sql.SQLSyntaxErrorException: ORA-00972: identifier is too long

      at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:445)
      at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:396)
      at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:879)
      at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:450)
      at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:192)
      at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:531)
      at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:193)
      at oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:1033)
      at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1329)
      at oracle.jdbc.driver.OracleStatement.executeUpdateInternal(OracleStatement.java:1838)
      at oracle.jdbc.driver.OracleStatement.executeUpdate(OracleStatement.java:1803)
      at oracle.jdbc.driver.OracleStatementWrapper.executeUpdate(OracleStatementWrapper.java:294)
      at com.sun.messaging.jmq.jmsserver.persist.jdbc.comm.CommBaseDAOImpl.createTable(CommBaseDAOImpl.java:234)
      ... 24 more

        Activity

        Hide
        mathim added a comment -

        closing this issue as the broker log now displays the correct message

        com.sun.messaging.jmq.jmsserver.util.BrokerException: [B3179]: The specified cluster identifier (a123456789123456) is too long. The length should not exceed the database maximum table name length 30 minus 18.

        Show
        mathim added a comment - closing this issue as the broker log now displays the correct message com.sun.messaging.jmq.jmsserver.util.BrokerException: [B3179] : The specified cluster identifier (a123456789123456) is too long. The length should not exceed the database maximum table name length 30 minus 18.
        Hide
        amyk added a comment -

        fixed

        Show
        amyk added a comment - fixed

          People

          • Assignee:
            amyk
            Reporter:
            amyk
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: