[ https://issues.apache.org/jira/browse/OPENJPA-2139?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Heath Thomann updated OPENJPA-2139: ----------------------------------- Attachment: OPENJPA-2139-1.2.x-v2.patch Providing a second version of my previous patch. We've taken a slightly different approach in this version of the fix in that we will no longer eat an SQLException caused in 'JDBCConfigurationImpl.getDBDictionaryInstance'. Rather a similar pattern was followed in MappingDefaultsImpl as was done in MappingRepository (i.e. delay getting a reference to DBDictionary). > OpenJPA fails to recover from a broken database on startup > ---------------------------------------------------------- > > Key: OPENJPA-2139 > URL: https://issues.apache.org/jira/browse/OPENJPA-2139 > Project: OpenJPA > Issue Type: Bug > Affects Versions: 2.2.0 > Reporter: Mark Struberg > Assignee: Mark Struberg > Priority: Critical > Fix For: 2.3.0 > > Attachments: OPENJPA-2139-1.2.x-v2.patch, OPENJPA-2139-1.2.x.patch, > OPENJPA-2139.mdr.patch, OPENJPA-2139.patch > > > The following scenario: > 1.) turn off the database > 2.) perform a query against the database > 3.) turn on the database > 4.) try to re-run the query from 2.) > In 4.) you will get the following Exception: > openjpa-2.2.0-r422266:1244990 nonfatal user error> > org.apache.openjpa.persistence.ArgumentException: An error occurred while > parsing the query filter "SELECT k FROM DbEnumKey AS k where k.type=:typ > ORDER BY k.ordinal". Error message: The name "DbEnumKey" is not a recognized > entity or identifier. Known entity names: [] > Basically the whole app is stale afterwards! > Solution: caching the entities might only be done if a connection can be > established. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira