Hi Bryan,
I find that for a connection url like this...
connect
'jdbc:derby:db;create=true;territory=es_MX;collation=TERRITORY_BASED:PRIMARY';
...the territory is stored in service.properties. Looking at
DataDictionaryImpl.boot(), it appears that the collation property is set
in the property conglomerate (what Mike refers to below).
Hope this helps,
-Rick
On 6/5/16 7:35 AM, mike matrigali wrote:
there is a set of stuff needed to boot stored as properties. Things
like the id
of table with the table info, table with the attribute info, ... ,
maybe it is there.
should be a file either in top level or in seg0 i think.
On 6/4/2016 9:34 AM, Bryan Pendleton wrote:
In the context of DERBY-6890, I've been trying to understand
a little bit more about how and where the 'collation=' and
'territory=' information from the JDBC Connection URL is stored
within the database at database creation time.
I could use some advice from anyone who has a deeper understanding of
how Derby handles database collection/territory configuration.
I'm not sure if this is written up anywhere, other than at
https://db.apache.org/derby/docs/10.12/devguide/cdevcollation.html
I tried poking about in the system tables, but there wasn't
anything in SYSTABLES or SYSCOLUMNS that seemed to say anything
about collation or territory information.
Which makes sense, I think, because AIUI this information isn't
specified on a table-by-table basis; it's specified once, and
applies database-wide.
So I'd like to find where that information is stored, and how
the engine picks it up, and passes it down to places like the
"collation_ids" array in impl.store.access.btree.Btree.
Can anyone point me in the right direction?
thanks,
bryan
--
email: Mike Matrigali [email protected]
linkedin:https://www.linkedin.com/in/MikeMatrigali