Hello,

My production database is Oracle but I do local testing with in-memory H2.  I 
have been using two datamaps; "src/main/resources/datamap.map.xml", and 
"src/test/resources/datamap.map.xml".  When I make an ORM change and it's been 
a year or two, I eventually remember to copy the datamap from main to test but 
I almost always forget that the test datamap has "<property 
name="quoteSqlIdentifiers" value="true"/>" because H2 has a different set of 
reserved words than Oracle.

I have two questions:

  1.  Is there much of a performance issue in leaving quoteSqlIdentifiers set 
to "true" even when it's not necessary in production?
  2.  Is there a way the test datamap can reference and extend the main 
datamap?  By that I mean, can the test datamap simply pull in the main datamap 
and augment it with the quoteSqlIdentifiers property?  The cayenne.xml is very 
different between production and test and the cayenne configuration appears to 
expect the file with the prefix specified in "<map name="datamap"/>" is located 
in the same directory. That seems to necessitate keeping separate copies of the 
nearly-identical datamap.map.xml.

Thank you,
Andrew

Reply via email to