Run DESCRIBE HISTORY in parallel to improve performance #917
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
🤔 Why?
Each DESCRIBE HISTORY command takes 1~5 seconds to complete. The time adds up quickly when running against a large number of tables.
🤓 What?
DESCRIBE HISTORY
commands in a thread pool to improve performance.create_connect_pool
util method for code sharing.LIMIT
forDESCRIBE HISTORY
from 50 to 100 since we're less contained by time.🧪 Tested?
Verified against a production instance with ~3000 tables and saw close to 10x speed up (took 7 mins to get all last refresh dates).
☑️ Checks
pyproject.toml
.