Return-Path: X-Original-To: apmail-jackrabbit-oak-dev-archive@minotaur.apache.org Delivered-To: apmail-jackrabbit-oak-dev-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id BC519104C3 for ; Tue, 22 Oct 2013 14:39:13 +0000 (UTC) Received: (qmail 18058 invoked by uid 500); 22 Oct 2013 14:39:13 -0000 Delivered-To: apmail-jackrabbit-oak-dev-archive@jackrabbit.apache.org Received: (qmail 18027 invoked by uid 500); 22 Oct 2013 14:39:12 -0000 Mailing-List: contact oak-dev-help@jackrabbit.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: oak-dev@jackrabbit.apache.org Delivered-To: mailing list oak-dev@jackrabbit.apache.org Received: (qmail 18019 invoked by uid 99); 22 Oct 2013 14:39:12 -0000 Received: from minotaur.apache.org (HELO minotaur.apache.org) (140.211.11.9) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 22 Oct 2013 14:39:12 +0000 Received: from localhost (HELO mail-qc0-f170.google.com) (127.0.0.1) (smtp-auth username cziegeler, mechanism plain) by minotaur.apache.org (qpsmtpd/0.29) with ESMTP; Tue, 22 Oct 2013 14:39:12 +0000 Received: by mail-qc0-f170.google.com with SMTP id n9so5432221qcw.29 for ; Tue, 22 Oct 2013 07:39:11 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=oKvjQbNhdGyIoBmfrIKknzztm3Lva7883nlFWLDcIRI=; b=RnTpQCDQYz0nDf3lNa0oXmfyNlVkqoW+cLHp0tejLrSaeIjl4ZfqrqiN1uHGs7Gm5f tzFl9cE2CVU1d+VHeoO9WOf7TivSbyIB3ON8sPalgE+nlFLjUlbqZNL7C63PR5g8Gh9k aWIqR0a3GBNLqWffAarTn62Lfv+IzqFCg+9OhrlhblnaIRsvybVBcUjxnrPMChNV60ZZ 3xQgC7g+eUS+RhFGgpG8cSv6G1OUgdXNvFFpKzLU1heshfCgOGncHhSxHYQFyAdjCFSX wMC1Nh3Y5A1NIxnfdmJWZBy2/rZtCCdEI18ysqGXCZSfJjud2grF/f06GMYb37kXEW1T E7QA== MIME-Version: 1.0 X-Received: by 10.224.98.200 with SMTP id r8mr31207722qan.26.1382452751120; Tue, 22 Oct 2013 07:39:11 -0700 (PDT) Received: by 10.96.145.137 with HTTP; Tue, 22 Oct 2013 07:39:11 -0700 (PDT) In-Reply-To: References: <4EB438BF-5A8E-42C9-8979-A15B6C188896@adobe.com> <09E6F8AA-776D-49FA-A546-63A958FD2F84@adobe.com> Date: Tue, 22 Oct 2013 16:39:11 +0200 Message-ID: Subject: Re: Oak JCR Observation scalability aspects and concerns From: Carsten Ziegeler To: oak-dev@jackrabbit.apache.org Content-Type: multipart/alternative; boundary=089e01536b7c26460904e9555d65 --089e01536b7c26460904e9555d65 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Just to reiterate :) if we go with 3 or 4, someone has to do the work in Sling (and other places) and adapt the code. As obviously as soon as a single listener is using the old pattern, the whole mechanism is mood. Carsten 2013/10/22 Dominik S=FC=DF > +1 on 4 since I fear 3 will create some overhead for existing solutions > that won't need this kind of scalabilty (and therefore create uncessary > efforts for migration). This is the old "compat" pattern seen so often. > > IMHO this should be an extension that "can" be installed but is not > available by default (to force devs to decide on that but being lazy and > not care about deprecation). > > > On Tue, Oct 22, 2013 at 4:30 PM, Carsten Ziegeler >wrote: > > > I really would like to have a constructive discussion here. I think the > > Sling use case is pretty well explained now - that's an api Sling offer= s > > and which is used by a lot of code out there (a great part of Sling is > > based on the OSGi events and layers on top of Sling are using it as > well). > > That's a fact and it's also a fact that listeners for the OSGi event > > usually listener for all events. > > > > Now basically we have three/four options: > > 1. we leave everything as is - it works but might be slow with larger > > installations and heavy writes > > 2. we maintain the API as-is in Sling and try to make the implementatio= n > as > > fast as possible > > 3. we break compatibility in Sling, find a better solution, rewrite par= ts > > of Sling and require all downstream users to rewrite their stuff > > well, the fourth option would be > > 4. same as 3. but keep the old Sling API with a bold marker when it's > used > > that this does not scale > > > > For the sake of compatibility I really would like to go with 2 which > might > > require changes in Sling and Oak but sounds to me as the best compromis= e. > > In addition, it really would help the discussion if we would have > > performance tests showing us the real boundaries in terms of scalabilit= y > > with observation with some real figures. > > > > Thanks > > Carsten > > -- > > Carsten Ziegeler > > cziegeler@apache.org > > > --=20 Carsten Ziegeler cziegeler@apache.org --089e01536b7c26460904e9555d65--