MMBase

Unclear exception if insert/update failure

Details

  • Type: Bug Bug
  • Status: Open Open
  • Priority: Major Major
  • Resolution: Unresolved
  • Affects Version/s: 1.7.0
  • Fix Version/s: 2.0.0
  • Component/s: Database Layer
  • Description:
    Hide
    original bugid: #6114
    E.g. because of unique key violation. In jsp-editors we see (example is from rank in mmbaseranks, which is unique):
    The nodetype of node #630 could not be found (nodetype # -1)
    Stacktrace:

      java.lang.RuntimeException: The nodetype of node #630 could not be found (nodetype # -1)
    at org.mmbase.module.core.MMObjectBuilder.getNode(MMObjectBuilder.java:995)
    at org.mmbase.module.core.MMObjectBuilder.getNode(MMObjectBuilder.java:1071)
    at org.mmbase.security.implementation.cloudcontext.builders.Contexts.setContext(Contexts.java:237)
    at org.mmbase.security.implementation.cloudcontext.Verify.create(Verify.java:39)
    at org.mmbase.bridge.implementation.BasicCloud.createSecurityInfo(BasicCloud.java:528)
    at org.mmbase.bridge.implementation.BasicNode.commit(BasicNode.java:475)
    at org.mmbase.bridge.jsp.taglib.AbstractNodeProviderTag.doAfterBody(AbstractNodeProviderTa


    In the log is the actual error:
    21:46:06,547 ERR 10625 kb mmbase.storage.database.AbstractDatabaseStorage insert.1007 - Trouble inserting node: prefix='',otype=2:'78',owner=1:'admin',name=1:'test',description=1:'',number=9:'630',rank=2:'100',_number=1:'U-3_-4'
    java.sql.SQLException: Violation of unique index: SYS_IDX_72 in statement [INSERT INTO MM_MMBASERANKS ( owner,otype,name,description,number,rank ) VALUES ( 'admin',78,'test','',630,100 );]
            at org.hsqldb.Trace.getError(Unknown Source)
            at org.hsqldb.jdbcResultSet.<init>(Unknown Source)
            at org.hsqldb.jdbcConnection.executeStandalone(Unknown Source)
            at org.hsqldb.jdbcConnection.execute(Unknown Source)
            at org.hsqldb.jdbcStatement.fetchResult(Unknown Source)
            at org.hsqldb.jdbcStatement.executeUpdate(Unknown Source)
            at org.hsqldb.jdbcPreparedStatement.executeUpdate(Unknown Source)
            at org.mmbase.storage.database.DatabaseTransaction.executeUpdate(DatabaseTransaction.java:288)
            at org.mmbase.storage.database.SQL92DatabaseStorage.insertIntoTable(SQL92DatabaseStorage.java:472)
            at org.mmbase.storage.database.RelationalDatabaseStorage.insertIntoTable(RelationalDatabaseStorage.java:190)
     

    But the normal users doesn't get that.
    Show
    original bugid: #6114 E.g. because of unique key violation. In jsp-editors we see (example is from rank in mmbaseranks, which is unique): The nodetype of node #630 could not be found (nodetype # -1) Stacktrace:   java.lang.RuntimeException: The nodetype of node #630 could not be found (nodetype # -1) at org.mmbase.module.core.MMObjectBuilder.getNode(MMObjectBuilder.java:995) at org.mmbase.module.core.MMObjectBuilder.getNode(MMObjectBuilder.java:1071) at org.mmbase.security.implementation.cloudcontext.builders.Contexts.setContext(Contexts.java:237) at org.mmbase.security.implementation.cloudcontext.Verify.create(Verify.java:39) at org.mmbase.bridge.implementation.BasicCloud.createSecurityInfo(BasicCloud.java:528) at org.mmbase.bridge.implementation.BasicNode.commit(BasicNode.java:475) at org.mmbase.bridge.jsp.taglib.AbstractNodeProviderTag.doAfterBody(AbstractNodeProviderTa In the log is the actual error: 21:46:06,547 ERR 10625 kb mmbase.storage.database.AbstractDatabaseStorage insert.1007 - Trouble inserting node: prefix='',otype=2:'78',owner=1:'admin',name=1:'test',description=1:'',number=9:'630',rank=2:'100',_number=1:'U-3_-4' java.sql.SQLException: Violation of unique index: SYS_IDX_72 in statement [INSERT INTO MM_MMBASERANKS ( owner,otype,name,description,number,rank ) VALUES ( 'admin',78,'test','',630,100 );]         at org.hsqldb.Trace.getError(Unknown Source)         at org.hsqldb.jdbcResultSet.<init>(Unknown Source)         at org.hsqldb.jdbcConnection.executeStandalone(Unknown Source)         at org.hsqldb.jdbcConnection.execute(Unknown Source)         at org.hsqldb.jdbcStatement.fetchResult(Unknown Source)         at org.hsqldb.jdbcStatement.executeUpdate(Unknown Source)         at org.hsqldb.jdbcPreparedStatement.executeUpdate(Unknown Source)         at org.mmbase.storage.database.DatabaseTransaction.executeUpdate(DatabaseTransaction.java:288)         at org.mmbase.storage.database.SQL92DatabaseStorage.insertIntoTable(SQL92DatabaseStorage.java:472)         at org.mmbase.storage.database.RelationalDatabaseStorage.insertIntoTable(RelationalDatabaseStorage.java:190)   But the normal users doesn't get that.

Issue Links

Activity

Hide
Henk Hangyi added a comment - 2007-02-25 13:08
Should it be part of the database transactions project for the 2.0 release ?
Show
Henk Hangyi added a comment - 2007-02-25 13:08 Should it be part of the database transactions project for the 2.0 release ?

People

Dates

  • Created:
    2003-06-26 21:50
    Updated:
    2007-02-25 13:08