[jira] [Commented] (SLING-5387) Provide support for running singleton jobs on non leader cluster nodes also

2017-05-01 Thread Chetan Mehrotra (JIRA)

[ 
https://issues.apache.org/jira/browse/SLING-5387?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15992301#comment-15992301
 ] 

Chetan Mehrotra commented on SLING-5387:


[~cziegeler] Have few more requests for this feature :)

# Add the scheduling info i.e. on which cluster instance a given job is planned 
to be run to the Scheduler Status Printer in WebConsole. This would help in 
determining where job is being run and hence from which cluster node the logs 
need to be checked for any debugging work
# Have a feature flag to disable this behaviour i.e. a way to revert to old 
behaviour where all such singleton jobs are scheduled on leader node.

> Provide support for running singleton jobs on non leader cluster nodes also
> ---
>
> Key: SLING-5387
> URL: https://issues.apache.org/jira/browse/SLING-5387
> Project: Sling
>  Issue Type: Improvement
>  Components: Commons
>Reporter: Chetan Mehrotra
>Assignee: Carsten Ziegeler
> Fix For: Commons Scheduler 2.5.4
>
>
> With SLING-2979 support for running singleton jobs on specific instance was 
> provided. In most cases we want to run  a job as singleton and not want to 
> "pin" it to specific nodes. For this {{scheduler.runOn}} needs to be set to 
> {{SINGLE}}.
> However per [current 
> implementation|https://github.com/apache/sling/blob/org.apache.sling.commons.scheduler-2.4.14/src/main/java/org/apache/sling/commons/scheduler/impl/QuartzJobExecutor.java#L64]
>  {{SINGLE}} is treated as {{LEADER}}. This effectively causes *all singleton* 
> jobs to get executed on leader only thus putting extra load.
> For better utilization of cluster resources it should be possible to 
> distribute such singleton jobs on other cluster nodes and still ensure that 
> singleton contract is honoured!
> We would like to make use of this feature to ensure Oak AsyncIndexTask to run 
> on different cluster nodes (OAK-2749) 



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


Re: [VOTE] Release Apache Sling ResourceResolver 1.5.24

2017-05-01 Thread Karl Pauls
+1

regards,

Karl

On Mon, May 1, 2017 at 11:07 PM, Daniel Klco  wrote:
> +1
>
> On Mon, May 1, 2017 at 2:13 PM, Justin Edelson 
> wrote:
>
>> +1
>>
>> On Mon, May 1, 2017 at 1:49 PM Carsten Ziegeler 
>> wrote:
>>
>> > +1
>> >
>> >
>> >
>> > --
>> > Carsten Ziegeler
>> > Adobe Research Switzerland
>> > cziege...@apache.org
>> >
>>



-- 
Karl Pauls
karlpa...@gmail.com


Re: [REVIEW] XSSAPI

2017-05-01 Thread Karl Pauls
I did cut the releases for xss 2.0.0 and the new xss.compat 1.0.0.
Hopefully I got it correct - if not, please let me know in the vote
threads.

regards,

Karl

On Fri, Apr 28, 2017 at 12:25 PM, Karl Pauls  wrote:
> Hi,
>
> i followed through with the changes discussed (and voted on) in the
> xss api namely,
>
> - create a new bundle xss.compat based on the last release of the xss bundle,
> - deprecate all classes in its o.a.s.xss package,
> - increase tick version of the o.a.s.xss package
> - drop the JSONUtil class from the o.a.s.xss package in the xss bundle,
> - implement SLING-6793 (Remove unused methods from XSSAPI) in the xss bundle,
> - increase version of the o.a.s.xss package to  2.0.0
>
> what is missing is to release the new xss.compat and the xss bundle.
>
> Please review the changes an let me know if something is wrong -
> otherwise, I'll go ahead and do the releases.
>
> regards,
>
> Karl
>
> --
> Karl Pauls
> karlpa...@gmail.com



-- 
Karl Pauls
karlpa...@gmail.com


[VOTE] Release Apache Sling XSS Protection Compat Bundle version 1.0.0

2017-05-01 Thread Karl Pauls
I would like to call a vote on the initial Apache Sling XSS Protection
Compat Bundle
version 1.0.0 release.

Staging repository:
https://repository.apache.org/content/repositories/orgapachesling-1697/

You can use this UNIX script to download the release and verify the signatures:
http://svn.apache.org/repos/asf/sling/trunk/check_staged_release.sh

Usage:
sh check_staged_release.sh 1697 /tmp/sling-staging

Please vote to approve this release:

  [ ] +1 Approve the release
  [ ]  0 Don't care
  [ ] -1 Don't release, because ...


[VOTE] Release Apache Sling XSS Protection Bundle version 2.0.0

2017-05-01 Thread Karl Pauls
I would like to call a vote on the Apache Sling XSS Protection Bundle
version 2.0.0 release.

We solved 5 issues in this release:
https://issues.apache.org/jira/browse/SLING/fixforversion/12339951

Staging repository:
https://repository.apache.org/content/repositories/orgapachesling-1696/

You can use this UNIX script to download the release and verify the signatures:
http://svn.apache.org/repos/asf/sling/trunk/check_staged_release.sh

Usage:
sh check_staged_release.sh 1696 /tmp/sling-staging

Please vote to approve this release:

  [ ] +1 Approve the release
  [ ]  0 Don't care
  [ ] -1 Don't release, because ...


Re: [VOTE] Release Apache Sling ResourceResolver 1.5.24

2017-05-01 Thread Daniel Klco
+1

On Mon, May 1, 2017 at 2:13 PM, Justin Edelson 
wrote:

> +1
>
> On Mon, May 1, 2017 at 1:49 PM Carsten Ziegeler 
> wrote:
>
> > +1
> >
> >
> >
> > --
> > Carsten Ziegeler
> > Adobe Research Switzerland
> > cziege...@apache.org
> >
>


Re: [VOTE] Release Apache Sling JCR Resource Resolver version 3.0.0

2017-05-01 Thread Karl Pauls
Time to call the vote on the Apache Sling JCR Resource Resolver
version 3.0.0 release.

* +1 votes from Carsten Ziegeler, Stefan Seifert, and Karl Pauls.

* No other votes.

The vote is successful. I will make the release artifacts available as
soon as possible.


Re: [VOTE] Release Apache Sling JCR Resource Resolver version 3.0.0

2017-05-01 Thread Karl Pauls
+1

regards,

Karl

On Sat, Apr 29, 2017 at 9:35 AM, Stefan Seifert  wrote:
> +1
>



-- 
Karl Pauls
karlpa...@gmail.com


Re: [RESULT] [VOTE] Release Apache Sling JCR Installer 3.1.26

2017-05-01 Thread Karl Pauls
Time to call the vote on the Apache Sling JCR Installer 3.1.26 release.

* +1 votes from Carsten Ziegeler, Stefan Seifert, Daniel Klco, and Karl Pauls.

* No other votes.

The vote is successful. I will make the release artifacts available as
soon as possible.


Re: [VOTE] Release Apache Sling JCR Installer 3.1.26

2017-05-01 Thread Karl Pauls
+1

regards,

Karl

On Mon, May 1, 2017 at 3:52 PM, Daniel Klco  wrote:
> +1
>
> On Sat, Apr 29, 2017 at 3:33 AM, Stefan Seifert 
> wrote:
>
>> +1
>>
>>



-- 
Karl Pauls
karlpa...@gmail.com


Re: [VOTE] Release Apache Sling ResourceResolver 1.5.24

2017-05-01 Thread Justin Edelson
+1

On Mon, May 1, 2017 at 1:49 PM Carsten Ziegeler 
wrote:

> +1
>
>
>
> --
> Carsten Ziegeler
> Adobe Research Switzerland
> cziege...@apache.org
>


Re: [VOTE] Release Apache Sling ResourceResolver 1.5.24

2017-05-01 Thread Carsten Ziegeler
+1

 

-- 
Carsten Ziegeler
Adobe Research Switzerland
cziege...@apache.org


[jira] [Resolved] (SLING-6815) Allow for suppression of warning about adapter classes being in private packages

2017-05-01 Thread Justin Edelson (JIRA)

 [ 
https://issues.apache.org/jira/browse/SLING-6815?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Justin Edelson resolved SLING-6815.
---
Resolution: Fixed

in 1793373, added support for the {{adapter.allowed.in.private.package}} 
service property to the AdapterManager

in 1793374, added this property to all AdapterFactories registered by Sling 
Models

> Allow for suppression of warning about adapter classes being in private 
> packages
> 
>
> Key: SLING-6815
> URL: https://issues.apache.org/jira/browse/SLING-6815
> Project: Sling
>  Issue Type: Improvement
>  Components: Extensions
>Reporter: Justin Edelson
>Assignee: Justin Edelson
> Fix For: Adapter 2.1.10, Sling Models Impl 1.4.2
>
>
> Issue SLING-6658 exposed (at least for me) that while the warning about 
> adapter classes being in private packages is helpful, there is no way to 
> suppress it when done intentionally. In the case of Sling Model classes, post 
> SLING-6658, there is a need for a way to suppress this warning.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Created] (SLING-6815) Allow for suppression of warning about adapter classes being in private packages

2017-05-01 Thread Justin Edelson (JIRA)
Justin Edelson created SLING-6815:
-

 Summary: Allow for suppression of warning about adapter classes 
being in private packages
 Key: SLING-6815
 URL: https://issues.apache.org/jira/browse/SLING-6815
 Project: Sling
  Issue Type: Improvement
  Components: Extensions
Reporter: Justin Edelson
Assignee: Justin Edelson
 Fix For: Adapter 2.1.10, Sling Models Impl 1.4.2


Issue SLING-6658 exposed (at least for me) that while the warning about adapter 
classes being in private packages is helpful, there is no way to suppress it 
when done intentionally. In the case of Sling Model classes, post SLING-6658, 
there is a need for a way to suppress this warning.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[VOTE] Release Apache Sling ResourceResolver 1.5.24

2017-05-01 Thread Carsten Ziegeler
Hi,

We solved 2 issues in this release:
https://issues.apache.org/jira/browse/SLING/fixforversion/12340274

Staging repository:
https://repository.apache.org/content/repositories/orgapachesling-1695/

You can use this UNIX script to download the release and verify the
signatures:
http://svn.apache.org/repos/asf/sling/trunk/check_staged_release.sh

Usage:
sh check_staged_release.sh 1695 /tmp/sling-staging

Please vote to approve this release:

  [ ] +1 Approve the release
  [ ]  0 Don't care
  [ ] -1 Don't release, because ..

Regards
Carsten
-- 
Carsten Ziegeler
Adobe Research Switzerland
cziege...@apache.org


[jira] [Resolved] (SLING-6255) Sling IDE: Rely on latest tooling source support (1.0.2)

2017-05-01 Thread Konrad Windszus (JIRA)

 [ 
https://issues.apache.org/jira/browse/SLING-6255?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Konrad Windszus resolved SLING-6255.

Resolution: Fixed

Fixed in [r1793358|https://svn.apache.org/r1793358].

> Sling IDE: Rely on latest tooling source support (1.0.2)
> 
>
> Key: SLING-6255
> URL: https://issues.apache.org/jira/browse/SLING-6255
> Project: Sling
>  Issue Type: Bug
>  Components: IDE
>Affects Versions: Sling Eclipse IDE 1.1.0
>Reporter: Konrad Windszus
>Assignee: Konrad Windszus
> Fix For: Sling Eclipse IDE 1.2.0
>
>
> Once we have a release of the tooling support 1.0.2 we should automatically 
> install that version/upgrade previous version through Sling Eclipse IDE.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Closed] (SLING-6772) Provide default mapping for service users

2017-05-01 Thread Carsten Ziegeler (JIRA)

 [ 
https://issues.apache.org/jira/browse/SLING-6772?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Carsten Ziegeler closed SLING-6772.
---

> Provide default mapping for service users
> -
>
> Key: SLING-6772
> URL: https://issues.apache.org/jira/browse/SLING-6772
> Project: Sling
>  Issue Type: Improvement
>  Components: Service User Mapper
>Reporter: Carsten Ziegeler
>Assignee: Carsten Ziegeler
> Fix For: Service User Mapper 1.3.0
>
> Attachments: SLING-6772.karaf.patch, SLING-6772.repoinit.patch
>
>
> As discussed in [1] we should aim at making Sling configurationless again. 
> One part which currently always needs configurations is the service user 
> mapper. We should add a default mapping, from a bundle symblic name and sub 
> service to 
> {noformat}
> "serviceuser@" + {bundle.symblicName} + [":" + sub service]
> {noformat}
> [1] 
> https://lists.apache.org/thread.html/6f90d751ddd20d7041475ba5d5fc89beda1906048ff91cc2f564e63e@%3Cdev.sling.apache.org%3E



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[VOTE RESULT] Release Apache Sling Service User Mapper 1.3.0

2017-05-01 Thread Carsten Ziegeler
The vote passes with four binding +1 votes

Thanks

Carsten

-- 
Carsten Ziegeler
Adobe Research Switzerland
cziege...@apache.org


Re: [VOTE] Release Apache Sling Service User Mapper 1.3.0

2017-05-01 Thread Justin Edelson
+1

On Mon, May 1, 2017 at 10:04 AM Daniel Klco  wrote:

> +1
>
> On Sat, Apr 29, 2017 at 3:35 AM, Stefan Seifert 
> wrote:
>
> > +1
> >
> >
>


Re: [VOTE] Release Apache Sling Service User Mapper 1.3.0

2017-05-01 Thread Daniel Klco
+1

On Sat, Apr 29, 2017 at 3:35 AM, Stefan Seifert 
wrote:

> +1
>
>


Re: [VOTE] Release Apache Sling JCR Installer 3.1.26

2017-05-01 Thread Daniel Klco
+1

On Sat, Apr 29, 2017 at 3:33 AM, Stefan Seifert 
wrote:

> +1
>
>


Sling DevOps with Kubernetes on the Google Cloud Platform

2017-05-01 Thread Sandro Boehme

Hello again,

as mentioned in an other email [1] I wanted to create a Google Cloud 
based release process. Now I've created an initial working version with 
K8s on the Google Cloud. The goal of the project is, to provide a 
reusable production ready Sling infrastructure. It provides:

o a mostly declaritive infrastructure for Sling
o horizontal scalability for the application (not the DB)
o high availability through:
- auto recreation of the application and the Database instances
- unready applications removed from load balancing
- MongoDB Replica Set
o and a rollout of new application versions without downtime

You can check out the project at GitHub [2]. I'm looking forward to your 
bug reports, fixes, enhancements and comments!


[1] - Subject: 'Make Sling shiny - Basic CMS :: Sitebuilder, Google Cloud'
[2] - https://github.com/sandroboehme/sling-gce-k8s-launchpad

Best,

Sandro


[jira] [Updated] (SLING-6782) Sling Job implementation should avoid unnecessary writes to the repository

2017-05-01 Thread Carsten Ziegeler (JIRA)

 [ 
https://issues.apache.org/jira/browse/SLING-6782?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Carsten Ziegeler updated SLING-6782:

Fix Version/s: Event 4.2.4

> Sling Job implementation should avoid unnecessary writes to the repository
> --
>
> Key: SLING-6782
> URL: https://issues.apache.org/jira/browse/SLING-6782
> Project: Sling
>  Issue Type: Improvement
>  Components: Event
>Affects Versions: Event 4.2.2
>Reporter: Jörg Hoh
> Fix For: Event 4.2.4
>
> Attachments: SLING-6782-jobs-commit-to-often-2.patch, 
> SLING-6782-jobs-commit-to-often.patch
>
>
> I found in a number of occurences in the Sling Event code this pattern:
> {code}
> ResourceHelper.getOrCreateResource(resolver, newPath, 
> props);
> resolver.delete(jobResource);
> resolver.commit();
> {code}
> and the getOrCreateResource is internally doing a commit on the resolver 
> (autoCommit = true). So in the end there are 2 commits while only a single 
> commit would be sufficient.
> Removing these "double" commits could avoid a few write operations on the 
> repository.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Closed] (SLING-6808) Remove javax.script from scripting api

2017-05-01 Thread Carsten Ziegeler (JIRA)

 [ 
https://issues.apache.org/jira/browse/SLING-6808?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Carsten Ziegeler closed SLING-6808.
---

> Remove javax.script from scripting api
> --
>
> Key: SLING-6808
> URL: https://issues.apache.org/jira/browse/SLING-6808
> Project: Sling
>  Issue Type: Improvement
>  Components: Scripting
>Reporter: Carsten Ziegeler
>Assignee: Carsten Ziegeler
> Fix For: Scripting API 2.2.0
>
>
> We still include the javax.script api in the scripting api - this was needed 
> for pre java 6 installations. As we have moved to Java 7, we can now remve 
> this



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[VOTE RESULT] Release Apache Sling Scripting API 2.2.0

2017-05-01 Thread Carsten Ziegeler
The vote passes with three binding +1 votes

Thanks
Carsten

 

-- 
Carsten Ziegeler
Adobe Research Switzerland
cziege...@apache.org


Re: [VOTE] Release Apache Sling Scripting API 2.2.0

2017-05-01 Thread Daniel Klco
+1

On Sat, Apr 29, 2017 at 3:30 AM, Stefan Seifert 
wrote:

> +1
>
>


[jira] [Closed] (SLING-6792) Attached provisioning model should be the raw model

2017-05-01 Thread Carsten Ziegeler (JIRA)

 [ 
https://issues.apache.org/jira/browse/SLING-6792?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Carsten Ziegeler closed SLING-6792.
---

> Attached provisioning model should be the raw model
> ---
>
> Key: SLING-6792
> URL: https://issues.apache.org/jira/browse/SLING-6792
> Project: Sling
>  Issue Type: Bug
>  Components: Maven Plugins and Archetypes
>Affects Versions: Slingstart Maven Plugin 1.7.2
>Reporter: Carsten Ziegeler
>Assignee: Carsten Ziegeler
> Fix For: Slingstart Maven Plugin 1.7.4
>
>
> Currently the attached provisioning model is the processed model, which means 
> that things like a :remove section are removed from the model when it is 
> stored in the maven repository.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Closed] (SLING-6573) Repository goal should not require a launchpad feature

2017-05-01 Thread Carsten Ziegeler (JIRA)

 [ 
https://issues.apache.org/jira/browse/SLING-6573?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Carsten Ziegeler closed SLING-6573.
---

> Repository goal should not require a launchpad feature
> --
>
> Key: SLING-6573
> URL: https://issues.apache.org/jira/browse/SLING-6573
> Project: Sling
>  Issue Type: Improvement
>  Components: Maven Plugins and Archetypes
>Reporter: Carsten Ziegeler
>Assignee: Carsten Ziegeler
> Fix For: Slingstart Maven Plugin 1.7.4
>
>
> The repository goal currently requires a launchpad feature in the model, but 
> for slingfeature projects such a feature is not required.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


Re: [VOTE] Release Apache Sling Slingstart Maven Plugin 1.7.4

2017-05-01 Thread Carsten Ziegeler
The vote passed with three binding and one non binding +1 vote

Thanks
Carsten

 

-- 
Carsten Ziegeler
Adobe Research Switzerland
cziege...@apache.org


[jira] [Commented] (SLING-6797) Deprecate scheduling a job on a specific Sling instance

2017-05-01 Thread Carsten Ziegeler (JIRA)

[ 
https://issues.apache.org/jira/browse/SLING-6797?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15990775#comment-15990775
 ] 

Carsten Ziegeler commented on SLING-6797:
-

[~chetanm] If at all this would be a new feature - however if you already have 
different types of instances (renderers vs processors) then these will 
potentially issue different scheduled jobs. So you'll most probably already 
solve this at the provisioning level of the instance - which I believe is a 
much better place anyway

> Deprecate scheduling a job on a specific Sling instance
> ---
>
> Key: SLING-6797
> URL: https://issues.apache.org/jira/browse/SLING-6797
> Project: Sling
>  Issue Type: Improvement
>  Components: Commons
>Reporter: Carsten Ziegeler
>Assignee: Carsten Ziegeler
> Fix For: Commons Scheduler 2.5.4
>
>
> Currently it's possible to schedule a job on a specific instance by 
> specifying the exact instance id. This feature is questionable, especially 
> with instances coming and going it's hard to know the id in advance.
> It's better to rely on a good mechanism to distribute the scheduled jobs 
> amongst availabe instances or use the leader



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (SLING-5387) Provide support for running singleton jobs on non leader cluster nodes also

2017-05-01 Thread Carsten Ziegeler (JIRA)

[ 
https://issues.apache.org/jira/browse/SLING-5387?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15990774#comment-15990774
 ] 

Carsten Ziegeler commented on SLING-5387:
-

[~chetanm] Ok, yes makes sense - this needs some more work as currently a name 
is auto generated (more or less random) if missing. So we need to distinguish 
between a provided and a generated name - but definitely doable. I'll look into 
this.

> Provide support for running singleton jobs on non leader cluster nodes also
> ---
>
> Key: SLING-5387
> URL: https://issues.apache.org/jira/browse/SLING-5387
> Project: Sling
>  Issue Type: Improvement
>  Components: Commons
>Reporter: Chetan Mehrotra
>Assignee: Carsten Ziegeler
> Fix For: Commons Scheduler 2.5.4
>
>
> With SLING-2979 support for running singleton jobs on specific instance was 
> provided. In most cases we want to run  a job as singleton and not want to 
> "pin" it to specific nodes. For this {{scheduler.runOn}} needs to be set to 
> {{SINGLE}}.
> However per [current 
> implementation|https://github.com/apache/sling/blob/org.apache.sling.commons.scheduler-2.4.14/src/main/java/org/apache/sling/commons/scheduler/impl/QuartzJobExecutor.java#L64]
>  {{SINGLE}} is treated as {{LEADER}}. This effectively causes *all singleton* 
> jobs to get executed on leader only thus putting extra load.
> For better utilization of cluster resources it should be possible to 
> distribute such singleton jobs on other cluster nodes and still ensure that 
> singleton contract is honoured!
> We would like to make use of this feature to ensure Oak AsyncIndexTask to run 
> on different cluster nodes (OAK-2749) 



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Closed] (SLING-6254) Sling IDE: Got status code 500 for call to http://localhost:4000/system/sling/tooling/sourceReferences.json with AEM 6.2

2017-05-01 Thread Konrad Windszus (JIRA)

 [ 
https://issues.apache.org/jira/browse/SLING-6254?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Konrad Windszus closed SLING-6254.
--

> Sling IDE: Got status code 500 for call to 
> http://localhost:4000/system/sling/tooling/sourceReferences.json with AEM 6.2
> 
>
> Key: SLING-6254
> URL: https://issues.apache.org/jira/browse/SLING-6254
> Project: Sling
>  Issue Type: Bug
>  Components: IDE
>Affects Versions: Tooling Support Source 1.0.0
>Reporter: Konrad Windszus
>Assignee: Konrad Windszus
> Fix For: Tooling Support Source 1.0.2
>
>
> When connecting in debug mode with a local server got the following error
> {code}
> org.apache.sling.ide.osgi.OsgiClientException: 
> org.apache.commons.httpclient.HttpException: Got status code 500 for call to 
> http://localhost:4000/system/sling/tooling/sourceReferences.json
>   at 
> org.apache.sling.ide.osgi.impl.HttpOsgiClient.findSourceReferences(HttpOsgiClient.java:223)
>   at 
> org.apache.sling.ide.osgi.impl.TracingOsgiClient.findSourceReferences(TracingOsgiClient.java:110)
>   at 
> org.apache.sling.ide.eclipse.core.internal.JVMDebuggerConnection.connectInDebugMode(JVMDebuggerConnection.java:119)
>   at 
> org.apache.sling.ide.eclipse.core.internal.SlingLaunchpadBehaviour.start(SlingLaunchpadBehaviour.java:123)
>   at 
> org.apache.sling.ide.eclipse.core.internal.SlingLaunchpadLaunchConfigurationDelegate.launch(SlingLaunchpadLaunchConfigurationDelegate.java:45)
>   at 
> org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:885)
>   at 
> org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:739)
>   at 
> org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:731)
>   at 
> org.eclipse.wst.server.core.internal.Server.startImpl2(Server.java:3556)
>   at 
> org.eclipse.wst.server.core.internal.Server.startImpl(Server.java:3492)
>   at 
> org.eclipse.wst.server.core.internal.Server$StartJob.run(Server.java:367)
>   at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
> Caused by: org.apache.commons.httpclient.HttpException: Got status code 500 
> for call to http://localhost:4000/system/sling/tooling/sourceReferences.json
>   at 
> org.apache.sling.ide.osgi.impl.HttpOsgiClient.findSourceReferences(HttpOsgiClient.java:198)
>   ... 11 more
> {code}
> On the server-side I see
> {code}
> 8.11.2016 15:42:56.189 *ERROR* [qtp1040324669-4133] 
> org.apache.felix.http.jetty Exception while processing request to 
> /system/sling/tooling/sourceReferences.json (java.lang.NullPointerException)
> java.lang.NullPointerException: null
>   at 
> org.apache.sling.tooling.support.source.impl.FelixJettySourceReferenceFinder.findSourceReferences(FelixJettySourceReferenceFinder.java:53)
>   at 
> org.apache.sling.tooling.support.source.impl.SourceReferencesServlet.doGet(SourceReferencesServlet.java:123)
>   at javax.servlet.http.HttpServlet.service(HttpServlet.java:618)
>   at javax.servlet.http.HttpServlet.service(HttpServlet.java:725)
>   at 
> org.apache.felix.http.base.internal.handler.ServletHandler.handle(ServletHandler.java:85)
>   at 
> org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:79)
>   at 
> org.apache.sling.security.impl.ReferrerFilter.doFilter(ReferrerFilter.java:290)
>   at 
> org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135)
>   at 
> org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:74)
>   at 
> com.adobe.granite.license.impl.LicenseCheckFilter.doFilter(LicenseCheckFilter.java:308)
>   at 
> org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135)
>   at 
> org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:74)
>   at 
> org.apache.felix.http.sslfilter.internal.SslFilter.doFilter(SslFilter.java:89)
>   at 
> org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135)
>   at 
> org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:74)
>   at org.apache.sling.i18n.impl.I18NFilter.doFilter(I18NFilter.java:129)
>   at 
> org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135)
>   at 
> org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:74)
>   at 
> org.apache.sling.featureflags.impl.FeatureManager.doFilter(FeatureManager.java:116)
>   at 
> org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135)
> 

