Jump to: navigation, search

Difference between revisions of "EclipseLink/DesignDocs/389090"

(Design Specification: JPA 2.1 Criteria Query framework Bulk Update/Delete support)
 
Line 56: Line 56:
  
 
== Documentation ==
 
== Documentation ==
 +
 +
==Work Required==
 +
# Metadata processing of new annotations w/ implementation in core
 +
#: approx 4 days
 +
# Implement support for DDL script loading, execution and generation
 +
#: approx 3 days
 +
# Implement handling of DDL generation connection
 +
#: approx 3 days
 +
# Testing
 +
#: approx 6 days
  
 
== Open Issues ==
 
== Open Issues ==

Latest revision as of 10:43, 10 September 2012

Design Specification: JPA 2.1 Formalized DDL generation support

ER 389090

Document History

Date Author Version Description & Notes
05 September 2012 Gordon Yorke Initial Doc creation

Project overview

In previous versions DDL generation was present in the specification but was not standardized and was not required. The next iteration of the Java Persistence API specification has added standardized provider DDL generation and made DDL generation a requirement.

Concepts

DDL Generation is the scripting or direct database execution of database object creation SQL (Create Table, Create Index, ...) from metadata or user supplied scripts. The specification defines many mapping artifacts (OneToOneMapping, JoinColumn, etc) that contribute metadata to allow the provider to generate the DDL to define the structure of the database objects.

Requirements

To implement the requirements of DDL generation and execution as defined in the specification. This includes but may not be limited to the Database objects:

  • Columns for all mapping types
  • Sequence Generators
  • Constraints
  • Indexes
  • Entity tables
  • Relationship tables
  • Schema

Support reading and executing user packaged DDL scripts and the generation of DDL scripts. Support processing configured target database information Support for a DDL Generation connection to be provided by the application or the container.

Design Constraints

Design / Functionality

Testing

Existing tests should be verified to ensure they include tests for creation of those database objects listed in the requirements list and any others included as part of the specification. Any untested areas should have additional tests added. Tests to execute and generate DDL scripts Tests for identifying target databases correctly.

API

New properties and new API are present in the specification to support DDL generation. These should behave as specified in the specification.

GUI

Config files

Documentation

Work Required

  1. Metadata processing of new annotations w/ implementation in core
    approx 4 days
  2. Implement support for DDL script loading, execution and generation
    approx 3 days
  3. Implement handling of DDL generation connection
    approx 3 days
  4. Testing
    approx 6 days

Open Issues

This section lists the open issues that are still pending that must be decided prior to fully implementing this project's requirements.

Issue # Owner Description / Notes

Decisions

This section lists decisions made. These are intended to document the resolution of open issues or constraints added to the project that are important.

Issue # Description / Notes Decision

Future Considerations

During the research for this project the following items were identified as out of scope but are captured here as potential future enhancements. If agreed upon during the review process these should be logged in the bug system.