Offset values are managed by Kafka. Queue processing in
Maximo® Manage attempts to
keep the Maximo Manage offset
values synchronized with the corresponding Kafka offset values for a queue.
Maximo Manage maintains
these offset values in the MAXKAFKAOFFSET table, so that for messages with errors, processing of
duplicate messages is prevented.
Values might not be synchronized if you delete and re-create Kafka queues, such as while you
are working in a development environment. The offset values also might not be synchronized if you
use a command line or user interface tool in Kafka to reset the Kafka consumer offset for the
Maximo Manage consumer group.
You must update Maximo Manage
to reflect these types of changes.
Procedure
-
In Maximo Manage, stop
the cron task for the consumer.
The name of the cron task instance is the client ID of the Kafka consumer.
- Delete the Kafka queue.
The queue name is the name of the consumer group.
- Take one of the following steps:
Condition |
Action |
A Kafka queue
was deleted in Kafka |
In the MAXKAFKAOFFSET table of Maximo Manage, delete the row that
corresponds to the Kafka
offset value for the deleted Kafka queue. You delete the row
either in the database or by creating an object structure and deleting the row by using a REST
client, such as Postman. Each queue partition is associated with one row. |
An offset value was changed in Kafka by using Kafka tooling or
scripting |
In the MAXKAFKAOFFSET table of Maximo Manage, set the offsets to the
same values. |
- Create the Kafka queue.
- Restart the Kafka server.
- Restart the cron task for the consumer.