vaultik/internal
sneak 05286bed01 Batch transactions per blob for improved performance
Previously, each chunk and blob_chunk was inserted in a separate
transaction, leading to ~560k+ transactions for large backups.
This change batches all database operations per blob:

- Chunks are queued in packer.pendingChunks during file processing
- When blob finalizes, one transaction inserts all chunks, blob_chunks,
  and updates the blob record
- Scanner tracks pending chunk hashes to know which files can be flushed
- Files are flushed when all their chunks are committed to DB
- Database is consistent after each blob finalize

This reduces transaction count from O(chunks) to O(blobs), which for a
614k file / 44GB backup means ~50-100 transactions instead of ~560k.
2025-12-23 19:07:26 +07:00
..
blob Batch transactions per blob for improved performance 2025-12-23 19:07:26 +07:00
blobgen Fix foreign key constraints and improve snapshot tracking 2025-07-26 02:22:25 +02:00
chunker Major refactoring: UUID-based storage, streaming architecture, and CLI improvements 2025-07-22 14:56:44 +02:00
cli Add pluggable storage backend, PID locking, and improved scan progress 2025-12-19 11:52:51 +07:00
config Add pluggable storage backend, PID locking, and improved scan progress 2025-12-19 11:52:51 +07:00
crypto Refactor: Move Vaultik struct and methods to internal/vaultik package 2025-07-26 14:47:26 +02:00
database Remove dangerous database recovery that deleted journal/WAL files 2025-12-23 09:16:01 +07:00
globals Add godoc documentation to exported types and methods 2025-12-18 18:51:52 -08:00
log Add godoc documentation to exported types and methods 2025-12-18 18:51:52 -08:00
models Implement local SQLite index database with repositories 2025-07-20 10:26:15 +02:00
pidlock Add pluggable storage backend, PID locking, and improved scan progress 2025-12-19 11:52:51 +07:00
s3 Major refactoring: UUID-based storage, streaming architecture, and CLI improvements 2025-07-22 14:56:44 +02:00
snapshot Batch transactions per blob for improved performance 2025-12-23 19:07:26 +07:00
storage Add pluggable storage backend, PID locking, and improved scan progress 2025-12-19 11:52:51 +07:00
vaultik Add pluggable storage backend, PID locking, and improved scan progress 2025-12-19 11:52:51 +07:00