Ledger icon indicating copy to clipboard operation
Ledger copied to clipboard

Improve database performance

Open DrexHD opened this issue 1 year ago • 0 comments

Improve database performance

Previous work

This PR is based on work from @PotatoPresident , which mainly improves database insertions, by batching actions.

Lookup improvements

  • Improved lookup performance by using the previously introduced cache for conditions
  • Adding indexes to columns used in conditions (action_id, object_id, old_object_id, source and player_id)
  • Adding a composed index of x, y, z and world, which helps in ledger inspect and range lookups
  • Removed the table joins for the count checking, because they are no longer necessary with the above changes and it gives a good performance improvement

Misc features

  • Using the server user cache to lookup player uuids, to use them to lookup player conditions. This has the benefit of allowing case insensitive player names
  • Added command suggestions to sources

Due to https://github.com/QuiltServerTools/Ledger/commit/581abac204fb8f72b9419012eb164eccafae64d3 (which was originally committed by @PotatoPresident (?)) this would require a ledger database addon update. (Because com.uchuhimo.konf is no longer relocated. There might also be other incompatible changes)

DrexHD avatar Feb 11 '24 17:02 DrexHD