append method
Implementation
Future<int> append(WalBinRecord Function(int lsn, int prevLsn) builder) async {
if (_closed) throw StateError('WAL is closed');
_lsn++;
final lsn = _lsn;
final prevLsn = _txnLastLsn[_currentTxnId] ?? 0;
final record = builder(lsn, prevLsn);
_frameRecord(record.encode());
await _flush();
_flushedLsn = lsn;
_txnLastLsn[record.txnId] = lsn;
return lsn;
}