Hi Robert,
Very much appreciate the guidance here.
After another day of RTFM’ing, some followup questions.

From: Robert Munteanu <[email protected]<mailto:[email protected]>>
Reply-To: "[email protected]<mailto:[email protected]>" 
<[email protected]<mailto:[email protected]>>
Date: Friday, December 12, 2014 at 2:15 AM
To: "[email protected]<mailto:[email protected]>" 
<[email protected]<mailto:[email protected]>>
Subject: Re: Production ready deployment options for a sling JCR?

Hi Bruce,

On Thu, 2014-12-11 at 21:15 +0000, Bruce Edge wrote:
1. Is the combination of sling/jackbabbit released in any production ready
incarnation?
Or, is one expected to use Adobe¹s CQ5 suite for production work?

While I myself work exclusively with CQ in production, I know for a fact
that many use Sling+JCR in production.

Not sure what you mean by 'released in a production ready incarnation'
though.

I suppose that is a naïve question where OSGI is concerned. The question should 
be directed to the release status for each component. It makes more sense now 
as I see it as a set of blocks rather than a monolithic project.
Coming from the monolithic project world that is spring, this is a new 
viewpoint that takes some getting used to.

If you are looking for a launchpad release, people typically
build their own launchpads, based on their needs. I personally would
start with the latest SNAPSHOT launchpad and customise it for my needs.

Does this refer to modifying ./launchpad/builder/src/main/bundles/list.xml to 
contain the desired services?
Still reading up on run modes.

Will this mechanism prevail long term or is the goal to move to something like 
the crankstart launcher, which, as I read, may eliminate the need for run 
modes. [3]


2. What exactly is the JCR under https://github.com/apache/sling.git
trunk?
I see components of each in the source tree:
./launchpad/testing/target/launchpad-bundles/resources/bundles.jackrabbit/1
5:
derby-10.5.3.0_1.jar
org.apache.sling.jcr.jackrabbit.server-2.1.3-SNAPSHOT.jar

For Jackrabbit 2.x we provide a single OSGi bundle wrapping all the
Jackrabbit jars since they don't play nicely with OSGI ( IIRC ). Derby
is also used as the default persistence engine for Jackrabbit.


./launchpad/testing/target/launchpad-bundles/resources/bundles.oak/15:
guava-15.0.jar  oak-blob-1.0.0.jar
oak-commons-1.0.0.jar  oak-core-1.0.0.jar  oak-lucene-1.0.0.jar
oak-mk-1.0.0.jar  oak-mk-api-1.0.0.jar  oak-mk-remote-1.0.0.jar
org.apache.sling.jcr.oak.server-0.0.2-SNAPSHOT.jar

These are the oak jars. We only provide the oak-server bundle, the
others come directly from the Oak project, as they support OSGi.

Is it jackrabbit, or oak?

Note that the two directories you mentioned are specific to different
run modes:

- 'bundles.jackrabbit' -> jackrabbit run mode ( default )
- 'bundles.oak' -> oak

got it.

So, this in the default sling.properties:
sling.run.mode.install.options=jackrabbit,oak
implies that both jackrabbit and oak run modes are to be installed such that 
either is selectable at runtime?


So they won't run at the same time, and by default you get Jackrabbit
2.x .

How does https://github.com/apache/jackrabbit-oak.git fit into sling/trunk?
Or, does one need to use the sling-oak-it-1.7 build, (SLING-2788) to use
oak as the JCR?

See above, we include the jars into the launchpad in the oak run mode.
You need to use -Dsling.run.modes=oak to choose Oak [1]. But that's not
working perfectly yet, which is why we excluded it from the Sling 7
release.

What’s the status of the oak integration in this context? Is there a roadmap 
for this integration work?
Is this tracked in the sling mailing list or elsewhere?

The oak list is probably more relevant here but I feel like it’s a difficult 
time to start a new JCR project now as oak is purported to fix all of 
jackrabbit’s ills, yet is not ready for prime time use.



3. Can sling be configured to use the S3DataStore BloblStore back end?
This is a requirement for us. We need our assets to reside on S3, not EBS.
I²m fine with requiring a MongoMK as well for node storage, but given the
size of the content, we need S3 storage for the bulk of the data.

For Jackrabbit 2.x you can create the sling/jackrabbit/repository.xml
file before starting Sling for the first time [2] and it will use your
configuration instead of the default one.

Cheers,

Robert

[1]:
http://sling.apache.org/documentation/bundles/sling-settings-org-apache-sling-settings.html
[2]:
http://sling.apache.org/documentation/tutorials-how-tos/jackrabbit-persistence.html#reconfiguring-jackrabbit

[3] https://cwiki.apache.org/confluence/display/SLING/Sling+NG+Launcher



Reply via email to