Bug 380150 - Need tolerance for EclipseLink NoSQL support
Summary: Need tolerance for EclipseLink NoSQL support
Status: RESOLVED FIXED
Alias: None
Product: Dali JPA Tools
Classification: WebTools
Component: JPA (show other bugs)
Version: 3.2   Edit
Hardware: PC Windows CE
: P3 major (vote)
Target Milestone: 3.3 M2   Edit
Assignee: Karen Butzke CLA
QA Contact:
URL:
Whiteboard:
Keywords: api
Depends on:
Blocks:
 
Reported: 2012-05-21 10:18 EDT by Karen Butzke CLA
Modified: 2012-08-30 14:01 EDT (History)
1 user (show)

See Also:
karenfbutzke: review? (neil.hauge)


Attachments
proposed patch against HEAD (547.00 KB, patch)
2012-05-23 21:42 EDT, Karen Butzke CLA
no flags Details | Diff
proposed patch against HEAD (14.64 KB, patch)
2012-05-24 10:12 EDT, Karen Butzke CLA
no flags Details | Diff
proposed patch against HEAD (555.68 KB, patch)
2012-05-24 11:26 EDT, Karen Butzke CLA
no flags Details | Diff
orm resource model changes - generated code (493.53 KB, patch)
2012-05-24 11:49 EDT, Karen Butzke CLA
no flags Details | Diff
changes to support UuidGenerator (62.22 KB, text/plain)
2012-05-24 11:52 EDT, Karen Butzke CLA
no flags Details
lower generator validation error severity (3.31 KB, patch)
2012-05-24 13:08 EDT, Karen Butzke CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Karen Butzke CLA 2012-05-21 10:18:19 EDT
EclipseLink added annotations and xml metadata for NoSQL support in bug 366426. We need tolerance for this new feature. Currently if a user adds a UuidGenerator annotation or uuid-generator xml element and references it via @GeneratorValue or generated-value, Dali would give a validation error.

We also need to tolerate any other xml schema changes EclipseLink made in the eclipselink_orm_2.4.xsd schema
Comment 1 Karen Butzke CLA 2012-05-23 21:42:10 EDT
Created attachment 216171 [details]
proposed patch against HEAD

This patch is large partially because of generated code since there were multiple changes I had to make to the ecore model for the eclipselink-orm 2.4 schema. The other large change was to add support for the new UuidGenerator. This is EclipseLink specific and involves some new provisional API classes, but no changes to existing api
Comment 2 Karen Butzke CLA 2012-05-24 10:12:40 EDT
Created attachment 216196 [details]
proposed patch against HEAD

Updated patch, minor mistake in the ecore model was causing some test failures. All tests pass now.
Comment 3 Karen Butzke CLA 2012-05-24 11:26:05 EDT
Created attachment 216199 [details]
proposed patch against HEAD

attached the wrong patch
Comment 4 Karen Butzke CLA 2012-05-24 11:49:34 EDT
Created attachment 216200 [details]
orm resource model changes - generated code

Splitting up the patch: the first patch is required to tolerate the changes EclipseLink made in the eclipselink_orm_2.4.xsd schema. If we do not support the new changes then it is possible for our tooling to input schema elements in the wrong order causing schema errors. This patch only has changes to the ecore model and the resulting generated code.
Comment 5 Karen Butzke CLA 2012-05-24 11:52:53 EDT
Created attachment 216202 [details]
changes to support UuidGenerator

Splitting up the patch: the second patch includes java support for the UuidGenerator annotation and eclipselink-orm.xml support for the uuid-generator element on entity, entity-mappings, and id. This is necessary to prevent invalid validation messages if the user references a uuid-generator.
Comment 6 Karen Butzke CLA 2012-05-24 13:08:22 EDT
Created attachment 216208 [details]
lower generator validation error severity

This is another option instead of patch 2. This patch just lowers the severity of the validation error for an undefined generator to a warning.
Comment 7 Neil Hauge CLA 2012-05-24 17:18:26 EDT
Deferring to SR1.  @UUIDGenerator is not commonly used and the severity of the error can be adjusted by the end user.
Comment 8 Karen Butzke CLA 2012-07-09 13:19:39 EDT
I checked the first 2 patches in to HEAD, is that what we want to check in for 3.2.1 as well?
Comment 9 Karen Butzke CLA 2012-07-09 13:46:01 EDT
Neil and I are leaning towards checking in the first 2 patches, attachment 216200 [details] and attachment 216202 [details] to maintenance for Juno sr1. Holding off for now because of the minor amount of risk involved with changes of this size.
Comment 10 Neil Hauge CLA 2012-08-17 17:09:05 EDT
Deferring this until there is a clear need for this tolerance support.
Comment 11 Neil Hauge CLA 2012-08-24 10:11:30 EDT
Since the tolerance support is already in head, should we go ahead and mark this as fixed?
Comment 12 Karen Butzke CLA 2012-08-30 14:01:31 EDT
Changed the Generator hierarchy, created a DbGenerator interface for SequenceGenerator and TableGenerator to extend. Moved almost all methods from Generator to DbGenerator. The new UuidGenerator interface can now extend Generator. Created JavaDbGenerator, OrmDbGenerator, and DbGeneratorAnnotation interfaces.


http://git.eclipse.org/c/dali/webtools.dali.git/commit/?id=8386b88866c694a15ea0d0db7c61b33e36753044

http://git.eclipse.org/c/dali/webtools.dali.git/commit/?id=d5c9d1dc055f3860e393bbc7991b2e3cf2757fd0