LibP2PDB

A lightweight, embeddable library for peer-to-peer distributed-database synchronization in WoW addons.

File Details

LibP2PDB-8.zip

  • R
  • Mar 15, 2026
  • 55.96 KB
  • 13
  • 11.2.7+5
  • Retail + 3

File Name

LibP2PDB-8.zip

Supported Versions

  • 11.2.7
  • 5.5.3
  • 4.4.2
  • 3.4.5
  • 2.5.5
  • 1.15.8

Added

  • New function ListRows to retrieve all rows from a table in a single call.
  • New immutable option when creating a table (default: false), enabling tables whose rows become read‑only after insertion.
  • New exclusive option when creating a table (default: false), restricting row modifications to the peer that originally authored them.
  • New rowsPerChunk option when creating a table (default: 128), allowing each table to define how many rows are sent per chunk during gossip sync.

Changed

  • Chunks are now table‑specific rather than mixed, ensuring correct enforcement of each table’s rowsPerChunk setting.
  • Network merges now use asynchronous import by default, with a 1ms‑per‑frame budget to eliminate stutter during very large imports.
  • DeleteKey no longer creates a tombstone when the row does not exist; it now returns true as a no‑op.

Fixed

  • Incoming messages are now processed immediately instead of being buffered for 400ms.
  • Improved duplicate‑message detection by keying on encoded data with a 1s expiration.
  • PeerID verification is now more resilient to cache misses.
  • Row versions now update during merges even when the row’s data is unchanged, ensuring proper database convergence.
  • Fixed internal table summaries so they correctly update when a row’s version changes.