Originally from the User Slack
@Chaitanya_Tondlekar: What is the significance of system.batchlog table ? i can see one of my cluster write latencies are huge compared to OPS and in logs can see heavy compactions are happening on same table.
@avi @Botond_Dénes @Guy Can you help here with official documentation ?
@Botond_Dénes: All write statements that are in: BEGIN BATCH ... APPLY BATCH
are written into this table, and deleted once all statements were applied to the database successfully.
So this table normally has a lot of tombstones and does need compaction to get rid of these.
@Chaitanya_Tondlekar: Okay thanks.
Any official documentation link for this table
?
@Botond_Dénes: We have high level documentation on the batchlog feature, this table is part of the implementation.
@Chaitanya_Tondlekar: For some reason , this table is not getting empty creating more and more compactions and resulting into high write latencies.
What would be the reason for table not getting empty ?
I can see that writes get executed successfully on db.
If it’s getting executed successfully then batchlog table should be getting empty on it own. Is my understanding correct ?
@Botond_Dénes: if you have batchlog workload this table never gets empty, because every batchlog insert will add entries to it, then delete those entries
the tombstones stay around until they expire and need compaction to remove them
@Chaitanya_Tondlekar: Ok.