-
Notifications
You must be signed in to change notification settings - Fork 347
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
Improve reindex query #2131
Improve reindex query #2131
Conversation
// const offset = 0; | ||
let completed = false; | ||
// eslint-disable-next-line no-constant-condition | ||
while (!completed) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why not use sqlIterator
there? It seems expensive to load before removing.
This maybe useful. Static destroy returns the number of items destroyed https://sequelize.org/api/v6/class/src/model.js~model#static-method-destroy
I see the same is happening with other data.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sqlIterator apply sql to whole table, it is useful for sql like create index xxx
for all records.
In batchDeletePoi, we only need to remove records with certain block ranges. Compare to sqlIteraor, even we add where
conditions to excute the block range in sql
, it will still iterate the complete table. I think this is the better approach.
Description
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Fixes # (issue)
Type of change
Please delete options that are not relevant.
Checklist