Skip to content
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

Optimization opportunities found while converting TableInfo #352

Open
4 of 7 tasks
tantaman opened this issue Sep 14, 2023 · 1 comment
Open
4 of 7 tasks

Optimization opportunities found while converting TableInfo #352

tantaman opened this issue Sep 14, 2023 · 1 comment

Comments

@tantaman
Copy link
Collaborator

tantaman commented Sep 14, 2023

  • move causal length tracking to the primary key lookaside table. This removes a self-join on the clock table
  • remove ensureTableInfosAreUpToDate -- we can proactively keep these up to date from the create_crr methods, removing an entire query from every merge operation.
  • remove crsql_get_table
  • prema prepare CLOCK_TABLES_SELECT
  • remove BTreeMap
  • remove recreate_db_version_stmt
  • next_db_version / fill_db_Version_if_needed - we can check the pragma once per transaction. Need to save some bit that states we checked the pragma already and reset on tx commit or rollback.
@tantaman
Copy link
Collaborator Author

tantaman commented Sep 21, 2023

Found possible bugs:

  • PK update should also update clocks for rows to move them to the new PK. They're not dropped but moved! Junction table test should now work?

This is being fixed in #344

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant