Sorry, not slightly correct - if you create the configuration for the first
time, make sure to set the property
"org.apache.sling.installer.configuration.persist" to the value "false"

Carsten


2013/9/6 Carsten Ziegeler <cziege...@apache.org>

> In general yes, but not for the Job Consumer Manager - the configuration
> has a special property set which excludes it from writing back to the
> repository and therefore distributing it
>
> Carsten
>
>
> 2013/9/6 Ian Boston <i...@tfd.co.uk>
>
>> 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
>>
>
>
>
> --
> Carsten Ziegeler
> cziege...@apache.org
>



-- 
Carsten Ziegeler
cziege...@apache.org

Reply via email to