Dear Wiki user, You have subscribed to a wiki page or wiki category on "Samza Wiki" for change notification.
The "Pluggable MessageChooser" page has been changed by ChrisRiccomini: https://wiki.apache.org/samza/Pluggable%20MessageChooser?action=diff&rev1=8&rev2=9 === Bootstrapping === - To support bootstrapping, I propose that we change the !SystemConsumers behavior slightly. Right now, !SystemConsumers alternates between calling update and choose methods. We should change !SystemConsumers to only call choose if the !MessageChooser has been updated with envelopes from all SSPs that are not yet at head. If we make this change, then a simple hard-coded priority chooser will allow us to bootstrap simply by prioritizing the bootstrap stream as higher priority than anything else (e.g. currencyCodes=1, transactions=0). If you do this, the chooser will always choose the bootstrap stream, and the !SystemConsumers will guarantee that the chooser will always have a message from the bootstrap stream until it's at head. + To support bootstrapping, I propose that we change the !SystemConsumers behavior slightly. Right now, !SystemConsumers alternates between calling update and choose methods. We should change !SystemConsumers to only call choose if the !MessageChooser has been updated with at least one envelope from all streams that are not yet at head. For example, if a bootstrap stream with four partitions is not at head, then !MessageChooser.choose will only be called if an envelope from at least on of the streams' four partitions has been given to the !MessageChooser. + + If we make this change, then a simple hard-coded priority chooser will allow us to bootstrap simply by prioritizing the bootstrap stream as higher priority than anything else (e.g. currencyCodes=1, transactions=0). If you do this, the chooser will always choose the bootstrap stream, and the !SystemConsumers will guarantee that the chooser will always have a message from the bootstrap stream until it's at head. The changes required to do this are:
