$ ls -tr [checkpoint-directory]/commits
0 1 2 3 4 5 6 7 8 9
$ cat [checkpoint-directory]/commits/8
v1
{"nextBatchWatermarkMs": 0}
CommitLog — HDFSMetadataLog for Offset Commit Log
CommitLog is an HDFSMetadataLog with CommitMetadata metadata.
CommitLog is created exclusively for the offset commit log of StreamExecution.
CommitLog uses CommitMetadata for the metadata with nextBatchWatermarkMs attribute (of type Long and the default 0).
CommitLog writes commit metadata to files with names that are offsets.
CommitLog uses 1 for the version.
CommitLog (like the parent HDFSMetadataLog) takes the following to be created:
Serializing Metadata (Writing Metadata to Persistent Storage) — serialize Method
serialize(
metadata: CommitMetadata,
out: OutputStream): Unit
|
Note
|
serialize is part of HDFSMetadataLog Contract to write a metadata in serialized format.
|
serialize writes out the version prefixed with v on a single line (e.g. v1) followed by the given CommitMetadata in JSON format.
Deserializing Metadata — deserialize Method
deserialize(in: InputStream): CommitMetadata
|
Note
|
deserialize is part of HDFSMetadataLog Contract to deserialize a metadata (from an InputStream).
|
deserialize simply reads (deserializes) two lines from the given InputStream for version and the nextBatchWatermarkMs attribute.
add Method
add(batchId: Long, metadata: String): Boolean
|
Note
|
add is part of MetadataLog Contract to…FIXME.
|
add…FIXME