How much I understood, there is no way to specify what index should be
used at system inquiries from *.epp files?
I have the same understanding
It seems to me that the solution of this problem would be of much more
use. Then you could just create additional system indexes and use those
or other in specific system queries.
Is it worth it to me to search in this direction (is there a chance in
implementation or it can break a lot)?
If not, is it possible to enable the create/delete, enable/disable
indexes on system tables, including standard system indexes?
I would try to implement this if the approach is approved.
I have no objection to allow to create\alter\drop\set_stats for user
index on system tables. Note, such indices will not be put into gbak backup and
should be re-created after restore. Of course, it also could be improved, if necessary.
And what about enable/disable the regular system indexes?
Without this capability, system queries will continue to use regular
system indexes, instead of more suitable (for performance reasons in
specific cases) user indexes.
Yes, I also think that there is no need to restore non-system objects
created in system entities.
Those if you do not want to allow such actions publicly, you could be
allowed to do it from external utilities similar to GBACK
(dpb.insertString(isc_dpb_gbak_attach, FB_VERSION,
fb_strlen(FB_VERSION))), but then need to remove the check for the
creator of database (attachment->att_flags & ATT_creator).
I could be wrong, but: to make it properly, one should look as
SCL_check_relation(..., SCL_control)
calls at VIO_erase\VIO_modify\VIO_store near the "case rel_indices" and
pass "false" into last parameter
(protectSys) for user indices. The same should be done at
checkPermission() method of CreateIndexNode,
AlterIndexNode, DropIndexNode, and SetStatisticsNode classes.
Well thank you.
Is this just in case we take the approach with the transfer of a special
flag so that user applications can act like gbak?
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
Firebird-Devel mailing list, web interface at
https://lists.sourceforge.net/lists/listinfo/firebird-devel