If the config is stored in the repository, wont that propagate from
master to slave and visa versa ?
The JavaDocs on Configuration.update(Dictionary) say changes are stored.

On 6 September 2013 13:40, Carsten Ziegeler <cziege...@apache.org> wrote:
> Hmm, I would rather get the configuration dictionary from the config admin
> and update that
>
> Carsten
>
>
> 2013/9/6 Ian Boston <i...@tfd.co.uk>
>
>> I meant serviceRegistration not serviceReference, but I cant get it
>> seems like its not possible to get hold of a serviceRegistration from
>> another bundle.
>>
>> On 6 September 2013 13:31, Ian Boston <i...@tfd.co.uk> wrote:
>> > Hi,
>> > Just to be clear you are saying programatically manipulate the OSGi
>> > configuration of the JobConsumerManager when an instance initialises
>> > or transitions from master<->slave ?
>> >
>> > eg
>> >
>> > on a topology change
>> >      get a serviceReference to the JobConsumerManager
>> >           using serviceReference.setProperties(Dictionary)
>> >                 set a blacklist appropriate to the master/slave status
>> > of the instance.
>> >
>> >
>> > I am assuming I don't need to worry about the other OSGi properties,
>> > however the JavaDoc on setProperties is not explicit on what happens
>> > to properties that are not set ?
>> >
>> > I am also assuming this wont interact badly with any stored
>> > configuration state ?
>> >
>> > Best Regards
>> > Ian
>> >
>> > On 6 September 2013 12:35, Ian Boston <i...@tfd.co.uk> wrote:
>> >> Cool, thanks,
>> >> I'll go down the route you suggest.
>> >> Ian
>> >>
>> >> On 6 September 2013 11:45, Carsten Ziegeler <cziege...@apache.org>
>> wrote:
>> >>> Hi Ian,
>> >>>
>> >>> no, you don't implement a PropertyProvider for this - this is done by
>> the
>> >>> job implementation for you (JobConsumerManager).
>> >>> The JobConsumerManager collects all active JobConsumer queries their
>> >>> supported topics and provides this information through the topology by
>> >>> registering the PropertyProvider.
>> >>> Basically, you have three choices: either you disable the job consumer
>> on
>> >>> an instance, you change the topics registration property of that
>> service or
>> >>> the consumer manager allows to configure whitelist and blacklist
>> topics.
>> >>> Which in most cases is the easiest solution.
>> >>> A topology change causes the job handling to restart, if you do a
>> consumer
>> >>> change based on that, this results in a new topology event and the job
>> >>> handler will restart again. At least that's how it is implemented right
>> >>> now, as this is the easiest way of implementing it. However, the
>> restart
>> >>> comes with a delay, so if the additional events happen within this
>> delay,
>> >>> you end up with exactly one restart (this is why we have the delay).
>> >>>
>> >>> Regards
>> >>> Carsten
>> >>>
>> >>>
>> >>> 2013/9/6 Ian Boston <i...@tfd.co.uk>
>> >>>
>> >>>> Hi,
>> >>>> (Probably a question for Carsten).
>> >>>>
>> >>>> Is the right way to implement topology based queue exclusion by
>> >>>> implementing a topology discovery PropertyProvider that provides the
>> >>>> property:
>> >>>>
>> >>>> org.apache.sling.event.jobs.consumer.topics
>> >>>>
>> >>>> containing a , separated list of topics the instance can handle.
>> >>>>
>> >>>> If so I have 2 questions:
>> >>>>
>> >>>> Since this list is topology dependent (depends on which is master) and
>> >>>> will itself have to be generated after a topology change which may
>> >>>> take some time to filter through the discovery hub spoke
>> >>>> implementation, will it cause the Job Queue to restart multiple times
>> >>>> on a relevant property change. ?
>> >>>>
>> >>>> Also, how are Topics excluded from a list of capabilities for each
>> >>>> instance. I have read through the code in the constructor of
>> >>>> TopologyCapabilities and the getPotentialTargets, detectTartgets and I
>> >>>> cant see how to exclude a topic from an instance, only how to include.
>> >>>> What is the best way of excluding a topic from a instance without
>> >>>> having to whitelist all known topics. ?
>> >>>>
>> >>>> Best Regards
>> >>>> Ian
>> >>>>
>> >>>
>> >>>
>> >>>
>> >>> --
>> >>> Carsten Ziegeler
>> >>> cziege...@apache.org
>>
>
>
>
> --
> Carsten Ziegeler
> cziege...@apache.org

Reply via email to