Re: How to activate a SecurityProvider

2014-05-19 Thread Chetan Mehrotra
SecurityProvider should get registered. Do you have the Felix running
with WebConsole. Whats the status of the
'org.apache.jackrabbit.oak.security.SecurityProviderImpl'
Chetan Mehrotra


On Sat, May 17, 2014 at 1:30 AM, Galo Gimenez  wrote:
> Hello,
>
>
> I am setting up Oak on a Felix container , and the RepositoryManager
> reference to the SecurityProvider does not get satisfied, by looking at the
> documentation I do not see a way to fix this.
>
> I have noticed that the Sling project has a very different way to setup the
> repository, should I follow that model , or there is something I missing
> that makes the SecurityProvider service not to register.
>
>
> -- Galo


buildbot success in ASF Buildbot on oak-trunk-win7

2014-05-19 Thread buildbot
The Buildbot has detected a restored build on builder oak-trunk-win7 while 
building ASF Buildbot.
Full details are available at:
 http://ci.apache.org/builders/oak-trunk-win7/builds/109

Buildbot URL: http://ci.apache.org/

Buildslave for this Build: bb-win7

Build Reason: scheduler
Build Source Stamp: [branch jackrabbit/oak/trunk] 1595935
Blamelist: chetanm

Build succeeded!

sincerely,
 -The Buildbot





Re: NodeStore and BlobStore configurations in OSGi

2014-05-19 Thread Chetan Mehrotra
On Mon, May 19, 2014 at 8:10 PM, Marc Pfaff  wrote:
> SegmentNodeStore.getBlob() does not seem to be used
> when reading binaries through JCR

Yes when reading via JCR the read is handled via Blob itself i.e.
SegmentBlob in this case. A SegmentBlob gets created when the JCR
property access -> SegmentNodeState.getProperty ->
SegmentPropertyState.getValue ->
SegmentPropertyState#getValue(Segment, RecordId, Type)

>>Here there is an assumption that system has only one BlobStore
>>registered with OSGi Service Registry. If multiple BlobStore services
>>are registered then you can possibly specify a specific one by
>>configuring the 'blobStore.target' to the required OSGi service filter
>>(DS 112.6 of OSGi Compedium)
> Assuming same is true for NodeStore services.

Did not get the query?

btw I have update the docs at [1] (update should reflect on github in
couple of hours)

Chetan Mehrotra
[1] 
https://github.com/apache/jackrabbit-oak/blob/trunk/oak-doc/src/site/markdown/blobstore.md


buildbot failure in ASF Buildbot on oak-trunk-win7

2014-05-19 Thread buildbot
The Buildbot has detected a new failure on builder oak-trunk-win7 while 
building ASF Buildbot.
Full details are available at:
 http://ci.apache.org/builders/oak-trunk-win7/builds/108

Buildbot URL: http://ci.apache.org/

Buildslave for this Build: bb-win7

Build Reason: scheduler
Build Source Stamp: [branch jackrabbit/oak/trunk] 1595932
Blamelist: mduerig

BUILD FAILED: failed compile

sincerely,
 -The Buildbot





Re: NodeStore and BlobStore configurations in OSGi

2014-05-19 Thread Marc Pfaff
Hi Chetan

Thanks a lot for the details.

On 5/19/14 1:05 PM, "Chetan Mehrotra"  wrote:

>On Mon, May 19, 2014 at 3:29 PM, Marc Pfaff  wrote:
>> For SegmentNodeStore my research
>> ends up in FileBlobStore and for the DocumentNodeStore it appears to be
>> the MongoBlobStore. Is that correct?
>
>SegementNodeStore does not uses BlobStore by default. Instead all the
>binary content is stored as part of segment data itself.
Ok, I see. I think can follow this when writing binaries using
SegmentNodeStore.createBlob(). But from looking at
SegmentNodeStore.getBlob(), I would expect it to fail if no blob store is
set. And apparently, SegmentNodeStore.getBlob() does not seem to be used
when reading binaries through JCR. I don't know how that works, need to
have a closer look first.

