Skip to content
Alan Gutierrez edited this page Aug 16, 2010 · 5 revisions

Source | Wiki | Issues

Choices

Strengths

  • Dialects generate SQL only, based on database and database version, the are not given a connection, the perform no reflection.
  • Property built addenda can build the database from a new database or upgrade any existing database.
  • Both an update pattern and a creational pattern.
  • Updates can be performed as part of an in container reployment, necessary since the object relational model will be out of sync, web application near useless, until the upgrade is performed.

Concerns

  • Updates are not atomic.
  • Need to reconsider not null and default values. Certinaly when adding a column, we need to be able to populate, but when altering a column, we may or may not need to populate. Therefore, it is the sort of thing that we can check when we run the update. If fact, maybe it is different, maybe we have not null, but we have set nulls variable instead of a default value.

Decisions

  • No rollback.
  • The only non DDL statement supported in the domain-specific language is INSERT.
  • No fancy typing with mock objects for Addendum JPA like Mockito. A lot of work to get only the property name.

Lagniappe

  • Add the ability to specify a default value in the entity definitions of Addendum JPA.
  • Search for and evaluate any XML override files in Addendum JPA.

Clone this wiki locally