[GitHub] [sling-org-apache-sling-models-impl] paul-bjorkstrand commented on issue #18: SLING-8858 - Added NPE check

2019-11-22 Thread GitBox
paul-bjorkstrand commented on issue #18: SLING-8858 - Added NPE check
URL: 
https://github.com/apache/sling-org-apache-sling-models-impl/pull/18#issuecomment-557766580
 
 
   Looks liek a good quick fix. The only thing I would say is to add a test for 
this case. I will note that writing a test for the issue this originally fixed 
[was a bit painful][link to test class].
   
   @klcodanr, what do you think about the test-case idea? It may require 
splitting out the cache from this class so it can be mocked (to avoid needing 
to exhaust memory just to test that an NPE doesn't occur). Do you have any 
other ideas on how to test this?
   
   [link to test class]: 
https://github.com/apache/sling-org-apache-sling-models-impl/pull/9/files#diff-47140f95ccc32e82c278844f4aee6161


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[jira] [Closed] (SLING-8487) App CMS - Improve Breadcrumb

2019-11-22 Thread Dan Klco (Jira)


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

Dan Klco closed SLING-8487.
---

> App CMS - Improve Breadcrumb
> 
>
> Key: SLING-8487
> URL: https://issues.apache.org/jira/browse/SLING-8487
> Project: Sling
>  Issue Type: Improvement
>Affects Versions: App CMS 0.10.0
>Reporter: Dan Klco
>Assignee: Dan Klco
>Priority: Minor
> Fix For: CMS 0.14.0
>
>
> Currently, the breadcrumbs are not consistent when a content area supports 
> multiple types of content. The breadcrumb should always reflect the correct 
> console for each type of content.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (SLING-8697) CMS - Start / Stop Script Set Working Directory

2019-11-22 Thread Dan Klco (Jira)


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

Dan Klco closed SLING-8697.
---

> CMS - Start / Stop Script Set Working Directory
> ---
>
> Key: SLING-8697
> URL: https://issues.apache.org/jira/browse/SLING-8697
> Project: Sling
>  Issue Type: Improvement
>  Components: App CMS
>Affects Versions: App CMS 0.12.0
>Reporter: Dan Klco
>Assignee: Dan Klco
>Priority: Minor
> Fix For: CMS 0.14.0
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> I've followed documentation to build Sling CMS APP
> at org-apache-sling-app-cms/docs/building.md, where it says:
> To run the Sling CMS, build the code and copy the files
> builder/src/main/scripts/start.sh builder/src/main/scripts/stop.sh and
> builder/target/org.apache.sling.cms-{VERSION].jar to a directory. Execute
> the script ./start.sh to start Sling CMS.
> Well, when I do this, I get error:
> $ /bin/sh
>  /path/to/workspace/org-apache-sling-app-cms/target/distro/start.sh ( copy
> of a builder/src/main/scripts/start.sh ).
> ls: cannot access '*cms*.jar': No such file or directory
> Application started on port 8080!
> Well, I run this from inside InteliJ IDEA, and I guess it is more of a
> missing feature on iDEA to set home/working directory, but eather way, if
> start.sh and stop.sh would be changed in a way, to set/switch to working
> directory like this:
> ( start.sh:23 )
> script="$0"
> basename="$(dirname $script)"
> cd $basename



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (SLING-8762) Sling CMS - Create Archetype

2019-11-22 Thread Dan Klco (Jira)


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

Dan Klco closed SLING-8762.
---

> Sling CMS - Create Archetype
> 
>
> Key: SLING-8762
> URL: https://issues.apache.org/jira/browse/SLING-8762
> Project: Sling
>  Issue Type: Improvement
>Affects Versions: App CMS 0.10.0, App CMS 0.11.0, App CMS 0.11.2, App CMS 
> 0.12.0
>Reporter: Dan Klco
>Assignee: Dan Klco
>Priority: Minor
> Fix For: CMS 0.14.0
>
>
> There should be an archetype allowing developers to get started quickly with 
> the Sling CMS based on the sling-bundle-archetype. This archetype should also 
> include a code and configuration for a simple webpage / website. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (SLING-8789) CMS - Drag and Drop Reoder

2019-11-22 Thread Dan Klco (Jira)


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

Dan Klco closed SLING-8789.
---

> CMS - Drag and Drop Reoder
> --
>
> Key: SLING-8789
> URL: https://issues.apache.org/jira/browse/SLING-8789
> Project: Sling
>  Issue Type: Improvement
>Affects Versions: App CMS 0.10.0
>Reporter: Dan Klco
>Assignee: Dan Klco
>Priority: Minor
> Fix For: CMS 0.14.0
>
>
> Add the ability to drag and drop components to reoder them or move them 
> between containers.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (SLING-8835) CMS - Make Transformations Based on Definitions

2019-11-22 Thread Dan Klco (Jira)


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

Dan Klco closed SLING-8835.
---

> CMS - Make Transformations Based on Definitions
> ---
>
> Key: SLING-8835
> URL: https://issues.apache.org/jira/browse/SLING-8835
> Project: Sling
>  Issue Type: Improvement
>Affects Versions: App CMS 0.12.0
>Reporter: Dan Klco
>Assignee: Dan Klco
>Priority: Major
> Fix For: CMS 0.14.0
>
>
> Currently, the transformation library uses the suffix directly to transform 
> the images. This poses a potential issue as users could force the system to 
> create an excessive number of rendered images by providing different 
> variations of the suffix. 
> Instead, the transformations should be provided in configuration and then 
> selected by the author. This will also all for caching rendered images. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (SLING-8486) App CMS - Insights Broken with New Sling Engine

2019-11-22 Thread Dan Klco (Jira)


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

Dan Klco closed SLING-8486.
---

> App CMS - Insights Broken with New Sling Engine
> ---
>
> Key: SLING-8486
> URL: https://issues.apache.org/jira/browse/SLING-8486
> Project: Sling
>  Issue Type: Bug
>Affects Versions: App CMS 0.12.0
>Reporter: Dan Klco
>Assignee: Dan Klco
>Priority: Minor
> Fix For: CMS 0.14.0
>
>
> When attempting to execute the insights with the latest version of Sling CMS, 
> they fail with with an UnsupportedOperationException:
>  
> 12.06.2019 16:29:35.724 *ERROR* [0:0:0:0:0:0:0:1 [1560374975488] GET 
> /cms/shared/insights.html/content/apache/sling-apache-org/index HTTP/1.1] 
> org.apache.sling.cms.core.insights.impl.BaseInsightProvider Unable to perform 
> check HTML Validator for request PageInsightRequestImpl [markupCache={}, 
> page=org.apache.sling.cms.core.internal.models.PageImpl@2acb749b, 
> requestProcessor=org.apache.sling.engine.impl.SlingRequestProcessorImpl@72dee959,
>  
> resourceResolver=org.apache.sling.resourceresolver.impl.ResourceResolverImpl@7b27edc]
> java.lang.UnsupportedOperationException: null
>  at 
> org.apache.sling.cms.core.insights.impl.FakeResponse.addHeader(FakeResponse.java:86)
>  [org.apache.sling.cms.core:0.11.3.SNAPSHOT]
>  at 
> org.apache.sling.engine.impl.SlingHttpServletResponseImpl.(SlingHttpServletResponseImpl.java:59)
>  [org.apache.sling.engine:2.6.18]
>  at 
> org.apache.sling.engine.impl.request.RequestData.(RequestData.java:216) 
> [org.apache.sling.engine:2.6.18]
>  at 
> org.apache.sling.engine.impl.SlingRequestProcessorImpl.doProcessRequest(SlingRequestProcessorImpl.java:121)
>  [org.apache.sling.engine:2.6.18]
>  at 
> org.apache.sling.engine.impl.SlingRequestProcessorImpl.processRequest(SlingRequestProcessorImpl.java:247)
>  [org.apache.sling.engine:2.6.18]
>  at 
> org.apache.sling.cms.core.insights.impl.PageInsightRequestImpl.getContents(PageInsightRequestImpl.java:73)
>  [org.apache.sling.cms.core:0.11.3.SNAPSHOT]
>  at 
> org.apache.sling.cms.core.insights.impl.PageInsightRequestImpl.getPageHtml(PageInsightRequestImpl.java:104)
>  [org.apache.sling.cms.core:0.11.3.SNAPSHOT]
>  at 
> org.apache.sling.cms.core.insights.impl.providers.HTMLValdiatorInsightProvider.doEvaluateRequest(HTMLValdiatorInsightProvider.java:89)
>  [org.apache.sling.cms.core:0.11.3.SNAPSHOT]
>  at 
> org.apache.sling.cms.core.insights.impl.BaseInsightProvider.evaluateRequest(BaseInsightProvider.java:51)
>  [org.apache.sling.cms.core:0.11.3.SNAPSHOT]
>  at 
> org.apache.sling.cms.core.insights.impl.InsightFactoryImpl.lambda$getInsights$1(InsightFactoryImpl.java:55)
>  [org.apache.sling.cms.core:0.11.3.SNAPSHOT]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (SLING-8850) CMS - Reference Add Image Transformation Support

2019-11-22 Thread Dan Klco (Jira)


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

Dan Klco closed SLING-8850.
---

> CMS - Reference Add Image Transformation Support
> 
>
> Key: SLING-8850
> URL: https://issues.apache.org/jira/browse/SLING-8850
> Project: Sling
>  Issue Type: Improvement
>  Components: App CMS Reference
>Reporter: Dan Klco
>Assignee: Dan Klco
>Priority: Major
> Fix For: CMS 0.14.0
>
>
> Add support for transforming images via the Image Transformations from the 
> image component.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (SLING-8795) CMS - UGC Form Action

2019-11-22 Thread Dan Klco (Jira)


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

Dan Klco closed SLING-8795.
---

> CMS - UGC Form Action
> -
>
> Key: SLING-8795
> URL: https://issues.apache.org/jira/browse/SLING-8795
> Project: Sling
>  Issue Type: New Feature
>Affects Versions: App CMS 0.12.0
>Reporter: Dan Klco
>Assignee: Dan Klco
>Priority: Major
> Fix For: CMS 0.14.0
>
>
> Add the ability to create UGC content from a form submission. Should be able 
> to support all of the configuration values of the UGC Service as well as the 
> ability to wrap in a sling:Page and set static properties.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (SLING-8801) CMS - Add Option to Forward instead of Redirecting Forms

2019-11-22 Thread Dan Klco (Jira)


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

Dan Klco closed SLING-8801.
---

> CMS - Add Option to Forward instead of Redirecting Forms
> 
>
> Key: SLING-8801
> URL: https://issues.apache.org/jira/browse/SLING-8801
> Project: Sling
>  Issue Type: New Feature
>  Components: App CMS
>Reporter: Dan Klco
>Assignee: Dan Klco
>Priority: Major
> Fix For: CMS 0.14.0
>
>
> To enable multi-step forms or result data displays, forms should be able to 
> forward the request instead of redirecting to the success page.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (SLING-8817) CMS - Add User / Group Console

2019-11-22 Thread Dan Klco (Jira)


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

Dan Klco closed SLING-8817.
---

> CMS - Add User / Group Console
> --
>
> Key: SLING-8817
> URL: https://issues.apache.org/jira/browse/SLING-8817
> Project: Sling
>  Issue Type: New Feature
>Affects Versions: App CMS 0.12.0
>Reporter: Dan Klco
>Assignee: Dan Klco
>Priority: Major
> Fix For: CMS 0.14.0
>
>
> We should create a console to manage users and groups in Sling CMS. It should 
> include:
>  
>  - Navigate through /home structure
>  - Creating Users
>  - Creating Groups
>  - Creating Authorizable Folders
>  - Move / Delete for all
>  - Assign members / membership
>  - Changing passwords
>  - Updating profiles
>  - Changing user status



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (SLING-8791) CMS - Add Reference Component

2019-11-22 Thread Dan Klco (Jira)


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

Dan Klco closed SLING-8791.
---
Assignee: Dan Klco

> CMS - Add Reference Component
> -
>
> Key: SLING-8791
> URL: https://issues.apache.org/jira/browse/SLING-8791
> Project: Sling
>  Issue Type: Improvement
>Affects Versions: App CMS 0.10.0
>Reporter: Dan Klco
>Assignee: Dan Klco
>Priority: Major
> Fix For: CMS 0.14.0
>
>
> Add a component to enable references to content in the JCR



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (SLING-8836) CMS - Add Grid View

2019-11-22 Thread Dan Klco (Jira)


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

Dan Klco closed SLING-8836.
---

> CMS - Add Grid View
> ---
>
> Key: SLING-8836
> URL: https://issues.apache.org/jira/browse/SLING-8836
> Project: Sling
>  Issue Type: New Feature
>Affects Versions: App CMS 0.12.0
>Reporter: Dan Klco
>Assignee: Dan Klco
>Priority: Major
> Fix For: CMS 0.14.0
>
>
> Enable a view of the content in Sling CMS viewable as a grid of items instead 
> of a table, using thumbnail images. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (SLING-8790) CMS - Disable Unnecessary Renderers by Default

2019-11-22 Thread Dan Klco (Jira)


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

Dan Klco closed SLING-8790.
---

> CMS - Disable Unnecessary Renderers by Default
> --
>
> Key: SLING-8790
> URL: https://issues.apache.org/jira/browse/SLING-8790
> Project: Sling
>  Issue Type: Improvement
>Affects Versions: App CMS 0.10.0
>Reporter: Dan Klco
>Priority: Major
> Fix For: CMS 0.14.0
>
>
> Disable the unnecessary HTML, XML and TXT GET renderers by default on Repo 
> initialization. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (SLING-8679) CMS - Update Health Check Support

2019-11-22 Thread Dan Klco (Jira)


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

Dan Klco closed SLING-8679.
---

> CMS - Update Health Check Support
> -
>
> Key: SLING-8679
> URL: https://issues.apache.org/jira/browse/SLING-8679
> Project: Sling
>  Issue Type: New Feature
>  Components: App CMS
>Affects Versions: App CMS 0.12.0
>Reporter: Dan Klco
>Assignee: Dan Klco
>Priority: Major
> Fix For: CMS 0.14.0
>
>
> Update the CMS to use Apache Felix Health checks to indicate if internal 
> features are configured. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (SLING-8719) CMS - Add Support for Basic Forms

2019-11-22 Thread Dan Klco (Jira)


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

Dan Klco closed SLING-8719.
---

> CMS - Add Support for Basic Forms
> -
>
> Key: SLING-8719
> URL: https://issues.apache.org/jira/browse/SLING-8719
> Project: Sling
>  Issue Type: Improvement
>  Components: App CMS, App CMS Reference
>Affects Versions: App CMS 0.12.0
>Reporter: Dan Klco
>Assignee: Dan Klco
>Priority: Major
> Fix For: CMS 0.14.0
>
>
> It would be a nice feature to show a basic form framework built in Apache 
> Sling / Sling CMS.
> Included features:
>  * Extensible actions
>  * Basic Fields (textarea, textbox, select)
>  * Extensible model for fields
>  * Configurable look and feel
>  * Extensible model for populating data
>  * Basic security



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[RESULT] [VOTE] Release Apache Sling CMS 0.14.0

2019-11-22 Thread Dan Klco
Hi,

The vote has passed with the following result:

+1 (binding): Robert Munteanu, Stefan Seifert, Radu Cotescu, Dan Klco
+1 (non-binding): none

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

Regards,
Dan Klco


[jira] [Comment Edited] (SLING-8858) Model Cache causes NPE in sling.models.impl 1.4.10+

2019-11-22 Thread Evgeny Tugarev (Jira)


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

Evgeny Tugarev edited comment on SLING-8858 at 11/22/19 10:54 PM:
--

PR filled: 
[https://github.com/apache/sling-org-apache-sling-models-impl/pull/18]


was (Author: etugarev):
PR filled:[https://github.com/apache/sling-org-apache-sling-models-impl/pull/18]

> Model Cache causes NPE in sling.models.impl 1.4.10+
> ---
>
> Key: SLING-8858
> URL: https://issues.apache.org/jira/browse/SLING-8858
> Project: Sling
>  Issue Type: Bug
>  Components: Sling Models
>Affects Versions: Sling Models Impl 1.4.10
> Environment: Java SE 1.8.0_231
>Reporter: Frank Pauleickhoff
>Priority: Major
>
> In AEM 6.4 ServicePack 6 we face NullPointerExceptions when using the Sling 
> model cache that used to work before (in SP 3).
> *Exception Stacktrace is:*
> {code:java}
> 22.11.2019 15:29:22.525 *ERROR* [127.0.0.1 [1574432957337] GET 
> /content/mypage.html HTTP/1.1] 
> org.apache.sling.engine.impl.SlingRequestProcessorImpl service: Uncaught 
> SlingException
> org.apache.sling.scripting.sightly.SightlyException: 
> org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: 
> org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: 
> org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: 
> org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: 
> org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: 
> org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: 
> Identifier xx.xxx.MyModel cannot be correctly instantiated by the Use API
> [...]
> Caused by: java.lang.NullPointerException: null
>  at 
> org.apache.sling.models.impl.ModelAdapterFactory.internalCreateModel(ModelAdapterFactory.java:407)
>  at 
> org.apache.sling.models.impl.ModelAdapterFactory.createModel(ModelAdapterFactory.java:314)
> {code}
> Problem seems to be related to introduction of WeakReferences in SLING-7586. 
> Without knowing any details and being deeply into the Sling Model Caching 
> implementation, I think a null-check is missing for "SoftReference" in Line 
> 407:
> {code:java}
> SoftReference SoftReference = adaptableCache.get(requestedType);
> ModelType cachedObject = (ModelType) SoftReference.get();
> {code}
> That seems to cause caching to throw NPE for any not yet cached model.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (SLING-8858) Model Cache causes NPE in sling.models.impl 1.4.10+

2019-11-22 Thread Evgeny Tugarev (Jira)


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

Evgeny Tugarev commented on SLING-8858:
---

PR filled:[https://github.com/apache/sling-org-apache-sling-models-impl/pull/18]

> Model Cache causes NPE in sling.models.impl 1.4.10+
> ---
>
> Key: SLING-8858
> URL: https://issues.apache.org/jira/browse/SLING-8858
> Project: Sling
>  Issue Type: Bug
>  Components: Sling Models
>Affects Versions: Sling Models Impl 1.4.10
> Environment: Java SE 1.8.0_231
>Reporter: Frank Pauleickhoff
>Priority: Major
>
> In AEM 6.4 ServicePack 6 we face NullPointerExceptions when using the Sling 
> model cache that used to work before (in SP 3).
> *Exception Stacktrace is:*
> {code:java}
> 22.11.2019 15:29:22.525 *ERROR* [127.0.0.1 [1574432957337] GET 
> /content/mypage.html HTTP/1.1] 
> org.apache.sling.engine.impl.SlingRequestProcessorImpl service: Uncaught 
> SlingException
> org.apache.sling.scripting.sightly.SightlyException: 
> org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: 
> org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: 
> org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: 
> org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: 
> org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: 
> org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: 
> Identifier xx.xxx.MyModel cannot be correctly instantiated by the Use API
> [...]
> Caused by: java.lang.NullPointerException: null
>  at 
> org.apache.sling.models.impl.ModelAdapterFactory.internalCreateModel(ModelAdapterFactory.java:407)
>  at 
> org.apache.sling.models.impl.ModelAdapterFactory.createModel(ModelAdapterFactory.java:314)
> {code}
> Problem seems to be related to introduction of WeakReferences in SLING-7586. 
> Without knowing any details and being deeply into the Sling Model Caching 
> implementation, I think a null-check is missing for "SoftReference" in Line 
> 407:
> {code:java}
> SoftReference SoftReference = adaptableCache.get(requestedType);
> ModelType cachedObject = (ModelType) SoftReference.get();
> {code}
> That seems to cause caching to throw NPE for any not yet cached model.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [sling-org-apache-sling-models-impl] etugarev opened a new pull request #18: Added NPE check

2019-11-22 Thread GitBox
etugarev opened a new pull request #18: Added NPE check
URL: https://github.com/apache/sling-org-apache-sling-models-impl/pull/18
 
 
   Added Null check for `adapterCache.get(adaptable)` call.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[jira] [Commented] (SLING-8853) Develop an Active variant of ResourceQueue and make it available as possible queue.provider for ForwardDistributionAgentFactory

2019-11-22 Thread Timothee Maret (Jira)


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

Timothee Maret commented on SLING-8853:
---

[~ashishc] the general approach in 
[^0001-SLING-8853-Adds-ActiveResourceQueue-and-makes-it-ava.patch] LGTM, could 
you open a PR ?

I think (but haven't tried) that the SLING-8854 approach without exporting 
{{recordProcessingAttempt}} could still work in this case.

> Develop an Active variant of ResourceQueue and make it available as possible 
> queue.provider for ForwardDistributionAgentFactory
> ---
>
> Key: SLING-8853
> URL: https://issues.apache.org/jira/browse/SLING-8853
> Project: Sling
>  Issue Type: Improvement
>  Components: Content Distribution
>Reporter: Ashish Chopra
>Assignee: Timothee Maret
>Priority: Major
> Fix For: Content Distribution Core 0.4.2
>
> Attachments: 
> 0001-SLING-8853-Adds-ActiveResourceQueue-and-makes-it-ava.patch, 
> 0003-SLING-8853-SLING-8854-enabling-ActiveResourceQueue-t.patch
>
>
> Via SLING-7754, a JCR Resource-backed queue [0] implementation was developed 
> for usecases where a queue processor wasn't required, {{ResourceQueue}} 
> implementation is currently {{PASSIVE}}.
> Given above, it is not possible to leverage {{ResourceQueue}} as a 
> {{queue.provider}} for {{DistributionAgents}} created via 
> {{ForwardDistributionAgentFactory}} [1].
> This issue aims to add an "Active" variant of Resource backed queues and 
> provide it as an option for {{ForwardDistributionAgentFactory}}.
> [0] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/master/src/main/java/org/apache/sling/distribution/queue/impl/resource/ResourceQueue.java
> [1] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java#L171-L178



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [sling-org-apache-sling-models-impl] etugarev edited a comment on issue #17: SLING-8706 - Injections for java.util.Optional<> should be automatically optional

2019-11-22 Thread GitBox
etugarev edited a comment on issue #17: SLING-8706 - Injections for 
java.util.Optional<> should be automatically optional
URL: 
https://github.com/apache/sling-org-apache-sling-models-impl/pull/17#issuecomment-557703449
 
 
   Posting here a "work in progress". 
   As discussed before I have modified a 
`ModelAdapterFactory.injectElement(..)`to incorporate the `Optional<>` class. I 
changed `ModelAdapterFactory.injectElement(..)` to be a facade and moved its 
original logic to `ModelAdapterFactory.injectElementInternal(..)`.
An additional method `getElement()` was created in order "represent" an 
optional `InjectableElement`. Also a specific version of 
`injectElementInternal()` is in place to fulfil the injection. Few questions 
regarding this change:
   
   1. Does it look legitimate?
   2. How to deal with the presence of `@Default` annotation if a field is of 
type Optional<>?


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [sling-org-apache-sling-models-impl] etugarev edited a comment on issue #17: SLING-8706 - Injections for java.util.Optional<> should be automatically optional

2019-11-22 Thread GitBox
etugarev edited a comment on issue #17: SLING-8706 - Injections for 
java.util.Optional<> should be automatically optional
URL: 
https://github.com/apache/sling-org-apache-sling-models-impl/pull/17#issuecomment-557703449
 
 
   Posting here a "work in progress". 
   As discussed before I have modified a 
`ModelAdapterFactory.injectElement(..)`to incorporate the `Optional<>` class. I 
changed `ModelAdapterFactory.injectElement(..)` to be a facade and moved its 
original logic to `ModelAdapterFactory.injectElementInternal(..)`.
An additional method `getElement()` was created in order "represent" an 
optional `InjectableElement`. Also a specific version of 
`injectElementInternal()` is in place to fulfil the injection. Few questions 
regarding this change:
   
   1. Does it look legitimate?
   2. How to deal with the presence of `@Optional` annotation if a field is of 
type Optional<>?


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [sling-org-apache-sling-models-impl] etugarev edited a comment on issue #17: SLING-8706 - Injections for java.util.Optional<> should be automatically optional

2019-11-22 Thread GitBox
etugarev edited a comment on issue #17: SLING-8706 - Injections for 
java.util.Optional<> should be automatically optional
URL: 
https://github.com/apache/sling-org-apache-sling-models-impl/pull/17#issuecomment-557703449
 
 
   Posting here a "work in progress". 
   As discussed before I have modified a 
`ModelAdapterFactory.injectElement(..)`to incorporate the `Optional<>` class. I 
changed `ModelAdapterFactory.injectElement(..)` to be a facade and moved its 
original logic to `ModelAdapterFactory.injectElementInternal(..)`.
An additional method `getElement()` was created in order "represent" an 
optional `InjectableElement`. Also a specific version of 
`injectElementInternal()` is in place to fulfil the injection. Few questions 
regarding this change:
   
   1. Does it look legitimate?
   2. How to deal with the presence of `@Optional` annotation if field is 
marked as Optional<>?


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [sling-org-apache-sling-models-impl] etugarev commented on issue #17: SLING-8706 - Injections for java.util.Optional<> should be automatically optional

2019-11-22 Thread GitBox
etugarev commented on issue #17: SLING-8706 - Injections for 
java.util.Optional<> should be automatically optional
URL: 
https://github.com/apache/sling-org-apache-sling-models-impl/pull/17#issuecomment-557703449
 
 
   Posting here a "work in progress". 
   As discussed I before have modified a 
`ModelAdapterFactory.injectElement(..)`to incorporate the `Optional<>` class. I 
changed `ModelAdapterFactory.injectElement(..)` to be a facade and moved its 
original logic to `ModelAdapterFactory.injectElementInternal(..)`.
An additional method `getElement()` was created in order "represent" an 
optional `InjectableElement`. Also a specific version of 
`injectElementInternal()` is in place to fulfil the injection. Few questions 
regarding this change:
   
   1. Does it look legitimate?
   2. How to deal with the presence of `@Optional` annotation if field is 
marked as Optional<>?


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[jira] [Commented] (SLING-8854) In-file and In-memory queue-providers for Forward Distribution report incorrect value for processing "Attempts"

2019-11-22 Thread Timothee Maret (Jira)


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

Timothee Maret commented on SLING-8854:
---

bq. This needs to be addressed.

I agree, thanks for spotting this. The approach you suggested generally makes 
sense to me. We may be able to do it without extending the 
{{DistributionQueue}} SPI.

How about keeping the status map in the {{SimpleDistributionQueueProvider}} and 
pass the status map to {{SimpleDistributionQueue}} and 
{{SimpleDistributionQueueProcessor}} ? The management of status would remain an 
implementation detail of the simple implementation.

> In-file and In-memory queue-providers for Forward Distribution report 
> incorrect value for processing "Attempts"
> ---
>
> Key: SLING-8854
> URL: https://issues.apache.org/jira/browse/SLING-8854
> Project: Sling
>  Issue Type: Bug
>  Components: Content Distribution
>Affects Versions: Content Distribution Core 0.4.0
>Reporter: Ashish Chopra
>Assignee: Timothee Maret
>Priority: Major
> Attachments: 
> 0001-SLING-8854-In-file-and-In-memory-queue-providers-for.patch
>
>
> {{ForwardDistributionAgentFactory}} allows specifying "In-Memory" and 
> "In-File" queue-providers [0]. Both these implementations are provided by 
> {{SimpleDistributionQueue}} [1].
> While responding to a queue-processing request, the head of the queue is 
> fetched to create a {{DistributionQueueEntry}}, which encapsulates a 
> {{DistributionQueueItemStatus}}. While retrieving the queue-head-entry, the 
> number-of-attempts are also incremented by 1, implying _one more_ 
> processing-attempt to have happened on a given queue-item. [2]
> The trouble arises from the fact that {{SimpleDistributionQueue#getHead}} 
> ends up being called from at least three other places:
> # Queue status Health Check [3], which is a periodic job
> # UI (via {{ExtendedDistributionServiceResourceProvider}}) [4]
> # Distribution Queue status MBean [5]
> Out of these, #1 is most troublesome - because of its periodic nature, the 
> number of Attempts for a queue-item that's being processed (or, is blocked) 
> will keep on increasing without corresponding dequeue-attempts.
> Due to #2, everytime the queue status is delivered to the UI, the attempt 
> would again increase. Similar would be the case of MBean invocations.
> This needs to be addressed. Notably, "Sling Jobs" based queue doesn't suffer 
> from this issue because it relies on retry-counts as maintained by Sling Job 
> Execution Engine.
> [0] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java#L258-L262
> [1] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/queue/impl/simple/SimpleDistributionQueue.java
> [2] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/queue/impl/simple/SimpleDistributionQueue.java#L110-L112
> [3] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/monitor/DistributionQueueHealthCheck.java#L113
> [4] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/resources/impl/ExtendedDistributionServiceResourceProvider.java#L158
> [5] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/monitor/impl/DistributionQueueMBeanImpl.java#L62-L91



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (SLING-8116) ValueMap - implement default methods using OSGI Converter

2019-11-22 Thread Radu Cotescu (Jira)


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

Radu Cotescu commented on SLING-8116:
-

{{org.apache.sling.resourceresolver}} needs to also be released, due to its 
narrow import for {{org.apache.sling.api.resource}}.

> ValueMap - implement default methods using OSGI Converter
> -
>
> Key: SLING-8116
> URL: https://issues.apache.org/jira/browse/SLING-8116
> Project: Sling
>  Issue Type: Improvement
>  Components: API
>Reporter: Jason E Bailey
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: Resource Resolver 1.6.16, API 2.21.0
>
>  Time Spent: 3h 20m
>  Remaining Estimate: 0h
>
> Implement default methods in the ValueMap interface that leverages the OSGi 
> Converter
> see
>  [https://osgi.org/specification/osgi.cmpn/7.0.0/util.converter.html]
> Once this is implemented, custom implementations of the ValueMap interface 
> can start being removed, where appropriate, so that a consistent and 
> comprehensive conversion of properties occur.  We can then add new Rules to 
> the Converter to allow features to be populated to all ValueMap 
> implementations.
>  
> To implement this, the following will also need to happen
>  * The Converter bundle will need to be added as a required bundle
>  ** Various scripts that define the minimum needed set of bundles will need 
> to be updated
>  * Communication on the difference in behaviour between the current ValueMap 
> and the ValueMap with Converter
>  * Although not within the Maven definition. org.osgi.util.Function needs to 
> be available as well for the Converter to initiate correctly.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (SLING-8116) ValueMap - implement default methods using OSGI Converter

2019-11-22 Thread Radu Cotescu (Jira)


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

Radu Cotescu updated SLING-8116:

Fix Version/s: Resource Resolver 1.6.16

> ValueMap - implement default methods using OSGI Converter
> -
>
> Key: SLING-8116
> URL: https://issues.apache.org/jira/browse/SLING-8116
> Project: Sling
>  Issue Type: Improvement
>  Components: API
>Reporter: Jason E Bailey
>Assignee: Jason E Bailey
>Priority: Major
> Fix For: Resource Resolver 1.6.16, API 2.21.0
>
>  Time Spent: 3h 20m
>  Remaining Estimate: 0h
>
> Implement default methods in the ValueMap interface that leverages the OSGi 
> Converter
> see
>  [https://osgi.org/specification/osgi.cmpn/7.0.0/util.converter.html]
> Once this is implemented, custom implementations of the ValueMap interface 
> can start being removed, where appropriate, so that a consistent and 
> comprehensive conversion of properties occur.  We can then add new Rules to 
> the Converter to allow features to be populated to all ValueMap 
> implementations.
>  
> To implement this, the following will also need to happen
>  * The Converter bundle will need to be added as a required bundle
>  ** Various scripts that define the minimum needed set of bundles will need 
> to be updated
>  * Communication on the difference in behaviour between the current ValueMap 
> and the ValueMap with Converter
>  * Although not within the Maven definition. org.osgi.util.Function needs to 
> be available as well for the Converter to initiate correctly.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Assigned] (SLING-8116) ValueMap - implement default methods using OSGI Converter

2019-11-22 Thread Radu Cotescu (Jira)


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

Radu Cotescu reassigned SLING-8116:
---

Assignee: Radu Cotescu  (was: Jason E Bailey)

> ValueMap - implement default methods using OSGI Converter
> -
>
> Key: SLING-8116
> URL: https://issues.apache.org/jira/browse/SLING-8116
> Project: Sling
>  Issue Type: Improvement
>  Components: API
>Reporter: Jason E Bailey
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: Resource Resolver 1.6.16, API 2.21.0
>
>  Time Spent: 3h 20m
>  Remaining Estimate: 0h
>
> Implement default methods in the ValueMap interface that leverages the OSGi 
> Converter
> see
>  [https://osgi.org/specification/osgi.cmpn/7.0.0/util.converter.html]
> Once this is implemented, custom implementations of the ValueMap interface 
> can start being removed, where appropriate, so that a consistent and 
> comprehensive conversion of properties occur.  We can then add new Rules to 
> the Converter to allow features to be populated to all ValueMap 
> implementations.
>  
> To implement this, the following will also need to happen
>  * The Converter bundle will need to be added as a required bundle
>  ** Various scripts that define the minimum needed set of bundles will need 
> to be updated
>  * Communication on the difference in behaviour between the current ValueMap 
> and the ValueMap with Converter
>  * Although not within the Maven definition. org.osgi.util.Function needs to 
> be available as well for the Converter to initiate correctly.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Assigned] (SLING-8853) Develop an Active variant of ResourceQueue and make it available as possible queue.provider for ForwardDistributionAgentFactory

2019-11-22 Thread Timothee Maret (Jira)


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

Timothee Maret reassigned SLING-8853:
-

Assignee: Timothee Maret

> Develop an Active variant of ResourceQueue and make it available as possible 
> queue.provider for ForwardDistributionAgentFactory
> ---
>
> Key: SLING-8853
> URL: https://issues.apache.org/jira/browse/SLING-8853
> Project: Sling
>  Issue Type: Improvement
>  Components: Content Distribution
>Reporter: Ashish Chopra
>Assignee: Timothee Maret
>Priority: Major
> Fix For: Content Distribution Core 0.4.2
>
> Attachments: 
> 0001-SLING-8853-Adds-ActiveResourceQueue-and-makes-it-ava.patch, 
> 0003-SLING-8853-SLING-8854-enabling-ActiveResourceQueue-t.patch
>
>
> Via SLING-7754, a JCR Resource-backed queue [0] implementation was developed 
> for usecases where a queue processor wasn't required, {{ResourceQueue}} 
> implementation is currently {{PASSIVE}}.
> Given above, it is not possible to leverage {{ResourceQueue}} as a 
> {{queue.provider}} for {{DistributionAgents}} created via 
> {{ForwardDistributionAgentFactory}} [1].
> This issue aims to add an "Active" variant of Resource backed queues and 
> provide it as an option for {{ForwardDistributionAgentFactory}}.
> [0] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/master/src/main/java/org/apache/sling/distribution/queue/impl/resource/ResourceQueue.java
> [1] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java#L171-L178



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Assigned] (SLING-8854) In-file and In-memory queue-providers for Forward Distribution report incorrect value for processing "Attempts"

2019-11-22 Thread Timothee Maret (Jira)


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

Timothee Maret reassigned SLING-8854:
-

Assignee: Timothee Maret

> In-file and In-memory queue-providers for Forward Distribution report 
> incorrect value for processing "Attempts"
> ---
>
> Key: SLING-8854
> URL: https://issues.apache.org/jira/browse/SLING-8854
> Project: Sling
>  Issue Type: Bug
>  Components: Content Distribution
>Affects Versions: Content Distribution Core 0.4.0
>Reporter: Ashish Chopra
>Assignee: Timothee Maret
>Priority: Major
> Attachments: 
> 0001-SLING-8854-In-file-and-In-memory-queue-providers-for.patch
>
>
> {{ForwardDistributionAgentFactory}} allows specifying "In-Memory" and 
> "In-File" queue-providers [0]. Both these implementations are provided by 
> {{SimpleDistributionQueue}} [1].
> While responding to a queue-processing request, the head of the queue is 
> fetched to create a {{DistributionQueueEntry}}, which encapsulates a 
> {{DistributionQueueItemStatus}}. While retrieving the queue-head-entry, the 
> number-of-attempts are also incremented by 1, implying _one more_ 
> processing-attempt to have happened on a given queue-item. [2]
> The trouble arises from the fact that {{SimpleDistributionQueue#getHead}} 
> ends up being called from at least three other places:
> # Queue status Health Check [3], which is a periodic job
> # UI (via {{ExtendedDistributionServiceResourceProvider}}) [4]
> # Distribution Queue status MBean [5]
> Out of these, #1 is most troublesome - because of its periodic nature, the 
> number of Attempts for a queue-item that's being processed (or, is blocked) 
> will keep on increasing without corresponding dequeue-attempts.
> Due to #2, everytime the queue status is delivered to the UI, the attempt 
> would again increase. Similar would be the case of MBean invocations.
> This needs to be addressed. Notably, "Sling Jobs" based queue doesn't suffer 
> from this issue because it relies on retry-counts as maintained by Sling Job 
> Execution Engine.
> [0] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java#L258-L262
> [1] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/queue/impl/simple/SimpleDistributionQueue.java
> [2] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/queue/impl/simple/SimpleDistributionQueue.java#L110-L112
> [3] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/monitor/DistributionQueueHealthCheck.java#L113
> [4] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/resources/impl/ExtendedDistributionServiceResourceProvider.java#L158
> [5] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/monitor/impl/DistributionQueueMBeanImpl.java#L62-L91



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (SLING-8737) Add support for lazily-evaluated bindings

2019-11-22 Thread Radu Cotescu (Jira)


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

Radu Cotescu updated SLING-8737:

Fix Version/s: Servlets Resolver 2.5.8

> Add support for lazily-evaluated bindings
> -
>
> Key: SLING-8737
> URL: https://issues.apache.org/jira/browse/SLING-8737
> Project: Sling
>  Issue Type: New Feature
>  Components: Scripting
>Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: Scripting Core 2.1.0, API 2.21.0, Servlets Resolver 2.5.8
>
>  Time Spent: 20m
>  Remaining Estimate: 0h
>
> The {{org.apache.sling.scripting.core}} module provides support for passing a 
> {{javax.script.Bindings}} to script engines, through the 
> {{org.apache.sling.scripting.core.impl.DefaultSlingScript}} implementation of 
> the {{org.apache.sling.api.scripting.SlingScript}} interface . 
> {{org.apache.sling.scripting.core.impl.DefaultSlingScript}} relies directly 
> on {{javax.script.SimpleBindings}}, which means that the values with which 
> the map is populated have to be computed before insertion. In some cases 
> these computations are not trivial, however there's no guarantee that the 
> values will actually be used.
> In order to optimise the {{Bindings}} usage, given that Java 8 and above 
> provide the 
> [{{Supplier}}|https://docs.oracle.com/javase/8/docs/api/java/util/function/Supplier.html]
>  functional interface, both the {{org.apache.sling.api}} and 
> {{org.apache.sling.scripting.core}} modules should bring support for pushing 
> {{Suppliers}} into the {{Bindings}} maps, suppliers which would be invoked 
> on-demand.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Resolved] (SLING-8857) Lower the log level for validation errors in org.apache.sling.xss.impl.XSSFilterImpl#runHrefValidation

2019-11-22 Thread Radu Cotescu (Jira)


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

Radu Cotescu resolved SLING-8857.
-
Resolution: Fixed

Fixed in [commit 
4c6946c|https://github.com/apache/sling-org-apache-sling-xss/commit/4c6946c].

> Lower the log level for validation errors in 
> org.apache.sling.xss.impl.XSSFilterImpl#runHrefValidation
> --
>
> Key: SLING-8857
> URL: https://issues.apache.org/jira/browse/SLING-8857
> Project: Sling
>  Issue Type: Bug
>  Components: XSS Protection API
>Affects Versions: XSS Protection API 2.1.16
>Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: XSS Protection API 2.1.18
>
>
> When falling back to simpler regular expressions to validate URLs, the 
> current log level is {{WARN}}, which is too high. This should be set to 
> {{DEBUG}} and a {{WARN}} should be logged only if the URL cannot be validated.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (SLING-8858) Model Cache causes NPE in sling.models.impl 1.4.10+

2019-11-22 Thread Frank Pauleickhoff (Jira)
Frank Pauleickhoff created SLING-8858:
-

 Summary: Model Cache causes NPE in sling.models.impl 1.4.10+
 Key: SLING-8858
 URL: https://issues.apache.org/jira/browse/SLING-8858
 Project: Sling
  Issue Type: Bug
  Components: Sling Models
Affects Versions: Sling Models Impl 1.4.10
 Environment: Java SE 1.8.0_231
Reporter: Frank Pauleickhoff


In AEM 6.4 ServicePack 6 we face NullPointerExceptions when using the Sling 
model cache that used to work before (in SP 3).

*Exception Stacktrace is:*
{code:java}
22.11.2019 15:29:22.525 *ERROR* [127.0.0.1 [1574432957337] GET 
/content/mypage.html HTTP/1.1] 
org.apache.sling.engine.impl.SlingRequestProcessorImpl service: Uncaught 
SlingException
org.apache.sling.scripting.sightly.SightlyException: 
org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: 
org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: 
org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: 
org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: 
org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: 
org.apache.sling.api.SlingException: Cannot get DefaultSlingScript: Identifier 
xx.xxx.MyModel cannot be correctly instantiated by the Use API

[...]

Caused by: java.lang.NullPointerException: null
 at 
org.apache.sling.models.impl.ModelAdapterFactory.internalCreateModel(ModelAdapterFactory.java:407)
 at 
org.apache.sling.models.impl.ModelAdapterFactory.createModel(ModelAdapterFactory.java:314)
{code}
Problem seems to be related to introduction of WeakReferences in SLING-7586. 
Without knowing any details and being deeply into the Sling Model Caching 
implementation, I think a null-check is missing for "SoftReference" in Line 407:

{code:java}
SoftReference SoftReference = adaptableCache.get(requestedType);
ModelType cachedObject = (ModelType) SoftReference.get();
{code}

That seems to cause caching to throw NPE for any not yet cached model.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (SLING-8857) Lower the log level for validation errors in org.apache.sling.xss.impl.XSSFilterImpl#runHrefValidation

2019-11-22 Thread Radu Cotescu (Jira)
Radu Cotescu created SLING-8857:
---

 Summary: Lower the log level for validation errors in 
org.apache.sling.xss.impl.XSSFilterImpl#runHrefValidation
 Key: SLING-8857
 URL: https://issues.apache.org/jira/browse/SLING-8857
 Project: Sling
  Issue Type: Bug
  Components: XSS Protection API
Affects Versions: XSS Protection API 2.1.16
Reporter: Radu Cotescu
Assignee: Radu Cotescu
 Fix For: XSS Protection API 2.1.18


When falling back to simpler regular expressions to validate URLs, the current 
log level is {{WARN}}, which is too high. This should be set to {{DEBUG}} and a 
{{WARN}} should be logged only if the URL cannot be validated.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (SLING-8827) api: Upgrade to parent pom 35

2019-11-22 Thread Radu Cotescu (Jira)


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

Radu Cotescu closed SLING-8827.
---

> api: Upgrade to parent pom 35
> -
>
> Key: SLING-8827
> URL: https://issues.apache.org/jira/browse/SLING-8827
> Project: Sling
>  Issue Type: Sub-task
>  Components: API
>Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: API 2.21.0
>
>
> The {{org.apache.sling.api}} bundle should be updated to version 35 of the 
> {{sling-bundle-parent}} pom, in order to allow builds with Java 11 and above.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (SLING-8116) ValueMap - implement default methods using OSGI Converter

2019-11-22 Thread Radu Cotescu (Jira)


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

Radu Cotescu closed SLING-8116.
---

> ValueMap - implement default methods using OSGI Converter
> -
>
> Key: SLING-8116
> URL: https://issues.apache.org/jira/browse/SLING-8116
> Project: Sling
>  Issue Type: Improvement
>  Components: API
>Reporter: Jason E Bailey
>Assignee: Jason E Bailey
>Priority: Major
> Fix For: API 2.21.0
>
>  Time Spent: 3h 20m
>  Remaining Estimate: 0h
>
> Implement default methods in the ValueMap interface that leverages the OSGi 
> Converter
> see
>  [https://osgi.org/specification/osgi.cmpn/7.0.0/util.converter.html]
> Once this is implemented, custom implementations of the ValueMap interface 
> can start being removed, where appropriate, so that a consistent and 
> comprehensive conversion of properties occur.  We can then add new Rules to 
> the Converter to allow features to be populated to all ValueMap 
> implementations.
>  
> To implement this, the following will also need to happen
>  * The Converter bundle will need to be added as a required bundle
>  ** Various scripts that define the minimum needed set of bundles will need 
> to be updated
>  * Communication on the difference in behaviour between the current ValueMap 
> and the ValueMap with Converter
>  * Although not within the Maven definition. org.osgi.util.Function needs to 
> be available as well for the Converter to initiate correctly.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (SLING-8558) ValueMapDecorator should allow getting ZonedDateTime values

2019-11-22 Thread Radu Cotescu (Jira)


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

Radu Cotescu closed SLING-8558.
---

> ValueMapDecorator should allow getting ZonedDateTime values
> ---
>
> Key: SLING-8558
> URL: https://issues.apache.org/jira/browse/SLING-8558
> Project: Sling
>  Issue Type: Improvement
>  Components: API
>Affects Versions: API 2.20.0
>Reporter: Julian Sedding
>Assignee: Julian Sedding
>Priority: Minor
> Fix For: API 2.21.0
>
>
> It would be convenient to allow getting {{ZonedDateTime}} values from a 
> {{ValueMap}}, which is a straight forward conversion from Calendar.
> The {{ObjectConverter}} used in {{ValueMapDecorator}} should be extended 
> accordingly.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (SLING-8847) Upgrade to parent pom 35

2019-11-22 Thread Radu Cotescu (Jira)


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

Radu Cotescu closed SLING-8847.
---

> Upgrade to parent pom 35
> 
>
> Key: SLING-8847
> URL: https://issues.apache.org/jira/browse/SLING-8847
> Project: Sling
>  Issue Type: Sub-task
>  Components: XSS Protection API
>Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: XSS Protection API 2.1.16
>
>
> The {{org.apache.sling.xss}} bundle should be updated to version 35 of the 
> {{sling-bundle-parent}} pom, in order to allow builds with Java 11 and above.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Closed] (SLING-8845) URL query parameter values are double-escaped for cases where namespace mangling has to be performed

2019-11-22 Thread Radu Cotescu (Jira)


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

Radu Cotescu closed SLING-8845.
---

> URL query parameter values are double-escaped for cases where namespace 
> mangling has to be performed
> 
>
> Key: SLING-8845
> URL: https://issues.apache.org/jira/browse/SLING-8845
> Project: Sling
>  Issue Type: Bug
>  Components: XSS Protection API
>Affects Versions: XSS Protection API 2.0.8
>Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: XSS Protection API 2.1.16
>
>
> URL query parameter values are double-escaped for cases where namespace 
> mangling has to be performed:
> {code:java}
> xssAPI.getValidHref("/path/to/page?key=%25text"); // -> 
> /path/to/page?key=%25text (which is correct)
> xssAPI.getValidHref("/path/to/page/jcr:content/par?key=%25text"); // -> 
> /path/to/page/_jcr_content/par?key=%2525text (which is wrong)
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (SLING-8853) Develop an Active variant of ResourceQueue and make it available as possible queue.provider for ForwardDistributionAgentFactory

2019-11-22 Thread Ashish Chopra (Jira)


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

Ashish Chopra commented on SLING-8853:
--

Also, until SLING-8854 is resolved, the processing-attempt for items in 
{{ActiveResourceQueue}} can't be updated and stays at 0.
Assuming approach in the patch at SLING-8854 is the way forward, one way to 
persist processing-attempts-statuses for items in {{ActiveResourceQueue}} can 
be as at [0].

[0] [^0003-SLING-8853-SLING-8854-enabling-ActiveResourceQueue-t.patch].

> Develop an Active variant of ResourceQueue and make it available as possible 
> queue.provider for ForwardDistributionAgentFactory
> ---
>
> Key: SLING-8853
> URL: https://issues.apache.org/jira/browse/SLING-8853
> Project: Sling
>  Issue Type: Improvement
>  Components: Content Distribution
>Reporter: Ashish Chopra
>Priority: Major
> Fix For: Content Distribution Core 0.4.2
>
> Attachments: 
> 0001-SLING-8853-Adds-ActiveResourceQueue-and-makes-it-ava.patch, 
> 0003-SLING-8853-SLING-8854-enabling-ActiveResourceQueue-t.patch
>
>
> Via SLING-7754, a JCR Resource-backed queue [0] implementation was developed 
> for usecases where a queue processor wasn't required, {{ResourceQueue}} 
> implementation is currently {{PASSIVE}}.
> Given above, it is not possible to leverage {{ResourceQueue}} as a 
> {{queue.provider}} for {{DistributionAgents}} created via 
> {{ForwardDistributionAgentFactory}} [1].
> This issue aims to add an "Active" variant of Resource backed queues and 
> provide it as an option for {{ForwardDistributionAgentFactory}}.
> [0] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/master/src/main/java/org/apache/sling/distribution/queue/impl/resource/ResourceQueue.java
> [1] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java#L171-L178



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (SLING-8853) Develop an Active variant of ResourceQueue and make it available as possible queue.provider for ForwardDistributionAgentFactory

2019-11-22 Thread Ashish Chopra (Jira)


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

Ashish Chopra updated SLING-8853:
-
Attachment: 0003-SLING-8853-SLING-8854-enabling-ActiveResourceQueue-t.patch

> Develop an Active variant of ResourceQueue and make it available as possible 
> queue.provider for ForwardDistributionAgentFactory
> ---
>
> Key: SLING-8853
> URL: https://issues.apache.org/jira/browse/SLING-8853
> Project: Sling
>  Issue Type: Improvement
>  Components: Content Distribution
>Reporter: Ashish Chopra
>Priority: Major
> Fix For: Content Distribution Core 0.4.2
>
> Attachments: 
> 0001-SLING-8853-Adds-ActiveResourceQueue-and-makes-it-ava.patch, 
> 0003-SLING-8853-SLING-8854-enabling-ActiveResourceQueue-t.patch
>
>
> Via SLING-7754, a JCR Resource-backed queue [0] implementation was developed 
> for usecases where a queue processor wasn't required, {{ResourceQueue}} 
> implementation is currently {{PASSIVE}}.
> Given above, it is not possible to leverage {{ResourceQueue}} as a 
> {{queue.provider}} for {{DistributionAgents}} created via 
> {{ForwardDistributionAgentFactory}} [1].
> This issue aims to add an "Active" variant of Resource backed queues and 
> provide it as an option for {{ForwardDistributionAgentFactory}}.
> [0] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/master/src/main/java/org/apache/sling/distribution/queue/impl/resource/ResourceQueue.java
> [1] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java#L171-L178



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (SLING-8853) Develop an Active variant of ResourceQueue and make it available as possible queue.provider for ForwardDistributionAgentFactory

2019-11-22 Thread Ashish Chopra (Jira)


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

Ashish Chopra commented on SLING-8853:
--

In the scope of this issue:
* an Active variant of {{ResourceQueue}} has been developed by extending this 
as {{ActiveResourceQueue}}
* visibility of {{SimpleDistributionQueueProcessor}} has been changed from 
{{package}} to {{public}}
* {{ResourceQueueProvider}} has been updated to add an instance of 
{{SimpleDistributionQueueProcessor}} as queue-processor for 
{{ActiveResourceQueue}} which is a non-concurrent and single-instance 
{{Runnable}} running on Sling Commons Scheduler
* {{ForwardDistributionAgentFactory}} has been updated to provide "Resource 
backed" as a valid {{queue.provider}}.
* {{ResourceQueueProviderFactory}} has been updated to be a OSGi configuration 
factory, creating the Active or Passive {{ResourceQueue}} instances based on 
installed configuration.

The patch is as at  
[^0001-SLING-8853-Adds-ActiveResourceQueue-and-makes-it-ava.patch].

[~marett], [~mpetria], the tests are TBD. I'd be adding them and raising a PR 
post your initial feedback on the proposed changeset. Thanks!

> Develop an Active variant of ResourceQueue and make it available as possible 
> queue.provider for ForwardDistributionAgentFactory
> ---
>
> Key: SLING-8853
> URL: https://issues.apache.org/jira/browse/SLING-8853
> Project: Sling
>  Issue Type: Improvement
>  Components: Content Distribution
>Reporter: Ashish Chopra
>Priority: Major
> Fix For: Content Distribution Core 0.4.2
>
> Attachments: 
> 0001-SLING-8853-Adds-ActiveResourceQueue-and-makes-it-ava.patch
>
>
> Via SLING-7754, a JCR Resource-backed queue [0] implementation was developed 
> for usecases where a queue processor wasn't required, {{ResourceQueue}} 
> implementation is currently {{PASSIVE}}.
> Given above, it is not possible to leverage {{ResourceQueue}} as a 
> {{queue.provider}} for {{DistributionAgents}} created via 
> {{ForwardDistributionAgentFactory}} [1].
> This issue aims to add an "Active" variant of Resource backed queues and 
> provide it as an option for {{ForwardDistributionAgentFactory}}.
> [0] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/master/src/main/java/org/apache/sling/distribution/queue/impl/resource/ResourceQueue.java
> [1] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java#L171-L178



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (SLING-8853) Develop an Active variant of ResourceQueue and make it available as possible queue.provider for ForwardDistributionAgentFactory

2019-11-22 Thread Ashish Chopra (Jira)


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

Ashish Chopra updated SLING-8853:
-
Attachment: 0001-SLING-8853-Adds-ActiveResourceQueue-and-makes-it-ava.patch

> Develop an Active variant of ResourceQueue and make it available as possible 
> queue.provider for ForwardDistributionAgentFactory
> ---
>
> Key: SLING-8853
> URL: https://issues.apache.org/jira/browse/SLING-8853
> Project: Sling
>  Issue Type: Improvement
>  Components: Content Distribution
>Reporter: Ashish Chopra
>Priority: Major
> Fix For: Content Distribution Core 0.4.2
>
> Attachments: 
> 0001-SLING-8853-Adds-ActiveResourceQueue-and-makes-it-ava.patch
>
>
> Via SLING-7754, a JCR Resource-backed queue [0] implementation was developed 
> for usecases where a queue processor wasn't required, {{ResourceQueue}} 
> implementation is currently {{PASSIVE}}.
> Given above, it is not possible to leverage {{ResourceQueue}} as a 
> {{queue.provider}} for {{DistributionAgents}} created via 
> {{ForwardDistributionAgentFactory}} [1].
> This issue aims to add an "Active" variant of Resource backed queues and 
> provide it as an option for {{ForwardDistributionAgentFactory}}.
> [0] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/master/src/main/java/org/apache/sling/distribution/queue/impl/resource/ResourceQueue.java
> [1] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java#L171-L178



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[RESULT] [VOTE] Release Apache Sling API 2.21.0

2019-11-22 Thread Radu Cotescu
Hi,

The vote has passed with the following result:

+1 (binding): Dan Klco, Karl Pauls, Stefan Seifert, Robert Munteanu
+1 (non-binding): Andreas Schaefer

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

Regards,
Radu Cotescu


[RESULT] [VOTE] Release Apache Sling XSS Protection API 2.1.16

2019-11-22 Thread Radu Cotescu
Hi,

The vote has passed with the following result:

+1 (binding): Karl Pauls, Stefan Seifert, Robert Munteanu, Dan Klco
+1 (non-binding): none

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

Regards,
Radu Cotescu


[jira] [Commented] (SLING-8854) In-file and In-memory queue-providers for Forward Distribution report incorrect value for processing "Attempts"

2019-11-22 Thread Ashish Chopra (Jira)


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

Ashish Chopra commented on SLING-8854:
--

One way to address this would be to add a capability for recording processing 
attempts in the {{DistributionQueue}} SPI.
Since it is entirely up to the implementation of the {{DistributionQueue}} to 
decide what to do when processing attempt is recorded, a {{default}} 
implementation of a no-op can be added to the SPI so that existing clients 
don't break.

_Assumption:_ Java  < 8 are not expected to be supported anymore (esp. given 
Oracle itself has dropped the ball on it).

Patch at  [^0001-SLING-8854-In-file-and-In-memory-queue-providers-for.patch] 
illustrates the approach by:
* adding {{DistributionQueue.recordProcessingAttempt}} method
* implementing {{SimpleDistributionQueue.recordProcessingAttempt}}
* updating {{SimpleDistributionQueueProcessor.run}} to call the added method 
while dequeing the item from queue-head.

If the approach is deemed acceptable, I will work on adding tests and raising a 
PR.

[~marett], would be great if you can provide your initial feedback on this.

> In-file and In-memory queue-providers for Forward Distribution report 
> incorrect value for processing "Attempts"
> ---
>
> Key: SLING-8854
> URL: https://issues.apache.org/jira/browse/SLING-8854
> Project: Sling
>  Issue Type: Bug
>  Components: Content Distribution
>Affects Versions: Content Distribution Core 0.4.0
>Reporter: Ashish Chopra
>Priority: Major
> Attachments: 
> 0001-SLING-8854-In-file-and-In-memory-queue-providers-for.patch
>
>
> {{ForwardDistributionAgentFactory}} allows specifying "In-Memory" and 
> "In-File" queue-providers [0]. Both these implementations are provided by 
> {{SimpleDistributionQueue}} [1].
> While responding to a queue-processing request, the head of the queue is 
> fetched to create a {{DistributionQueueEntry}}, which encapsulates a 
> {{DistributionQueueItemStatus}}. While retrieving the queue-head-entry, the 
> number-of-attempts are also incremented by 1, implying _one more_ 
> processing-attempt to have happened on a given queue-item. [2]
> The trouble arises from the fact that {{SimpleDistributionQueue#getHead}} 
> ends up being called from at least three other places:
> # Queue status Health Check [3], which is a periodic job
> # UI (via {{ExtendedDistributionServiceResourceProvider}}) [4]
> # Distribution Queue status MBean [5]
> Out of these, #1 is most troublesome - because of its periodic nature, the 
> number of Attempts for a queue-item that's being processed (or, is blocked) 
> will keep on increasing without corresponding dequeue-attempts.
> Due to #2, everytime the queue status is delivered to the UI, the attempt 
> would again increase. Similar would be the case of MBean invocations.
> This needs to be addressed. Notably, "Sling Jobs" based queue doesn't suffer 
> from this issue because it relies on retry-counts as maintained by Sling Job 
> Execution Engine.
> [0] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java#L258-L262
> [1] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/queue/impl/simple/SimpleDistributionQueue.java
> [2] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/queue/impl/simple/SimpleDistributionQueue.java#L110-L112
> [3] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/monitor/DistributionQueueHealthCheck.java#L113
> [4] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/resources/impl/ExtendedDistributionServiceResourceProvider.java#L158
> [5] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/monitor/impl/DistributionQueueMBeanImpl.java#L62-L91



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (SLING-8854) In-file and In-memory queue-providers for Forward Distribution report incorrect value for processing "Attempts"

2019-11-22 Thread Ashish Chopra (Jira)


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

Ashish Chopra updated SLING-8854:
-
Attachment: 0001-SLING-8854-In-file-and-In-memory-queue-providers-for.patch

> In-file and In-memory queue-providers for Forward Distribution report 
> incorrect value for processing "Attempts"
> ---
>
> Key: SLING-8854
> URL: https://issues.apache.org/jira/browse/SLING-8854
> Project: Sling
>  Issue Type: Bug
>  Components: Content Distribution
>Affects Versions: Content Distribution Core 0.4.0
>Reporter: Ashish Chopra
>Priority: Major
> Attachments: 
> 0001-SLING-8854-In-file-and-In-memory-queue-providers-for.patch
>
>
> {{ForwardDistributionAgentFactory}} allows specifying "In-Memory" and 
> "In-File" queue-providers [0]. Both these implementations are provided by 
> {{SimpleDistributionQueue}} [1].
> While responding to a queue-processing request, the head of the queue is 
> fetched to create a {{DistributionQueueEntry}}, which encapsulates a 
> {{DistributionQueueItemStatus}}. While retrieving the queue-head-entry, the 
> number-of-attempts are also incremented by 1, implying _one more_ 
> processing-attempt to have happened on a given queue-item. [2]
> The trouble arises from the fact that {{SimpleDistributionQueue#getHead}} 
> ends up being called from at least three other places:
> # Queue status Health Check [3], which is a periodic job
> # UI (via {{ExtendedDistributionServiceResourceProvider}}) [4]
> # Distribution Queue status MBean [5]
> Out of these, #1 is most troublesome - because of its periodic nature, the 
> number of Attempts for a queue-item that's being processed (or, is blocked) 
> will keep on increasing without corresponding dequeue-attempts.
> Due to #2, everytime the queue status is delivered to the UI, the attempt 
> would again increase. Similar would be the case of MBean invocations.
> This needs to be addressed. Notably, "Sling Jobs" based queue doesn't suffer 
> from this issue because it relies on retry-counts as maintained by Sling Job 
> Execution Engine.
> [0] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java#L258-L262
> [1] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/queue/impl/simple/SimpleDistributionQueue.java
> [2] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/queue/impl/simple/SimpleDistributionQueue.java#L110-L112
> [3] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/monitor/DistributionQueueHealthCheck.java#L113
> [4] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/resources/impl/ExtendedDistributionServiceResourceProvider.java#L158
> [5] 
> https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/monitor/impl/DistributionQueueMBeanImpl.java#L62-L91



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Resolved] (SLING-8856) jlink is not symlink-ed in the /bin folder any more

2019-11-22 Thread Radu Cotescu (Jira)


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

Radu Cotescu resolved SLING-8856.
-
Resolution: Fixed

Fixed in [commit 
935d2eb|https://github.com/apache/sling-org-apache-sling-committer-cli/commit/935d2eb].

> jlink  is not symlink-ed in the /bin folder any more
> 
>
> Key: SLING-8856
> URL: https://issues.apache.org/jira/browse/SLING-8856
> Project: Sling
>  Issue Type: Improvement
>  Components: Tooling
>Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: Committer CLI 1.0.0
>
>
> On the latest {{azul/zulu-openjdk-alpine:11}} image the {{jlink}} tool is not 
> symlink-ed in the {{/bin}} folder any more, making the Docker image build for 
> {{apache/sling-cli}} fail.
> The full path to the executable - {{/usr/lib/jvm/zulu11-ca/bin/jlink}} - 
> should be used instead.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Assigned] (SLING-8856) jlink is not symlink-ed in the /bin folder any more

2019-11-22 Thread Radu Cotescu (Jira)


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

Radu Cotescu reassigned SLING-8856:
---

Assignee: Radu Cotescu

> jlink  is not symlink-ed in the /bin folder any more
> 
>
> Key: SLING-8856
> URL: https://issues.apache.org/jira/browse/SLING-8856
> Project: Sling
>  Issue Type: Improvement
>  Components: Tooling
>Reporter: Radu Cotescu
>Assignee: Radu Cotescu
>Priority: Major
> Fix For: Committer CLI 1.0.0
>
>
> On the latest {{azul/zulu-openjdk-alpine:11}} image the {{jlink}} tool is not 
> symlink-ed in the {{/bin}} folder any more, making the Docker image build for 
> {{apache/sling-cli}} fail.
> The full path to the executable - {{/usr/lib/jvm/zulu11-ca/bin/jlink}} - 
> should be used instead.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (SLING-8856) jlink is not symlink-ed in the /bin folder any more

2019-11-22 Thread Radu Cotescu (Jira)
Radu Cotescu created SLING-8856:
---

 Summary: jlink  is not symlink-ed in the /bin folder any more
 Key: SLING-8856
 URL: https://issues.apache.org/jira/browse/SLING-8856
 Project: Sling
  Issue Type: Improvement
  Components: Tooling
Reporter: Radu Cotescu
 Fix For: Committer CLI 1.0.0


On the latest {{azul/zulu-openjdk-alpine:11}} image the {{jlink}} tool is not 
symlink-ed in the {{/bin}} folder any more, making the Docker image build for 
{{apache/sling-cli}} fail.

The full path to the executable - {{/usr/lib/jvm/zulu11-ca/bin/jlink}} - should 
be used instead.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[GitHub] [sling-org-apache-sling-feature-cpconverter] simonetripodi merged pull request #21: SLING-8855 - slight api refactoring for clean centralized repoinit ha…

2019-11-22 Thread GitBox
simonetripodi merged pull request #21: SLING-8855 - slight api refactoring for 
clean centralized repoinit ha…
URL: 
https://github.com/apache/sling-org-apache-sling-feature-cpconverter/pull/21
 
 
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [sling-org-apache-sling-feature-cpconverter] simonetripodi commented on issue #21: SLING-8855 - slight api refactoring for clean centralized repoinit ha…

2019-11-22 Thread GitBox
simonetripodi commented on issue #21: SLING-8855 - slight api refactoring for 
clean centralized repoinit ha…
URL: 
https://github.com/apache/sling-org-apache-sling-feature-cpconverter/pull/21#issuecomment-557501699
 
 
   Great job @DominikSuess , PR merged, thanks!   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[GitHub] [sling-org-apache-sling-feature-cpconverter] DominikSuess opened a new pull request #21: SLING-8855 - slight api refactoring for clean centralized repoinit ha…

2019-11-22 Thread GitBox
DominikSuess opened a new pull request #21: SLING-8855 - slight api refactoring 
for clean centralized repoinit ha…
URL: 
https://github.com/apache/sling-org-apache-sling-feature-cpconverter/pull/21
 
 
   …ndling & adding logic to intercept configuration handling and move scripts 
into repoinit extension


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services


[jira] [Created] (SLING-8855) Add support to cpConverter to process repoinit configurations

2019-11-22 Thread Jira
Dominik Süß created SLING-8855:
--

 Summary: Add support to cpConverter to process repoinit 
configurations 
 Key: SLING-8855
 URL: https://issues.apache.org/jira/browse/SLING-8855
 Project: Sling
  Issue Type: New Feature
  Components: Content-Package to Feature Model Converter
Reporter: Dominik Süß


The Feature Launcher has a repoinit extention that handles merging of 
configurations following the model layering and eventually registering as osgi 
configuration.
If a package embedds a direct factory configuration for repoinit this 
configuration is currently not converted but directly registered - as the 
registration of native configurations happens ahead of the extension processing 
these configurations will be processed ahead of the ones provided in the model, 
breaking with the intended feature layering.

To guarantee a clean processing the cpconverter must convert the scripts 
registered via osgi factory configuration into repoinit blocks that will then 
be processed according to the feature model merging rules and therefore enable 
technical dependencies of custom repoinit scripts on some provided by feature 
models (e.g. parent structures, nodetypes or privileges)



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Created] (SLING-8854) In-file and In-memory queue-providers for Forward Distribution report incorrect value for processing "Attempts"

2019-11-22 Thread Ashish Chopra (Jira)
Ashish Chopra created SLING-8854:


 Summary: In-file and In-memory queue-providers for Forward 
Distribution report incorrect value for processing "Attempts"
 Key: SLING-8854
 URL: https://issues.apache.org/jira/browse/SLING-8854
 Project: Sling
  Issue Type: Bug
  Components: Content Distribution
Affects Versions: Content Distribution Core 0.4.0
Reporter: Ashish Chopra


{{ForwardDistributionAgentFactory}} allows specifying "In-Memory" and "In-File" 
queue-providers [0]. Both these implementations are provided by 
{{SimpleDistributionQueue}} [1].

While responding to a queue-processing request, the head of the queue is 
fetched to create a {{DistributionQueueEntry}}, which encapsulates a 
{{DistributionQueueItemStatus}}. While retrieving the queue-head-entry, the 
number-of-attempts are also incremented by 1, implying _one more_ 
processing-attempt to have happened on a given queue-item. [2]

The trouble arises from the fact that {{SimpleDistributionQueue#getHead}} ends 
up being called from at least three other places:
# Queue status Health Check [3], which is a periodic job
# UI (via {{ExtendedDistributionServiceResourceProvider}}) [4]
# Distribution Queue status MBean [5]

Out of these, #1 is most troublesome - because of its periodic nature, the 
number of Attempts for a queue-item that's being processed (or, is blocked) 
will keep on increasing without corresponding dequeue-attempts.
Due to #2, everytime the queue status is delivered to the UI, the attempt would 
again increase. Similar would be the case of MBean invocations.

This needs to be addressed. Notably, "Sling Jobs" based queue doesn't suffer 
from this issue because it relies on retry-counts as maintained by Sling Job 
Execution Engine.

[0] 
https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/agent/impl/ForwardDistributionAgentFactory.java#L258-L262
[1] 
https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/queue/impl/simple/SimpleDistributionQueue.java
[2] 
https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/queue/impl/simple/SimpleDistributionQueue.java#L110-L112
[3] 
https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/monitor/DistributionQueueHealthCheck.java#L113
[4] 
https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/resources/impl/ExtendedDistributionServiceResourceProvider.java#L158
[5] 
https://github.com/apache/sling-org-apache-sling-distribution-core/blob/deb3d2ae33c4f4678c8503091a9fffdbb141e569/src/main/java/org/apache/sling/distribution/monitor/impl/DistributionQueueMBeanImpl.java#L62-L91



--
This message was sent by Atlassian Jira
(v8.3.4#803005)