Skip redundant checked update predicates #9
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "optimize-unchanged-index-update"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Skip the second WHERE predicate evaluation in simple non-FROM UPDATE loops when dml-target-rows has already filtered targets and triggers/FKs/RETURNING are absent.\n\nVerification:\n- make build\n- GERBIL_LOADPATH="/Users/user/mine/gerbil-sqlite:/Users/user/mine/gerbil-sqlite/.gerbil/lib:/Users/user/mine/gerbil-sqlite/gerbil-compat:/Users/user/mine/gerbil-sqlite/gerbil-compat/.gerbil/lib" timeout 240 /opt/gerbil/bin/gerbil env gxi tests/unit/test-api.ss\n- GERBIL_LOADPATH="/Users/user/mine/gerbil-sqlite:/Users/user/mine/gerbil-sqlite/.gerbil/lib:/Users/user/mine/gerbil-sqlite/gerbil-compat:/Users/user/mine/gerbil-sqlite/gerbil-compat/.gerbil/lib" timeout 240 /opt/gerbil/bin/gerbil env gxi tests/unit/test-exec.ss\n- N=1000 make bench-compiled\n- N=1000 make bench-prepared-compiled\n- N=10000 make bench-prepared-compiled\n- make binary && make smoke\n\nMeasured same-N check at N=10000 against the immediate parent branch showed prepared indexed UPDATE 176.72 ms vs 181.90 ms baseline, about 3% faster; total prepared 600.13 ms vs 617.42 ms.
View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.Merge
Merge the changes and update on Forgejo.Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.