db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kathey Marsden (JIRA)" <j...@apache.org>
Subject [jira] [Created] (DERBY-5922) BaseDataFileFactory.stop() should provide better protection for a null storageFactory. Can cause NullPointerException if boot fails
Date Tue, 11 Sep 2012 17:18:08 GMT
Kathey Marsden created DERBY-5922:
-------------------------------------

             Summary: BaseDataFileFactory.stop() should provide better protection for a null
storageFactory. Can cause NullPointerException if boot fails
                 Key: DERBY-5922
                 URL: https://issues.apache.org/jira/browse/DERBY-5922
             Project: Derby
          Issue Type: Sub-task
          Components: Store
    Affects Versions: 10.9.1.0
            Reporter: Kathey Marsden


DERBY-5916 was a report of a NullPointerException in BaseDataFileFactory.stop()

Although we don't know the root cause or have a reproduction of the problem reported in that
issue. As Brian points out ..

"It sounds like there was such a severe error trying to start up the database that
we were trying to abort the startup and shutdown the parts that did start.

But we were in a state where, having failed to start up, we couldn't shut down, either.

BaseDataFileFactory.stop is very thorough with its null pointer checks, so it's not
easy to see how that code could get a NPE.

But I notice that line 532, the call to storageFactory.shutdown in this:

        if (isReadOnly()) // do enough to close all files, then return
        {
            storageFactory.shutdown();
            return;
        }

isn't protected by "if( storageFactory != null )"

Perhaps you could reproduce this artificially by arranging by forcing
the startup code to throw an exception at just the right point...
"


It would be good to fix at least the null checks. Perhaps the NullPointerException is masking
the original error.


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message