Schema synchronizer fails to build tables and indexes when running with H2 
in-memory database
---------------------------------------------------------------------------------------------

                 Key: OPENJPA-1812
                 URL: https://issues.apache.org/jira/browse/OPENJPA-1812
             Project: OpenJPA
          Issue Type: Bug
    Affects Versions: 2.0.1
            Reporter: Willis Blackburn
            Priority: Minor


Using the example from OPENJPA-1804 I added HostName and EmailAddress to the 
class list, updated the JVM launcher command to use the Java agent enhancer, 
and added:

            <property name="openjpa.jdbc.SynchronizeMappings" 
value="buildSchema(foreignKeys=true)"/>

Note also:

            <property name="openjpa.ConnectionURL" value="jdbc:h2:mem:test"/>

When I tried to run the example, it failed when attempting to create an index, 
saying that address_book_table (which it created a few milliseconds earlier) 
did not exist.

Changing H2 to use a database on disk fixed the problem:

            <property name="openjpa.ConnectionURL" 
value="jdbc:h2:~/openjpatestdb"/>

But why is OpenJPA sensitive to whether I'm using an in-memory or disk H2 
database?

I tried opening the same in-memory database URL using my IDE's JDBC console.  
Of course I got a different database, since the IDE is running in its own JVM.  
But I was able to execute the "create table" from the OpenJPA log followed by 
the "create index" without any trouble.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to