Igniters,

We have a property "CacheConfiguration.sqlEscapeAll". When enabled, all
database objects belonging to the cache will be case-sensitive and allow
special characters. Two problems here:

1) It doesn't allow me to decouple schemas from cache easily since I it
force me to refer to cache context everywhere, exactly what I am trying to
avoid.

2) It doesn't work with DDL at all. E.g. how should I process "MyIndex" if
cache has "sqlEscapeAll=false"?
CREATE INDEX "MyIndex" ON TABLE MY_TABLE;

It appears, that we should do the following:
1) Remove/deprecate this property;
2) Add "escaped" property to QueryEntity and QueryIndex, so that decision
can be made on per-object basis, rather than on per-cache.
3) In DDL we should decide whether object name is case-sensitive based on
quotes around it's name:

CREATE INDEX MyIndex;   // Insensitive
CREATE INDEX "MyIndex"; // Sensitive

E.g. this is precisely how Oracle and probably other databases work.

Thoughts?

Reply via email to