>Sofollowing
>points can be noted for BlobStore
>
>1. SegmentNodeStore does not require BlobStore by default
>2. DocumentNodeStore uses MongoBlobStore by default
>3. Both can be configured to use a BlobStore via OSGi config
>
>>* I was only able to find the FileBlobStoreService that registers the
>> FileBlobStore as an OSGi service. I was not able to find more BlobStore
>> implementations to be exposed in OSGi. Are there any more? And how about
>> the MongoBlobStore in particular?
>
>MongoBlobStore is not configured as an explicit service instead is
>used as the default fallback option if no other BlobStore is
>configured. As it just requires Mongo connection detail, it is
>currently configured along with MongoDocumentStore in
>DocumentNodeStore
Ok understand, makes sense.

>
>There is AbstractDataStoreService which wraps JR2 DataStore as
>BlobStore and configures and registers them with OSGi. it currently
>support FileDataStore and S3DataStore.
>
>Note that FileDataStore is currently preferred over FileBlobStore
Ok. I see that FileDataStore is as well exposed as BlobStore service using
the DataStoreBlobStore wrapper.

>
>> The DocumentNodeStoreService references the  same blob store service as
>> the SegmentNodeStoreService. As I'm not able to find the MongoBlobStore
>> exposed as service, does that mean the DocumentNodeStore uses the
>> FileBlobStore
>
>No. The MongoBlobStore is configured implicitly in
>org.apache.jackrabbit.oak.plugins.document.DocumentMK.Builder#setMongoDB(c
>om.mongodb.DB,
>int). So unless a BlobStore is explicitly configured DocumentNodeStore
>would use MongoBlobStore.
>
>> Both, the SegmentNodeStoreService and the DocumentNodeStoreService
>> appear to check for 'custom blob store' property but both components do
>> not expose such a property? And how would they select from a specific
>> BlobStore service?
>
>Here there is an assumption that system has only one BlobStore
>registered with OSGi Service Registry. If multiple BlobStore services
>are registered then you can possibly specify a specific one by
>configuring the 'blobStore.target' to the required OSGi service filter
>(DS 112.6 of OSGi Compedium)
Assuming same is true for NodeStore services.

Thanks a lot. 

Regards
Marc

>
>Chetan Mehrotra



Re: NodeStore and BlobStore configurations in OSGi

2014-05-19 Thread Chetan Mehrotra
On Mon, May 19, 2014 at 3:29 PM, Marc Pfaff  wrote:
> For SegmentNodeStore my research
> ends up in FileBlobStore and for the DocumentNodeStore it appears to be
> the MongoBlobStore. Is that correct?

SegementNodeStore does not uses BlobStore by default. Instead all the
binary content is stored as part of segment data itself. Sofollowing
points can be noted for BlobStore

1. SegmentNodeStore does not require BlobStore by default
2. DocumentNodeStore uses MongoBlobStore by default
3. Both can be configured to use a BlobStore via OSGi config

>* I was only able to find the FileBlobStoreService that registers the
> FileBlobStore as an OSGi service. I was not able to find more BlobStore
> implementations to be exposed in OSGi. Are there any more? And how about
> the MongoBlobStore in particular?

MongoBlobStore is not configured as an explicit service instead is
used as the default fallback option if no other BlobStore is
configured. As it just requires Mongo connection detail, it is
currently configured along with MongoDocumentStore in
DocumentNodeStore

There is AbstractDataStoreService which wraps JR2 DataStore as
BlobStore and configures and registers them with OSGi. it currently
support FileDataStore and S3DataStore.

Note that FileDataStore is currently preferred over FileBlobStore

> The DocumentNodeStoreService references the  same blob store service as
> the SegmentNodeStoreService. As I'm not able to find the MongoBlobStore
> exposed as service, does that mean the DocumentNodeStore uses the
> FileBlobStore

No. The MongoBlobStore is configured implicitly in
org.apache.jackrabbit.oak.plugins.document.DocumentMK.Builder#setMongoDB(com.mongodb.DB,
int). So unless a BlobStore is explicitly configured DocumentNodeStore
would use MongoBlobStore.

> Both, the SegmentNodeStoreService and the DocumentNodeStoreService
> appear to check for 'custom blob store' property but both components do
> not expose such a property? And how would they select from a specific
> BlobStore service?