[jira] [Closed] (SLING-6256) Tooling Support: Fragments are listed twice as source reference

2017-05-01 Thread Konrad Windszus (JIRA)

 [ 
https://issues.apache.org/jira/browse/SLING-6256?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Konrad Windszus closed SLING-6256.
--

> Tooling Support: Fragments are listed twice as source reference
> ---
>
> Key: SLING-6256
> URL: https://issues.apache.org/jira/browse/SLING-6256
> Project: Sling
>  Issue Type: Bug
>  Components: Tooling
>Affects Versions: Tooling Support Source 1.0.0
>Reporter: Konrad Windszus
>Assignee: Konrad Windszus
> Fix For: Tooling Support Source 1.0.2
>
>
> All bundle fragments appear twice in the JSON output of 
> {{/system/sling/tooling/sourceReferences.json}} because once they are listed 
> with their host bundle and once on their own. I think it makes sense to only 
> consider real bundles (with all their bound fragments) and skip the 
> individual fragments.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Closed] (SLING-6764) Guard against reflection failures when registering Sling Model classes

2017-05-01 Thread Justin Edelson (JIRA)

 [ 
https://issues.apache.org/jira/browse/SLING-6764?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Justin Edelson closed SLING-6764.
-

> Guard against reflection failures when registering Sling Model classes
> --
>
> Key: SLING-6764
> URL: https://issues.apache.org/jira/browse/SLING-6764
> Project: Sling
>  Issue Type: Improvement
>  Components: Extensions
>Reporter: Justin Edelson
>Assignee: Justin Edelson
> Fix For: Sling Models Impl 1.4.0
>
>
> While troubleshooting a Sling Models application today, I ran across an 
> interesting case which I think we should better guard against.
> The model class had a dependency upon a class which was in an optionally 
> imported package (which was not present). When the bundle started, Sling 
> Models' BundleListener tried to instantiate the class and (due to the missing 
> package) failed to do so. Obviously, the problem here is that the import 
> wasn't *actually* optional. 
> The problem was two fold:
> 1) If the problematic bundle was already active when the Sling Models bundle 
> was activated (or updated), there was a NoClassDefError throw inside the 
> ModelAdapterFactory's activate method causing the component to not be fully 
> active. I also suspect that the deactivate method would never have been 
> called, although I didn't get that far.
> 2) If the problematic bundle was active after the Sling Models bundle was 
> activated, then the one problematic model class halted further processing of 
> model classes in that bundle.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Closed] (SLING-6584) Race condition in ModelAdapterFactory

