-
Notifications
You must be signed in to change notification settings - Fork 897
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Graph refresh refactoring internal indexes #16597
Graph refresh refactoring internal indexes #16597
Conversation
Initial indexes refactoring, moving indexing specific code to the specific classes.
Rename indexes to Index::Type with Data and LocalDb
Todo for moving stringify_index_value
Abstract data_storage
Handle secondary indexes and reindexing
Openshift uses find on secondary index, so we need all indexes build when adding data
Remove :secondary_refs from IC interface
Fix rubocop issues
Remove solved todo about abstracting data storage
Assert we pass all keys for primary_index
Simplify selection condition
Checked commits Ladas/manageiq@de4d1e7~...799e286 with ruby 2.3.3, rubocop 0.47.1, haml-lint 0.20.0, and yamllint 1.10.0 |
@agrare this is ready for review now, I've finished benchmarks on the big OpenShift VCRs we have, both saving and parsing time seems to be around the same numbers as before this. Based on this, I can extend the indexes inside, to carry more information we will use also for streaming refresh. (removing TODOs adding by this PR in the process) Also this passes OpenShift, OpenStack, Ovirt specs locally. I have a minor fix for AWS, discovered by the index_assert ManageIQ/manageiq-providers-amazon#375 |
We are extending the local Db indexes to work for secondary indexes, for that, the structure of internal indexes is changing. This is a prerequisite for streaming refresh indexes, the places that need to change are capture in todos.