Dag H. Wanvik wrote:
In the roles work I am introducing a new catalog, SYS.SYSROLES.
I am considering impacts of committing new the code to trunk and would
appreciate some advice.
- In the event that the roles feature is not ready for 10.4, it would
need to be backed out, which could cause some turbulence in a
release end-game. Is this an acceptable risk, or should a new
feature which introduces a new catalog be on its own branch until it
is ready (with the ensuing merge pains) ?
I would prefer to stay on trunk, but realize there is a potential
downside if the feature is not ready in time..
- When committing the patch for DERBY-3137, until I include hard
upgrade code to add the new catalogue, an upgraded database will
lack the new catalog and fail whenever a role related statement or
expression is used ERROR XSAI2: The conglomerate (-1) requested does
not exist. Some tests which are sensitive to the number of catalogs
would also fail when run against an upgraded database for the same
reason.
In the spirit of incremental development, is it OK to check in the
new catalog code (hard upgrade doesn't break; it just doesn't do all
it is supposed to do yet), or should I wait until I have a patch
that handles the upgrade as well?
Hello Dag,
A bit on the sideline of your request, but do you know if your system
table(s) fulfill the requirements specified by the SQL standard for
"Definition and Information Schemas"?
I just thought it could be good to think a little about it, so we can
choose to implement the Information Schema at a later time.
The "standards business" is a bit mysterious to me, but the document I
refer to should be uniquely identified by this:
INCITS/ISO/IEC 9075-11-2003
Information technology - Database languages - SQL - Part 11: Information
and Definition Schemas (SQL/Schemata)
Seems the tables/views are defined by SQL queries, so it should be
reasonably easy to do a quick first assessment of whether we have the
required information handy or not.
regards,
--
Kristian
Thanks,
Dag