Details
-
Task
-
Status: Resolved
-
Normal
-
Resolution: Invalid
-
None
-
None
-
All
-
None
Description
Hi! Is there a document or spec file that describes the format for reading/writing entries in the commitlog and in the sstables? I was thinking of something like a Kaitai struct or a spec file (like the CQL Binary Protocol spec). For example, it would say "each commitlog entry starts with a byte for write type, then 1 byte for the size of the keyspace name string ... etc."
If not, which serializers/deserialiers in the source code should I look into? So far, it looks like instances of the Mutation class are what is being serialized, however, I still don't have a clear picture how they are serialized/deserialized to the extend to which I would be able to parse/write the byte arrays to and from the files.
I was also wondering if it be correct to say that each one entry in SSTables and CommitLogs are serialized and deserialized the same way?
This is just a challenge I am setting for myself to inspect/read/write commitlog and sstable entries. Thank you