While transforming persistent classes, if a specific DBDictionary is not provided, OpenJPA attempts to detect and set up a dictionary. Within this process, DBDictionary.connectedConfiguration() is called (to determine the DB type) when a connection is obtained. If trace is enabled, information about the connection is traced. I hit a case where one of the methods that is called on the connection to gather trace data threw an exception, resulting in classes not being enhanced. The simple (but not always possible) workaround is to specify the db dictionary type. Regardless, a trace point should not cause a catastrophic failure.