Ticket #66 (closed task: fixed)

Opened 3 years ago

Last modified 3 years ago

Notify RowLog and RowLogProcessor when consumers are (un-)registered

Reported by: evert Owned by: evert
Priority: minor Milestone: 0.3
Component: RowLog Version:
Keywords: Cc: lily-developers@…

Description

While Lily is up and running, RowLogConsumers? can be registered and unregistered (cfr #52).
The RowLog? needs to be notified of such changes in order to know for which consumers messages should be created.
The RowLogProcessors? also need to be notified in order to know for which consumers processor threads need to be running and which messages can be cleared from the rowlog (cfr #53).

Since the registered consumers will be persisted in ZooKeeper?, Watches can be used on ZooKeeper? nodes to inform the RowLog? and RowLogProcessor? of any changes.

Change History

comment:1 Changed 3 years ago by bruno

  • Cc lily-developers@… added

comment:2 Changed 3 years ago by evert

  • Milestone set to 0.3

comment:3 Changed 3 years ago by evert

  • Status changed from new to closed
  • Resolution set to fixed

The RowLogConfigurationManager? allows to register subscriptions (formerly known as consumers) to a RowLog?. This registration is stored persistently in ZooKeeper?.

The RowLogConfigurationManager? keeps a watch on the subscriptions nodes in ZooKeeper? to get informed of (un-)registering subscriptions. Through a callback it then informs the RowLog? and RowLogProcessor?.

The RowLog? itself does no longer know of the existance of the RowLogProcessor? and it does no longer have to inform the RowLogProcessor? of (un-)registering subscriptions.

r4278 , r4282, r4288, r4297

Note: See TracTickets for help on using tickets.