2017-05-01 Thread Justin Edelson (JIRA)

 [ 
https://issues.apache.org/jira/browse/SLING-6584?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Justin Edelson closed SLING-6584.
-

> Race condition in ModelAdapterFactory
> -
>
> Key: SLING-6584
> URL: https://issues.apache.org/jira/browse/SLING-6584
> Project: Sling
>  Issue Type: Bug
>  Components: Extensions
>Affects Versions: Sling Models Impl 1.3.8
>Reporter: Vlad Bailescu
>Assignee: Justin Edelson
>Priority: Critical
> Fix For: Sling Models Impl 1.4.0
>
> Attachments: SLING-6584.test.patch
>
>
> There is a possible race condition in 
> https://github.com/apache/sling/blob/trunk/bundles/extensions/models/impl/src/main/java/org/apache/sling/models/impl/ModelAdapterFactory.java#L807-L815
>  when two threads are trying to inject the same field, resulting in model not 
> being constructed.
> {code}
> try {
> if (!accessible) {
> field.setAccessible(true);
> }
> field.set(createdObject, result.getValue());
> } catch (Exception e) {
> return new ModelClassException("Could not inject field due to reflection 
> issues", e);
> } finally {
> if (!accessible) {
> field.setAccessible(false);
> }
> }
> {code}
> This is exposed by the unit test attached:
> {code}
> org.apache.sling.models.impl.ModelAdapterFactory - Could not adapt to model
> org.apache.sling.models.factory.MissingElementsException: Could not inject 
> all required fields into class 
> org.apache.sling.models.testmodels.classes.WithOneConstructorModel
>   at 
> org.apache.sling.models.impl.ModelAdapterFactory.createObject(ModelAdapterFactory.java:593)
>   at 
> org.apache.sling.models.impl.ModelAdapterFactory.internalCreateModel(ModelAdapterFactory.java:335)
>   at 
> org.apache.sling.models.impl.ModelAdapterFactory.getAdapter(ModelAdapterFactory.java:211)
>   at 
> org.apache.sling.models.impl.ConstructorTest$1ModelCreator.call(ConstructorTest.java:153)
>   at 
> org.apache.sling.models.impl.ConstructorTest$1ModelCreator.call(ConstructorTest.java:149)
>   at java.util.concurrent.FutureTask.run(FutureTask.java:266)
>   at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>   at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>   at java.lang.Thread.run(Thread.java:745)
>   Suppressed: org.apache.sling.models.factory.MissingElementException: 
> Could not inject private int 
> org.apache.sling.models.testmodels.classes.WithOneConstructorModel.attribute
>   at 
> org.apache.sling.models.impl.ModelAdapterFactory.createObject(ModelAdapterFactory.java:598)
>   ... 8 more
>   Caused by: org.apache.sling.models.factory.ModelClassException: Could 
> not inject field due to reflection issues
>   at 
> org.apache.sling.models.impl.ModelAdapterFactory.setField(ModelAdapterFactory.java:812)
>   at 
> org.apache.sling.models.impl.ModelAdapterFactory.access$100(ModelAdapterFactory.java:112)
>   at 
> org.apache.sling.models.impl.ModelAdapterFactory$SetFieldCallback.inject(ModelAdapterFactory.java:378)
>   at 
> org.apache.sling.models.impl.ModelAdapterFactory.injectElement(ModelAdapterFactory.java:473)
>   at 
> org.apache.sling.models.impl.ModelAdapterFactory.createObject(ModelAdapterFactory.java:596)
>   ... 8 more
>   Caused by: java.lang.IllegalAccessException: Class 
> org.apache.sling.models.impl.ModelAdapterFactory can not access a member of 
> class org.apache.sling.models.testmodels.classes.WithOneConstructorModel with 
> modifiers "private"
>   at 
> sun.reflect.Reflection.ensureMemberAccess(Reflection.java:101)
>   at 
> java.lang.reflect.AccessibleObject.slowCheckMemberAccess(AccessibleObject.java:295)
>   at 
> java.lang.reflect.AccessibleObject.checkAccess(AccessibleObject.java:287)
>   at java.lang.reflect.Field.set(Field.java:755)
>   at 
> org.apache.sling.models.impl.ModelAdapterFactory.setField(ModelAdapterFactory.java:810)
>   ... 12 more
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Closed] (SLING-6748) Move ValuePreparer to the models API package

2017-05-01 Thread Justin Edelson (JIRA)

 [ 
https://issues.apache.org/jira/browse/SLING-6748?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Justin Edelson closed SLING-6748.
-

> Move ValuePreparer to the models API package
> 
>
> Key: SLING-6748
> URL: https://issues.apache.org/jira/browse/SLING-6748
> Project: Sling
>  Issue Type: Improvement
>  Components: Extensions
>Affects Versions: Sling Models API 1.3.2
>Reporter: Burkhard Pauli
>Assignee: Justin Edelson
> Fix For: Sling Models API 1.3.4, Sling Models Impl 1.4.0
>
>
> In SLING-6318 the internal ValuePreparer interface was added to improve the 
> injection performance. 
> To also allow external injectors to benefit from this improvement, the 
> internal interface should be moved to the public API package.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Closed] (SLING-6778) [Sling Models] Support Delegate Pattern for Models adapted from interfaces

2017-05-01 Thread Justin Edelson (JIRA)

 [ 
https://issues.apache.org/jira/browse/SLING-6778?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Justin Edelson closed SLING-6778.
-

> [Sling Models] Support Delegate Pattern for Models adapted from interfaces
> --
>
> Key: SLING-6778
> URL: https://issues.apache.org/jira/browse/SLING-6778
> Project: Sling
>  Issue Type: New Feature
>  Components: Extensions
>Reporter: Justin Edelson
> Fix For: Sling Models API 1.3.4, Sling Models Impl 1.4.0
>
> Attachments: SLING-6778.diff, SLING-6778.diff
>
>
> Consider this interface:
> {code}
> public interface Something {
>   
>   String getText();
> String getOther();
> }
> {code}
> With this model implementation:
> {code}
> @Model(adaptable = Resource.class, adapter = Something.class, resourceType = 
> "myco/something")
> public class SomethingImpl implements Something {
>   
>   @Inject
>   private String text;
> @Inject
> private String other;
>   public String getText() {
>   return text;
>   }
> public String getOther() {
> return other;
>  }
> }
> {code}
> And let's say that there is a resource with the type {{myco/somethingelse}} 
> and that {{myco/something}} is the super type of {{myco/somethingelse}}.
> In order to create a model class associated with {{myco/somethingelse}} and 
> have that model class access the original class using the Delegate pattern, 
> it is quite difficult to do so since you need to manually create a wrapping 
> resource and then adapt that. I think we can facilitate this pattern through 
> SLING-5739 and a new @Via provider.
> The syntax would be something along the lines of
> {code}
> @Self @Via(type = ResourceSuperType.class)
> private Something delegate;
> {code}
> Assuming you wanted the super type
> We could also support manually setting the resource type, i.e.
> {code}
> @Self @Via(value = “some/other/resourceType”, type = 
> ForcedResourceType.class)
> private Something delegate;
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Closed] (SLING-6652) Allow multiple Exporter annotated models being used with the same resourceType binding

2017-05-01 Thread Justin Edelson (JIRA)

 [ 
https://issues.apache.org/jira/browse/SLING-6652?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Justin Edelson closed SLING-6652.
-

> Allow multiple Exporter annotated models being used with the same 
> resourceType binding
> --
>
> Key: SLING-6652
> URL: https://issues.apache.org/jira/browse/SLING-6652
> Project: Sling
>  Issue Type: Improvement
>  Components: Extensions
>Affects Versions: Sling Models Impl 1.3.0
>Reporter: Dirk Rudolph
>Assignee: Justin Edelson
> Fix For: Sling Models Impl 1.4.0
>
> Attachments: SLING-6652.diff
>
>
> According to 
> http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/models/impl/src/main/java/org/apache/sling/models/impl/AdapterImplementations.java?view=markup#l59
>  the AdapterImplementations support only mapping resourceType to Adapter 1:1. 
> This mechanism is used in the ExportServlet to get the Object form either 
> {{SlingHttpServletRequest}} or {{Resource}}. 
> My use case: 
> Lets assume I want to combine my models with the exporter framework to export 
> 2 representations of a single resource:
> * metadata
> * data
> To do so I would create 2 models, each bound to the same resourceType but 
> annotated to be exported for different selectors. 



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Closed] (SLING-6658) Register models with their implType implicitly

2017-05-01 Thread Justin Edelson (JIRA)

 [ 
https://issues.apache.org/jira/browse/SLING-6658?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Justin Edelson closed SLING-6658.
-

> Register models with their implType implicitly
> --
>
> Key: SLING-6658
> URL: https://issues.apache.org/jira/browse/SLING-6658
> Project: Sling
>  Issue Type: Improvement
>Reporter: Dirk Rudolph
>Assignee: Konrad Windszus
>Priority: Minor
> Fix For: Sling Models API 1.3.4, Sling Models Impl 1.4.0
>
> Attachments: models.mdtext.patch
>
>
> As discussed in SLING-6652, the implementation of the {{@Exporter}} feature 
> introduced a undocumented assumption of the order of the adapterTypes. 
> This ticket is about always registering any {{@Model}} implicitly with its 
> {{implType}}, if not specified explicitly. This will allow the ExportServlet 
> to always use the {{implType}} while creating the {{@Model}} its going to 
> export.  



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Closed] (SLING-6785) Add support for scoped lifecycle of sling models

2017-05-01 Thread Justin Edelson (JIRA)

 [ 
https://issues.apache.org/jira/browse/SLING-6785?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Justin Edelson closed SLING-6785.
-

> Add support for scoped lifecycle of sling models
> 
>
> Key: SLING-6785
> URL: https://issues.apache.org/jira/browse/SLING-6785
> Project: Sling
>  Issue Type: New Feature
>  Components: Extensions
>Reporter: Christophe Jelger
>Assignee: Justin Edelson
>Priority: Minor
> Fix For: Sling Models API 1.3.4, Sling Models Impl 1.4.0
>
> Attachments: SLING-6785.diff, SLING-6785.diff
>
>
> Similar to the scopes of JEE beans 
> (http://docs.oracle.com/javaee/6/tutorial/doc/gjbbk.html), it would be nice 
> to have the possibility to set a scope for sling models.
> For example, a sling model instance could be reused for all the components 
> within the same HTTP request, thus avoiding that multiple instances of the 
> "same" model are created.
> This could be an attribute of the {{@model}} annotation, for example 
> something like:
> {{@model(scope="request")}}
> The {{request}} scope sounds straightforward for a sling model adapted from a 
> request.
> For models adapted from a resource, there are scenarios where the resource 
> itself is not relevant once the model has been instantiated, so it would 
> still be useful to be able to obtain the same model instance for different 
> components and resources within the same HTTP request.
> We could possibly have the same scopes than the JEE beans scope: {{request}}, 
> {{session}}, and {{application}}.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[RESULT] [VOTE] Release Apache Sling Tooling Support Source version 1.0.2

2017-05-01 Thread Konrad Windszus
Hi, 
The vote has passed with the following result : 
+1 (binding): Konrad Windszus, Stefan Seifert, Carsten Ziegler

I will copy this release to the Sling dist directory and
promote the artifacts to the central Maven repository.


Re: [VOTE] Release Apache Sling Tooling Support Source version 1.0.2

2017-05-01 Thread Konrad Windszus
+1

> On 27. Apr 2017, at 15:51, Konrad Windszus  wrote:
> 
> Hi,
> 
> We solved 2 issues in this release:
> https://issues.apache.org/jira/browse/SLING/fixforversion/12335044
> 
> Staging repository:
> https://repository.apache.org/content/repositories/orgapachesling-1690/
> 
> You can use this UNIX script to download the release and verify the 
> signatures:
> http://svn.apache.org/repos/asf/sling/trunk/check_staged_release.sh
> 
> Usage:
> sh check_staged_release.sh 1690 /tmp/sling-staging
> 
> Please vote to approve this release:
> 
> [ ] +1 Approve the release
> [ ]  0 Don't care
> [ ] -1 Don't release, because ...
> 
> This majority vote is open for at least 72 hours.
> 
> 



[RESULT] [VOTE] Release Apache Sling Models API 1.3.4 & Implementation 1.4.0

2017-05-01 Thread Justin Edelson
The vote has passed with 4 votes:

+1: Konrad Windszus, Stefan Seifert, Carsten Ziegler, Justin Edelson

On Thu, Apr 27, 2017 at 9:49 AM Justin Edelson 
wrote:

> Hi,
>
> We solved 7 issue in these releases
>
> https://issues.apache.org/jira/browse/SLING/fixforversion/12338883
> https://issues.apache.org/jira/browse/SLING/fixforversion/12338884/
>
> Staging repository:
> https://repository.apache.org/content/repositories/orgapachesling-1689/
>
> You can use this UNIX script to download the release and verify the
> signatures:
> http://svn.apache.org/repos/asf/sling/trunk/check_staged_release.sh
>
> Usage:
> sh check_staged_release.sh 1689 /tmp/sling-staging
>
> Please vote to approve this release:
> [ ] +1 Approve the release
> [ ]  0 Don't care
> [ ] -1 Don't release, because ...
>
> This vote will be open for 72 hours.
>
>


Re: [VOTE] Release Apache Sling Models API 1.3.4 & Implementation 1.4.0

2017-05-01 Thread Justin Edelson
My +1

On Thu, Apr 27, 2017 at 9:49 AM Justin Edelson 
wrote:

> Hi,
>
> We solved 7 issue in these releases
>
> https://issues.apache.org/jira/browse/SLING/fixforversion/12338883
> https://issues.apache.org/jira/browse/SLING/fixforversion/12338884/
>
> Staging repository:
> https://repository.apache.org/content/repositories/orgapachesling-1689/
>
> You can use this UNIX script to download the release and verify the
> signatures:
> http://svn.apache.org/repos/asf/sling/trunk/check_staged_release.sh
>
> Usage:
> sh check_staged_release.sh 1689 /tmp/sling-staging
>
> Please vote to approve this release:
> [ ] +1 Approve the release
> [ ]  0 Don't care
> [ ] -1 Don't release, because ...
>
> This vote will be open for 72 hours.
>
>


[jira] [Commented] (SLING-6797) Deprecate scheduling a job on a specific Sling instance

2017-05-01 Thread Chetan Mehrotra (JIRA)

[ 
https://issues.apache.org/jira/browse/SLING-6797?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15990645#comment-15990645
 ] 

Chetan Mehrotra commented on SLING-6797:


[~cziegeler] I think a better variant of this feature would be to allow pinning 
a job to instance having some tag defined. This could be based on 
[InstanceDesciption#properties|https://sling.apache.org/apidocs/sling7/index.html?org/apache/sling/discovery/InstanceDescription.html].
 

So a usecase here is that in a cluster setup we have certain instances 
configured for front end request while some instances are configured for 
background processing. In such a setup I would like the indexing job to be 
processed on one of the instances which are meant for background processing. 

I beling Sling Discovery would allow me to "tag" such Sling instances and 
surface the tag value as part of InstanceDescription and then Sling Scheduler 
can use this to select the instance which would process such a job

[~cziegeler] [~egli] Thoughts? Possibly we should deal this in a new issue as 
this feature was specifically for jobs pinned to specific sling id 

/cc [~ianeboston]

> Deprecate scheduling a job on a specific Sling instance
> ---
>
> Key: SLING-6797
> URL: https://issues.apache.org/jira/browse/SLING-6797
> Project: Sling
>  Issue Type: Improvement
>  Components: Commons
>Reporter: Carsten Ziegeler
>Assignee: Carsten Ziegeler
> Fix For: Commons Scheduler 2.5.4
>
>
> Currently it's possible to schedule a job on a specific instance by 
> specifying the exact instance id. This feature is questionable, especially 
> with instances coming and going it's hard to know the id in advance.
> It's better to rely on a good mechanism to distribute the scheduled jobs 
> amongst availabe instances or use the leader



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (SLING-5387) Provide support for running singleton jobs on non leader cluster nodes also

2017-05-01 Thread Chetan Mehrotra (JIRA)

[ 
https://issues.apache.org/jira/browse/SLING-5387?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15990641#comment-15990641
 ] 

Chetan Mehrotra commented on SLING-5387:


bq. I changed the algorithm to always use the class name of the job as the key 
and the full hash (BigInteger) module the number of instances

Can we also add the "name" of the job as well (if present). In Oak we might 
have multiple AsyncIndexUpdate instances configured. With current approach all 
of them would end on same instance. So if the hash logic also considers the job 
name then that would help here

> Provide support for running singleton jobs on non leader cluster nodes also
> ---
>
> Key: SLING-5387
> URL: https://issues.apache.org/jira/browse/SLING-5387
> Project: Sling
>  Issue Type: Improvement
>  Components: Commons
>Reporter: Chetan Mehrotra
>Assignee: Carsten Ziegeler
> Fix For: Commons Scheduler 2.5.4
>
>
> With SLING-2979 support for running singleton jobs on specific instance was 
> provided. In most cases we want to run  a job as singleton and not want to 
> "pin" it to specific nodes. For this {{scheduler.runOn}} needs to be set to 
> {{SINGLE}}.
> However per [current 
> implementation|https://github.com/apache/sling/blob/org.apache.sling.commons.scheduler-2.4.14/src/main/java/org/apache/sling/commons/scheduler/impl/QuartzJobExecutor.java#L64]
>  {{SINGLE}} is treated as {{LEADER}}. This effectively causes *all singleton* 
> jobs to get executed on leader only thus putting extra load.
> For better utilization of cluster resources it should be possible to 
> distribute such singleton jobs on other cluster nodes and still ensure that 
> singleton contract is honoured!
> We would like to make use of this feature to ensure Oak AsyncIndexTask to run 
> on different cluster nodes (OAK-2749) 



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)