diff options
| author | Tomas Bzatek <tbzatek@redhat.com> | 2014-04-17 17:20:22 +0200 |
|---|---|---|
| committer | Tomas Bzatek <tbzatek@redhat.com> | 2014-04-18 13:07:04 +0200 |
| commit | 3003b389012a6811e675c230b2496c42cad9aa10 (patch) | |
| tree | ce08cb7755c28268196f6dfc4c4404c99198c48c /src/python/setup.py | |
| parent | a5f05e8b0ce3c232aaa56e9c5f6e78069eac131c (diff) | |
journald: Properly handle journal EOF
The logic of handling EOF is incompatible between journald API and
CIM_MessageLog model we use. The CIM_MessageLog.GetRecord() method
allows stepping to the next record after data retrieval but there's
no specific return code for the EOF case. And returning failure code
makes the client application think the whole data retrieval has failed
and thus throwing away the last record.
To work around this case, a new flag has been introduced to the
IterationIdentifier string, which is considered opaque to the client.
That way we return success from the GetRecord() method call and putting
a flag to the IterationIdentifier string so that any successive GetRecord()
method call properly fails without any data loss. Care is taken of the
case when a new message is logged between the GetRecord() calls.
This commit also adds the CIM_MessageLog.PositionToLastRecord() method
for convenient access to the end of the journal.
Diffstat (limited to 'src/python/setup.py')
0 files changed, 0 insertions, 0 deletions
