Conversation
|
While you are at it, could you also mark implicit domains as system, please?.. |
I'm not sure this is correct (and that it will not cause backward compatibility issues). |
|
But it would allow to clean out the hack with |
|
In my mind, a system domain is a domain that is used in system tables. You can add the automatically generated domain flag to ods 14. |
|
I always read it as "created and maintained by system" in contrast to "created by user". |
As for me, "system" is something automagically created along with the database and that cannot be altered/dropped by user. That said, I don't mind adding an explicit/implicit flag for domains to avoid those dumb |
You can restore RDB$XXXX domains from previous ODSs, where X is a number with the correct flag. I see that the user cannot create domains with such names. CREATE DOMAIN RDB$100000000 AS INTEGER; |
There is no need for a separate flag, value |
I tend to agree, we use this approach for implicit generators created for identity columns, so it would be consistent. The value is gonna be enum fb_sysflag {
fb_sysflag_user = 0,
fb_sysflag_system = 1,
fb_sysflag_qli = 2,
fb_sysflag_check_constraint = 3,
fb_sysflag_referential_constraint = 4,
fb_sysflag_view_check = 5,
fb_sysflag_identity_generator = 6
};And I will probably commit it in a separate PR, because this one is likely to be backported. |
This PR addresses some issues spotted in #8881:
RDB$USER_PRIVILEGESandRDB$SECURITY_CLASSES