Uploaded image for project: 'Derby'
  1. Derby
  2. DERBY-4993

Nested connection not marked as closed after session level error

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • 10.7.1.1
    • None
    • JDBC
    • Low

    Description

      Inside a stored procedure, with a nested connection:

      Connection c = DriverManager.getConnection("jdbc:default:connection");

      I see a session level error:

      } catch (SQLException e) {
      assertSQLState("expected CONN_INTERRUPT", "08000", e);
      assertTrue(c.isClosed());

      However, the second assert above fails. Granted, we are still executing
      inside the stored routine, but the statement is now "dead"; the calling
      statment will see exception 40XC0 (dead statement) and the parent
      connection will then be marked as closed (as expected).

      But shouldn't the nested connection also be marked closed at this time?

      If I try to do something with the connection at this point, e.g. trying
      to prepare a new statement I see a NPE because the lcc is already gone:

      Caused by: java.lang.NullPointerException
      at org.apache.derby.impl.sql.compile.CompilerContextImpl.initRequiredPriv(CompilerContextImpl.java:717)
      at org.apache.derby.impl.sql.compile.CompilerContextImpl.<init>(CompilerContextImpl.java:702)
      at org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.pushCompilerContext(GenericLanguageConnectionContext.java:2355)
      at org.apache.derby.impl.sql.GenericStatement.prepMinion(GenericStatement.java:236)
      at org.apache.derby.impl.sql.GenericStatement.prepare(GenericStatement.java:91)
      at org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(GenericLanguageConnectionContext.java:1101)
      at org.apache.derby.impl.jdbc.EmbedStatement.execute(EmbedStatement.java:610)

      Attachments

        Activity

          People

            Unassigned Unassigned
            dagw Dag H. Wanvik
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: