You're right, I just reproduced it with oracle (running in Eclipse). Looks
like SynchronizeMappings isn't going through the Dictionary to trim the
table name. I'll take a closer look.

Thanks for pointing it out.

-mike

On Thu, Jan 22, 2009 at 8:22 AM, Alan Raison <[email protected]>wrote:

> > I think you're looking for DBDictionary.maxTableNameLength. It's
> usually
> > set in the constructor for the DBDictionary class, ie in
> > OracleDictionary :
>
> I have already set this property in my Dictionary, but somehow openjpa
> is creating a table name which is too long and then trapping the error
> itself during the getCreateTableSQL method.  Note the error text from
> the sample Test output XML sent previously:
>
> "Table name "PersistentMapHolder_testPCIntfKeyPCValue" is 40-character
> long. The database allows maximum 32-character for a table name."
>
> This has correctly identified that maxTableNameLength is 32, so do I
> need to do something else to ensure that openjpa doesn't try to create a
> Table object with a 40-character name?
>
> Thanks
>
> Alan
>

Reply via email to