Skip to main content

Module log_reader

Module log_reader 

Source
Expand description

Paged reads of a log’s Log_Buffer over ReadRange (#1530).

read_log_page reads one page from a cursor and returns the cursor to read from next, so a caller loops until the page says it is done and keeps the last cursor as its checkpoint. One request is outstanding at a time. On a BACnetClient the client’s minimum request interval paces them, and on the endpoint client the session’s does (#1542).

Sequence numbers are the log’s own: a log numbers each record with its Total_Record_Count once the record is added, so the newest record carries Total_Record_Count and the oldest that number less Record_Count, plus one. The numbers count up to the top of their Unsigned32 range (Unsigned64 for an Audit Log) and carry on from 1, never 0 (Clauses 12.25.14 and 12.25.16).

Structs§

LogGap
A page whose first record is not the one the read asked for: the log no longer holds the records in between.
LogPage
One page of a paged log read.

Enums§

LogCursor
Where a paged log read starts, or resumes from a checkpoint.

Traits§

LogRequester
What a paged log read needs from a requester: a property read as an Unsigned, and a ReadRange checked leniently, so the reader decides which broken rules to tolerate.

Functions§

read_log_page
Read one page of log’s Log_Buffer from cursor through requester, asking for up to page_size records (1..=32767).
unsigned_value
An application-tagged Unsigned that fills value.