Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -1145,6 +1145,48 @@ message StandardCoders {
// encoded with it's corresponding coder.
// Components: single coder for the value
NULLABLE = 17 [(beam_urn) = "beam:coder:nullable:v1"];

// Encodes an element, the windows it is in, the timestamp of the element,
// the pane of the element, and optionally element metadata.
// The encoding is represented as:
// timestamp windows pane [metadata_length metadata] element
//
// timestamp - Same as beam:coder:windowed_value:v1.
// windows - Same as beam:coder:windowed_value:v1.
// pane - Similar to beam:coder:windowed_value:v1, but the first byte
// has the high bit 0x80 set if element metadata
// is present.
// metadata_length - A VarInt64 representing the length of the metadata
// payload. Only present if the 0x80 bit is set on the first byte of
// pane.
// metadata - Serialized ElementMetadata proto bytes. Only present if the
// 0x80 bit is set on the first byte of pane.
// element - Same as beam:coder:windowed_value:v1.
//
// Components: The element coder and the window coder, in that order.
WINDOWED_VALUE_V2 = 19 [(beam_urn) = "beam:coder:windowed_value:v2"];

// Encodes a timer containing a user key, a dynamic timer tag, a clear bit,
// a fire timestamp, a hold timestamp, the windows, the paneinfo, and
// optionally element metadata.
// The encoding is represented as:
// user key - Same as beam:coder:timer:v1.
// dynamic timer tag - Same as beam:coder:timer:v1.
// windows - Same as beam:coder:timer:v1.
// clear bit - Same as beam:coder:timer:v1.
// If clear bit is false, it is followed by:
// fire timestamp - Same as beam:coder:timer:v1.
// hold timestamp - Same as beam:coder:timer:v1.
// paneinfo - Similar to beam:coder:timer:v1, but the first byte has
// the high bit 0x80 set if element metadata
// is present.
// metadata_length - A VarInt64 representing the length of the metadata
// payload. Only present if the 0x80 bit is set on the first byte of
// paneinfo.
// metadata - Serialized ElementMetadata proto bytes. Only present if the
// 0x80 bit is set on the first byte of paneinfo.
// Components: Coder for the key and windows.
TIMER_V2 = 20 [(beam_urn) = "beam:coder:timer:v2"];
}
}

Expand Down
Loading