Skip to main content

[jpa-spec issues] [JIRA] Assigned: (JPA_SPEC-53) Schema generation with existing EMF

  • From: "ldemichiel (JIRA)" < >
  • To:
  • Subject: [jpa-spec issues] [JIRA] Assigned: (JPA_SPEC-53) Schema generation with existing EMF
  • Date: Fri, 5 Apr 2013 00:23:53 +0000 (GMT+00:00)
  • Auto-submitted: auto-generated


     [ 
http://java.net/jira/browse/JPA_SPEC-53?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ldemichiel reassigned JPA_SPEC-53:
----------------------------------

    Assignee: ldemichiel

> Schema generation with existing EMF
> -----------------------------------
>
>                 Key: JPA_SPEC-53
>                 URL: http://java.net/jira/browse/JPA_SPEC-53
>             Project: jpa-spec
>          Issue Type: Improvement
>            Reporter: Christian Bauer
>            Assignee: ldemichiel
>            Priority: Minor
>
> I've been running into a conceptual issue with schema generation in JPA 2.1 
> and how unit tests are typically organized.
> Let's say you want a clean database for every unit test method. I prefer to 
> create the schema in the database before every test method, and then drop 
> it after the test method completes.
> I have a single EntityManagerFactory for the whole test class, it can be 
> shared by every test method. This is possible with the Hibernate API, the 
> schema generator uses an existing EMF configuration to produce the 
> create/drop scripts.
> With the static Persistence.generateSchema() in 2.1 this approach doesn't 
> work. Calling generateSchema() internally builds a new EMF every time.
> One of the problems is that you get new automatically generated foreign key 
> names every time you call generateSchema(). The "drop" action therefore 
> always fails, unless you define all foreign key names in your metadata. 
> There could be other automatically generated artifact names, so the "drop" 
> action in general, if called from a static context, is not useful during 
> development.
> The current solution then is to specify "drop-and-create" and to build and 
> close an EMF for every unit test method. This means starting and stopping 
> the persistence provider for every test method, slowing down test runs 
> significantly.
> A better solution would be an additional Persistence.generateSchema(EMF, 
> properties) method that accepts an existing EMF and some "override" 
> properties.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://java.net/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


[jpa-spec issues] [JIRA] Assigned: (JPA_SPEC-53) Schema generation with existing EMF

ldemichiel (JIRA) 04/05/2013
 
 
Close
loading
Please Confirm
Close