[jira] [Commented] (OAK-10371) oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it instead

2023-09-14 Thread Julian Reschke (Jira)


[ 
https://issues.apache.org/jira/browse/OAK-10371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17765238#comment-17765238
 ] 

Julian Reschke commented on OAK-10371:
--

trunk: 
[094941333e|https://github.com/apache/jackrabbit-oak/commit/094941333e36aad19e8c9a2a55394618a27eefd6]
 
[95ce8d2768|https://github.com/apache/jackrabbit-oak/commit/95ce8d2768dbeebda2726593efe6dd003799f0b1]
 
[f948e36cfb|https://github.com/apache/jackrabbit-oak/commit/f948e36cfb97f15b598b953e614c5bd811c12f65]


> oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it 
> instead
> ---
>
> Key: OAK-10371
> URL: https://issues.apache.org/jira/browse/OAK-10371
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: blob-cloud-azure, segment-azure
>Reporter: Julian Reschke
>Assignee: Julian Reschke
>Priority: Critical
> Fix For: 1.58.0
>
>
> These components require Guava due to their dependency on 
> microsoft-azure-keyvault-core. That dependency is embedded, but Guava is not.
> Choices:
> - get microsoft-azure-keyvault-core fixed not to use Guava (unlikely, but see 
> https://github.com/Azure/azure-sdk-for-java/issues/26846)
> - embed Guava
> - make sure that the OSGi import statement is as relaxed as possible (note 
> that, for historic reasons, our components for now are likely used in 
> environments using Guava 15)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (OAK-10371) oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it instead

2023-09-13 Thread Julian Reschke (Jira)


[ 
https://issues.apache.org/jira/browse/OAK-10371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17764738#comment-17764738
 ] 

Julian Reschke commented on OAK-10371:
--

New PR: https://github.com/apache/jackrabbit-oak/pull/1117 (after refactoring 
inheritance and switching to OSGi R6 in separate tasks)

> oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it 
> instead
> ---
>
> Key: OAK-10371
> URL: https://issues.apache.org/jira/browse/OAK-10371
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: blob-cloud-azure, segment-azure
>Reporter: Julian Reschke
>Assignee: Julian Reschke
>Priority: Critical
>
> These components require Guava due to their dependency on 
> microsoft-azure-keyvault-core. That dependency is embedded, but Guava is not.
> Choices:
> - get microsoft-azure-keyvault-core fixed not to use Guava (unlikely, but see 
> https://github.com/Azure/azure-sdk-for-java/issues/26846)
> - embed Guava
> - make sure that the OSGi import statement is as relaxed as possible (note 
> that, for historic reasons, our components for now are likely used in 
> environments using Guava 15)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (OAK-10371) oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it instead

2023-09-12 Thread Carsten Ziegeler (Jira)


[ 
https://issues.apache.org/jira/browse/OAK-10371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17764076#comment-17764076
 ] 

Carsten Ziegeler commented on OAK-10371:


Right, inheritance of annotations is not supported with the official OSGi 
annotation. There are a couple of ways to fix this. Easiest is usually to just 
repeat the reference annotation within the component annotation on the sub 
class.
The better option is usually to change the abstract class to make it clear that 
it expects such a reference, for example by adding a required constructor that 
takes the service as an argument. However that is a breaking change which might 
not be always possible.

> oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it 
> instead
> ---
>
> Key: OAK-10371
> URL: https://issues.apache.org/jira/browse/OAK-10371
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: blob-cloud-azure, segment-azure
>Reporter: Julian Reschke
>Assignee: Julian Reschke
>Priority: Critical
>
> These components require Guava due to their dependency on 
> microsoft-azure-keyvault-core. That dependency is embedded, but Guava is not.
> Choices:
> - get microsoft-azure-keyvault-core fixed not to use Guava (unlikely, but see 
> https://github.com/Azure/azure-sdk-for-java/issues/26846)
> - embed Guava
> - make sure that the OSGi import statement is as relaxed as possible (note 
> that, for historic reasons, our components for now are likely used in 
> environments using Guava 15)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (OAK-10371) oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it instead

2023-09-12 Thread Marcel Reutegger (Jira)


[ 
https://issues.apache.org/jira/browse/OAK-10371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17764034#comment-17764034
 ] 

Marcel Reutegger commented on OAK-10371:


bq. Why can't you replace the component annotations in just this project?

I tried that, but then the generated 
org.apache.jackrabbit.oak.plugins.blob.datastore.AzureDataStore.xml does not 
contain a reference to StatisticsProvider. I assume this is because we disabled 
the SCR plugin and the StatisticsProvider reference is in base class 
AbstractDataStoreService (in a different bundle) using SCR annotations.

> oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it 
> instead
> ---
>
> Key: OAK-10371
> URL: https://issues.apache.org/jira/browse/OAK-10371
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: blob-cloud-azure, segment-azure
>Reporter: Julian Reschke
>Assignee: Julian Reschke
>Priority: Critical
>
> These components require Guava due to their dependency on 
> microsoft-azure-keyvault-core. That dependency is embedded, but Guava is not.
> Choices:
> - get microsoft-azure-keyvault-core fixed not to use Guava (unlikely, but see 
> https://github.com/Azure/azure-sdk-for-java/issues/26846)
> - embed Guava
> - make sure that the OSGi import statement is as relaxed as possible (note 
> that, for historic reasons, our components for now are likely used in 
> environments using Guava 15)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (OAK-10371) oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it instead

2023-09-11 Thread Julian Reschke (Jira)


[ 
https://issues.apache.org/jira/browse/OAK-10371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17763620#comment-17763620
 ] 

Julian Reschke commented on OAK-10371:
--

I believe Marcel tried that, but it didn't seem to be sufficient.

I'll try to enhance oak-osgi-it to actually verify that the nundle is usable.

> oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it 
> instead
> ---
>
> Key: OAK-10371
> URL: https://issues.apache.org/jira/browse/OAK-10371
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: blob-cloud-azure, segment-azure
>Reporter: Julian Reschke
>Assignee: Julian Reschke
>Priority: Critical
>
> These components require Guava due to their dependency on 
> microsoft-azure-keyvault-core. That dependency is embedded, but Guava is not.
> Choices:
> - get microsoft-azure-keyvault-core fixed not to use Guava (unlikely, but see 
> https://github.com/Azure/azure-sdk-for-java/issues/26846)
> - embed Guava
> - make sure that the OSGi import statement is as relaxed as possible (note 
> that, for historic reasons, our components for now are likely used in 
> environments using Guava 15)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (OAK-10371) oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it instead

2023-09-11 Thread Carsten Ziegeler (Jira)


[ 
https://issues.apache.org/jira/browse/OAK-10371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17763617#comment-17763617
 ] 

Carsten Ziegeler commented on OAK-10371:


Why can't you replace the component annotations in just this project?

> oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it 
> instead
> ---
>
> Key: OAK-10371
> URL: https://issues.apache.org/jira/browse/OAK-10371
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: blob-cloud-azure, segment-azure
>Reporter: Julian Reschke
>Assignee: Julian Reschke
>Priority: Critical
>
> These components require Guava due to their dependency on 
> microsoft-azure-keyvault-core. That dependency is embedded, but Guava is not.
> Choices:
> - get microsoft-azure-keyvault-core fixed not to use Guava (unlikely, but see 
> https://github.com/Azure/azure-sdk-for-java/issues/26846)
> - embed Guava
> - make sure that the OSGi import statement is as relaxed as possible (note 
> that, for historic reasons, our components for now are likely used in 
> environments using Guava 15)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (OAK-10371) oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it instead

2023-09-11 Thread Julian Reschke (Jira)


[ 
https://issues.apache.org/jira/browse/OAK-10371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17763600#comment-17763600
 ] 

Julian Reschke commented on OAK-10371:
--

So it seems we have three issues here:

- we need to disable the SCR plugin in order to be able to embed Guaba, but we 
need it enabled to process the annotation that we use 
(https://github.com/apache/jackrabbit-oak/blob/13dbe7d6a70182b84cfa1e477edcb8317b8e1842/oak-blob-cloud-azure/src/main/java/org/apache/jackrabbit/oak/blob/cloud/azure/blobstorage/AzureDataStoreService.java#L22-L28)
- updating the annotations (OAK-6759) probably requires doing so for all 
related components in the inheritance chain
- we now test the bundlein OSGI (OAK-10430), but apparently not sufficiently

(thanks to [~mreutegg] for helping to figure out what's going wrong)
 

> oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it 
> instead
> ---
>
> Key: OAK-10371
> URL: https://issues.apache.org/jira/browse/OAK-10371
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: blob-cloud-azure, segment-azure
>Reporter: Julian Reschke
>Assignee: Julian Reschke
>Priority: Critical
>
> These components require Guava due to their dependency on 
> microsoft-azure-keyvault-core. That dependency is embedded, but Guava is not.
> Choices:
> - get microsoft-azure-keyvault-core fixed not to use Guava (unlikely, but see 
> https://github.com/Azure/azure-sdk-for-java/issues/26846)
> - embed Guava
> - make sure that the OSGi import statement is as relaxed as possible (note 
> that, for historic reasons, our components for now are likely used in 
> environments using Guava 15)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (OAK-10371) oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it instead

2023-09-08 Thread Julian Reschke (Jira)


[ 
https://issues.apache.org/jira/browse/OAK-10371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17763301#comment-17763301
 ] 

Julian Reschke commented on OAK-10371:
--

trunk: 
[95ce8d2768|https://github.com/apache/jackrabbit-oak/commit/95ce8d2768dbeebda2726593efe6dd003799f0b1]
 
[f948e36cfb|https://github.com/apache/jackrabbit-oak/commit/f948e36cfb97f15b598b953e614c5bd811c12f65]

> oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it 
> instead
> ---
>
> Key: OAK-10371
> URL: https://issues.apache.org/jira/browse/OAK-10371
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: blob-cloud-azure, segment-azure
>Reporter: Julian Reschke
>Assignee: Julian Reschke
>Priority: Critical
>
> These components require Guava due to their dependency on 
> microsoft-azure-keyvault-core. That dependency is embedded, but Guava is not.
> Choices:
> - get microsoft-azure-keyvault-core fixed not to use Guava (unlikely, but see 
> https://github.com/Azure/azure-sdk-for-java/issues/26846)
> - embed Guava
> - make sure that the OSGi import statement is as relaxed as possible (note 
> that, for historic reasons, our components for now are likely used in 
> environments using Guava 15)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (OAK-10371) oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it instead

2023-09-06 Thread Julian Reschke (Jira)


[ 
https://issues.apache.org/jira/browse/OAK-10371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17762440#comment-17762440
 ] 

Julian Reschke commented on OAK-10371:
--

trunk: 
[f948e36cfb|https://github.com/apache/jackrabbit-oak/commit/f948e36cfb97f15b598b953e614c5bd811c12f65]

> oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it 
> instead
> ---
>
> Key: OAK-10371
> URL: https://issues.apache.org/jira/browse/OAK-10371
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: blob-cloud-azure, segment-azure
>Reporter: Julian Reschke
>Assignee: Julian Reschke
>Priority: Critical
> Fix For: 1.58.0
>
>
> These components require Guava due to their dependency on 
> microsoft-azure-keyvault-core. That dependency is embedded, but Guava is not.
> Choices:
> - get microsoft-azure-keyvault-core fixed not to use Guava (unlikely, but see 
> https://github.com/Azure/azure-sdk-for-java/issues/26846)
> - embed Guava
> - make sure that the OSGi import statement is as relaxed as possible (note 
> that, for historic reasons, our components for now are likely used in 
> environments using Guava 15)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)


[jira] [Commented] (OAK-10371) oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it instead

2023-09-06 Thread Julian Reschke (Jira)


[ 
https://issues.apache.org/jira/browse/OAK-10371?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17762439#comment-17762439
 ] 

Julian Reschke commented on OAK-10371:
--

Had to exclude two more packages from import section, otherwise fails in 
oak-osgi-it. Hopefully this is good enough.


> oak-segment-azure/oak-blob-cloud-azure require provided Guava, embed it 
> instead
> ---
>
> Key: OAK-10371
> URL: https://issues.apache.org/jira/browse/OAK-10371
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: blob-cloud-azure, segment-azure
>Reporter: Julian Reschke
>Assignee: Julian Reschke
>Priority: Critical
> Fix For: 1.58.0
>
>
> These components require Guava due to their dependency on 
> microsoft-azure-keyvault-core. That dependency is embedded, but Guava is not.
> Choices:
> - get microsoft-azure-keyvault-core fixed not to use Guava (unlikely, but see 
> https://github.com/Azure/azure-sdk-for-java/issues/26846)
> - embed Guava
> - make sure that the OSGi import statement is as relaxed as possible (note 
> that, for historic reasons, our components for now are likely used in 
> environments using Guava 15)



--
This message was sent by Atlassian Jira
(v8.20.10#820010)