Message7688
As a workaround a call can be made in initial_data.py:
if hasattr (db, 'sql'):
db.sql ('create index _issue_status_idx on _issue (_status);')
...
but this only works when the tracker is initialized. If any column is dropped
it will wipe out the index. For a single column this isn't an issue (there is
nothing to index). But it is unknown what happens to a multi-column index that
references a missing column.
Also the proposed addition only handle a single column index.
Multi-column indexes which might be needed for some use-cases (e.g to speed
up searches).
Ideally we would hook custom indexing into the schema update/create method.
However I wonder if we can provide a hook to run on schema change to
make this easier.
import roundup.backends.rdbms_common
class Database:
create_supplimentary_indexes(classname, added_props[], ...):
admin does his sql here.
self.sql( <insert sql statement here> )
drop_supplimentary_indexes(classname, dropped_props[], ...):
admin does his sql here.
self.sql( <insert sql statement here> )
and they gets called as part of update_class() and
create_class_table_indicies()/drop_class_table_indicies()? |
|
Date |
User |
Action |
Args |
2022-11-26 20:56:24 | rouilj | set | messageid: <1669496184.98.0.528439094261.issue2551245@roundup.psfhosted.org> |
2022-11-26 20:56:24 | rouilj | set | recipients:
+ rouilj, schlatterbeck |
2022-11-26 20:56:24 | rouilj | link | issue2551245 messages |
2022-11-26 20:56:24 | rouilj | create | |
|