Skip to content

Release 2.1.2

Latest

Choose a tag to compare

@tastybento tastybento released this 29 Sep 14:29
b55bbf2

Patch release that removes the remaining main-thread database reads from the top ten refresh.

馃悰 Bug Fixes

  • Island lookups during the top ten refresh no longer hit the database on the main thread. 2.1.1 moved the game mode's island data read off the main thread, but the step that matched each entry to its BentoBox island still ran on the main thread. BentoBox loads islands into memory on demand, so this step could still read the database:

    • On the first refresh after a restart, every island not yet in memory, such as offline players' islands, was loaded from the database.
    • For every refresh, each leftover AOneBlock/ChunkBlock entry whose island had been deleted triggered a database existence check. On MySQL and other SQL backends, that's one query per stale entry every 5 minutes.

    Island lookups now run in the async refresh task. Unknown islands are skipped without touching the database, and islands are no longer pulled into BentoBox's island cache just to build the top ten. [PR #20]

There are no config, locale, or data format changes, so you can drop this in to replace 2.1.1.

If you're still on 2.1.0 and seeing lag spikes every 5 minutes, upgrade now. 2.1.0 reads the game mode's whole island database on the main thread every refresh.

Compatibility

鉁旓笍 BentoBox API 3.14.0
鉁旓笍 Minecraft 1.21.x (Paper)
鉁旓笍 Java 21

Upgrading

  1. Stop the server.
  2. Replace the old TopBlock jar in plugins/BentoBox/addons/ with the new one.
  3. Restart the server.

What's Changed

Full Changelog: 2.1.1...2.1.2