Here there is an assumption that system has only one BlobStore
registered with OSGi Service Registry. If multiple BlobStore services
are registered then you can possibly specify a specific one by
configuring the 'blobStore.target' to the required OSGi service filter
(DS 112.6 of OSGi Compedium)

Chetan Mehrotra


NodeStore and BlobStore configurations in OSGi

2014-05-19 Thread Marc Pfaff
Hi all

I try to understand how the different 'store' API' s and implementations
are working together, in order  to understand the different repository
configuration options. Browsing thought the code I think i understand most
of it, but have some questions left, mainly related to the BlobStore API.

* I try to find out about the default BlobStore implementations used for
SegmentNodeStore and DocumentNodeStore. For SegmentNodeStore my research
ends up in FileBlobStore and for the DocumentNodeStore it appears to be
the MongoBlobStore. Is that correct?

BlobStore API in an OSGi deployment:

* I was only able to find the FileBlobStoreService that registers the
FileBlobStore as an OSGi service. I was not able to find more BlobStore
implementations to be exposed in OSGi. Are there any more? And how about
the MongoBlobStore in particular?

* The SegmentNodeStoreService uses the registered BlobStore service, and
as so far only the FileBlobStore is exposed as a service, it uses the
FileBlobStore. But the reference to the BlobStore service is
OPTIONAL_UNARY. How is the right blob store selected if multiple blob
store services are registered?

* The DocumentNodeStoreService references the  same blob store service as
the SegmentNodeStoreService. As I'm not able to find the MongoBlobStore
exposed as service, does that mean the DocumentNodeStore uses the
FileBlobStore?

* Both, the SegmentNodeStoreService and the DocumentNodeStoreService
appear to check for 'custom blob store' property but both components do
not expose such a property? And how would they select from a specific
BlobStore service?

Kind regards

Marc

--

Marc Pfaff | Developer | Adobe Research (Schweiz) AG | www.adobe.com |
pfa...@adobe.com 









Re: svn commit: r1587286 - in /jackrabbit/oak/trunk: oak-core/pom.xml oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreService.java oak-parent/pom.xml

2014-05-19 Thread Chetan Mehrotra
For the record I have implemented a DataSource provider bundle [2]
(based on above flow) as part of SLING-3574. That bundle can be used
to configure a DataSource in OSGi env

Chetan Mehrotra
[1] https://issues.apache.org/jira/browse/SLING-3574
[2] https://github.com/chetanmeh/sling-datasource

On Tue, Apr 15, 2014 at 12:30 PM, Chetan Mehrotra
 wrote:
>> Register a DataSource where?
>
> DataSource would be registered with OSGi ServiceRegistery
>
>> Does this work in an OSGi context?
>
> Yes it should work in OSGi context. Would try to implement the
> approach by end of week if time permits
>
>> How does it get the DataSource? Per JNDI?
>
> The DataSource would be obtained from OSGi service registry just like
> it currently obtains the BlobStore instance
> Chetan Mehrotra
>
>
> On Tue, Apr 15, 2014 at 12:00 PM, Julian Reschke  
> wrote:
>> On 2014-04-15 06:10, Chetan Mehrotra wrote:
>>>
>>> Hi Julian,
>>>
>>> On Tue, Apr 15, 2014 at 12:39 AM,   wrote:

 -
 commons-dbcp,commons-pool,h2,json-simple
 +
 commons-dbcp,commons-pool,h2,json-simple,postgresql,db2,db2-license
   true
>>>
>>>
>>> I believe this is a temporary change and would not be required for
>>> final implementation? Would be helpful if we add a TODO/FIXME there
>>> such that we remember to remove this later
>>
>>
>> OK.
>>
>>
>>> Instead of embedding all such types of drivers/dbcp/pool etc within
>>> oak-core it would be better to decouple them. For example one approach
>>> can be
>>>
>>> 1. Have a bundle which embeds common-dbcp and required dependencies.
>>> It would be responsible for registering a DataSource
>>
>>
>> Register a DataSource where?
>>
>>
>>> 2. Driver bundle would be fragments to the bundle #1 as host. With
>>> JDBC 4.0 the Driver classes are provided as part of
>>> META-INF/services/java.sql.Driver [1]. For such cases fragment bundles
>>> can be avoided by having #1 monitor for such drivers and register them
>>> programatically
>>
>>
>> Does this work in an OSGi context?
>>
>>
>>> 3. DocumentNodeStoreService should only have a reference to DataSource
>>> and use that
>>
>>
>> How does it get the DataSource? Per JNDI?
>>
>> Best regards, Julian
>>


