[ https://issues.apache.org/jira/browse/OPENJPA-1304?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Albert Lee updated OPENJPA-1304: -------------------------------- Fix Version/s: (was: 2.2.0) Remove fix version in preparation for 2.2.0 release. > Refactor naming policy of database schema elements > -------------------------------------------------- > > Key: OPENJPA-1304 > URL: https://issues.apache.org/jira/browse/OPENJPA-1304 > Project: OpenJPA > Issue Type: Improvement > Components: jdbc, jpa, kernel, query, sql > Affects Versions: 2.0.0-M3 > Reporter: Pinaki Poddar > Assignee: Pinaki Poddar > > The issue of naming database elements > (Table/Column/Schema/Sequence/Constraints) is getting trickier with several > aspects > a) The logic/protocol of naming of database elements is somewhat > well-spread at different parts > b) few assumptions are implicit (like full name of a table is a > concatenation of schema.table -- but MySQL, for example, will not like that) > c) other 'container' things often cache these elements by their names but > these names may get shortened/modified because of database length > restrictions/keyword clash > d) database variations impose few other twists (such as case-sensitivity) > -- all these make naming a complex issue. One can see when methods like > MappingDefaults.correctName() appear -- as if we know we have done mistakes > elsewhere :) > e) the proverbial straw on the camel's back is the new JPA 2.0 requirement > of these names be optionally quoted/delimited with default/platform specific > quote characters. > > The question is should we attempt refactoring name-related operations into a > DatabaseElementNamingPolicy? > Is it too risky? > If we do how the policy works with DBDictionary? > How can we ensure backward compatibility? > How can we leverage it by adding new features that follow some rules to map > name persistent Java element names to database element names saving the user > to specify column names everywhere? > Comments/Thoughts? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira