@@ -289,6 +289,9 @@ Publish => Key Version PublisherId PublishedMessages
289289 Message => bytes
290290```
291291
292+ 1. Use version 1 if there is no filter value.
293+ 2. Use version 2 if there is a filter value.
294+
292295=== PublishConfirm
293296
294297```
@@ -394,8 +397,10 @@ Deliver => Key Version SubscriptionId OsirisChunk
394397 ChunkCrc => int32
395398 DataLength => uint32
396399 TrailerLength => uint32
397- Reserved => unit32 // unused 4 bytes
398- Messages => [Message] // no int32 for the size for this array; the size is defined by NumEntries field above
400+ BloomSize => uint8 // size of bloom filter data
401+ Reserved => unit24 // unused 3 bytes
402+ BloomFilterData => [uint8] // bloom filter data, the size of the array is defined by BloomSize
403+ Messages => [Message] // a continous collection of messages, the size of the array is defined by NumEntries
399404 Message => EntryTypeAndSize
400405 Data => bytes
401406```
@@ -419,14 +424,16 @@ Deliver => Key Version SubscriptionId CommittedOffset OsirisChunk
419424 ChunkCrc => int32
420425 DataLength => uint32
421426 TrailerLength => uint32
422- Reserved => unit32 // unused 4 bytes
423- Messages => [Message] // no int32 for the size for this array; the size is defined by NumEntries field above
427+ BloomSize => uint8 // size of bloom filter data
428+ Reserved => unit24 // unused 3 bytes
429+ BloomFilterData => [uint8] // bloom filter data, the size of the array is defined by BloomSize
430+ Messages => [Message] // a continous collection of messages, the size of the array is defined by NumEntries
424431 Message => EntryTypeAndSize
425432 Data => bytes
426433```
427434
428435
429- NB: See the https://github.com/rabbitmq/osiris/blob/f32df7563a036b1687c0208a3cb5f9e8f5cee937 /src/osiris_log.erl#L101 [Osiris project]
436+ NB: See the https://github.com/rabbitmq/osiris/blob/12a430b11be2c2be3f26ce4f2d7268954c7ec02b /src/osiris_log.erl#L126-L195 [Osiris project]
430437for details on the structure of messages.
431438
432439=== Credit
0 commit comments