Re: oak-users list (was: Re: [VOTE] Release Apache Jackrabbit Oak 1.0.0)

2014-05-19 Thread Angela Schreiber
fine with me

On 19/05/14 10:41, "Michael Dürig"  wrote:

>
>
>On 19.5.14 10:17 , Jukka Zitting wrote:
>> Hi,
>>
>> On Mon, May 12, 2014 at 9:03 AM, Torgeir Veimo
>> wrote:
>>> Is there to be an oak-user mailing list, or should one use the
>>> jackrabbit users mailing list for discussion on deployments?
>>
>> Not yet. You can use either the Jackrabbit users list or this mailing
>> list for Oak-related questions.
>
>I suggest we direct people to the Jackrabbit users list instead of
>creating a Oak users list. The traffic on that list is pretty low anyway
>and creating another list would probably cause too much fragmentation.
>
>Michael
>
>
>>
>> BR,
>>
>> Jukka Zitting
>>



oak-users list (was: Re: [VOTE] Release Apache Jackrabbit Oak 1.0.0)

2014-05-19 Thread Michael Dürig



On 19.5.14 10:17 , Jukka Zitting wrote:

Hi,

On Mon, May 12, 2014 at 9:03 AM, Torgeir Veimo  wrote:

Is there to be an oak-user mailing list, or should one use the
jackrabbit users mailing list for discussion on deployments?


Not yet. You can use either the Jackrabbit users list or this mailing
list for Oak-related questions.


I suggest we direct people to the Jackrabbit users list instead of 
creating a Oak users list. The traffic on that list is pretty low anyway 
and creating another list would probably cause too much fragmentation.


Michael




BR,

Jukka Zitting



Re: [VOTE] Release Apache Jackrabbit Oak 1.0.0

2014-05-19 Thread Jukka Zitting
Hi,

On Mon, May 12, 2014 at 9:03 AM, Torgeir Veimo  wrote:
> Is there to be an oak-user mailing list, or should one use the
> jackrabbit users mailing list for discussion on deployments?

Not yet. You can use either the Jackrabbit users list or this mailing
list for Oak-related questions.

BR,

Jukka Zitting


[RESULT] [VOTE] Release Apache Jackrabbit Oak 1.0.0

2014-05-19 Thread Jukka Zitting
Hi,

On Thu, May 8, 2014 at 10:07 PM, Jukka Zitting  wrote:
> Please vote on releasing this package as Apache Jackrabbit Oak 1.0.0.
> The vote is open for the next 72 hours and passes if a majority of at
> least three +1 Jackrabbit PMC votes are cast.

The vote passes as follows:

+1 Alex Parvulescu
+1 Angela Schreiber
+1 Chetan Mehrotra
+1 Claus Köll
+1 Davide Giannella
+1 Jukka Zitting
+1 Julian Reschke
+1 Marcel Reutegger
+1 Michael Dürig
+1 Thomas Müller
+1 Tommaso Teofili

Thanks for voting! I'll push the release out.

BR,

Jukka Zitting


oak-dev heap size for integration testing

2014-05-19 Thread Davide Giannella
Hello team,

as part of the pull request[0] for OAK-1570[1] there's an integration
test that doesn't fail any more on my local but requires more heap[3].

(0) https://github.com/apache/jackrabbit-oak/pull/20
(1) https://issues.apache.org/jira/browse/OAK-1570
(3) https://travis-ci.org/apache/jackrabbit-oak/builds/25320228

What's the policy around it? Can someone push more heap for the ITs? On
my local I was running with Xmx2048 but most probably it could be lower.
I simply dumped a high enough number.

D.