Return-Path: Delivered-To: apmail-lucene-dev-archive@www.apache.org Received: (qmail 3522 invoked from network); 4 May 2010 05:46:01 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 4 May 2010 05:46:01 -0000 Received: (qmail 48390 invoked by uid 500); 4 May 2010 05:46:00 -0000 Delivered-To: apmail-lucene-dev-archive@lucene.apache.org Received: (qmail 48208 invoked by uid 500); 4 May 2010 05:46:00 -0000 Mailing-List: contact dev-help@lucene.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@lucene.apache.org Delivered-To: mailing list dev@lucene.apache.org Received: (qmail 48201 invoked by uid 99); 4 May 2010 05:45:59 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 04 May 2010 05:45:59 +0000 X-ASF-Spam-Status: No, hits=2.2 required=10.0 tests=FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of nick.lothian@gmail.com designates 209.85.223.189 as permitted sender) Received: from [209.85.223.189] (HELO mail-iw0-f189.google.com) (209.85.223.189) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 04 May 2010 05:45:52 +0000 Received: by iwn27 with SMTP id 27so4225031iwn.5 for ; Mon, 03 May 2010 22:45:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:date:message-id :subject:from:to:content-type; bh=EziyXzLdiQxpppEfajZf+tl/aqIrXffqJ4opM1Nb7w4=; b=se+ZHhNE8IUcxlJPaDZGtqnMQyAwdSTHsUOf3TOuF6L1QWMpotm0jRMncLNRgmz7Ce Viw5Z3Y7Ss0cCRKqfo0RH/uu9RJgFLwg6Sceh0QVHzKO6jMZFGxqkaErKVRR2xgIiBvN ZV3M7wy270xofsuO3MpnI96TpfraXsmRVF+pw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=JXu7iTMnU5O02XbE4I1woD9zqpur29qI6oTYr7denztUf1nQxaF7TZpP8Oxsc2Nrpy PpGhnjRf2I8zgHcZGXkCdajtEmwosLmSQ6X5PGE1PsAxtDXDMLiWdi+AtweTNjBRI0x0 h5zkgRrlN1o+16mgDMY6eNpDYVnDr0bbv6xd4= MIME-Version: 1.0 Received: by 10.231.173.144 with SMTP id p16mr1397930ibz.77.1272951930368; Mon, 03 May 2010 22:45:30 -0700 (PDT) Received: by 10.231.16.200 with HTTP; Mon, 3 May 2010 22:45:29 -0700 (PDT) Date: Tue, 4 May 2010 15:15:29 +0930 Message-ID: Subject: Solr on AppEngine - patches? & a question From: Nick Lothian To: dev@lucene.apache.org Content-Type: multipart/alternative; boundary=0016e64ca94ea032e60485be3739 X-Virus-Checked: Checked by ClamAV on apache.org --0016e64ca94ea032e60485be3739 Content-Type: text/plain; charset=ISO-8859-1 I've got Solr working on Google AppEngine (mostly, anyway - it's read only ATM, and I haven't done any stability testing). For those of you who aren't aware, AppEngine doesn't allow file access, while Solr is fairly dependent on file system access for configuration files. Solr allowed me to work around the majority of the file system dependencies (by implementing a custom ResourceLoader etc), but I needed to alter SolrCore.java, SolrResourceLoader.java and SolrDispatchFilter.java Is there any interest in patches to make these classes extensible enough for use in this scenario? Secondly, AppEngine also doesn't allow the creation of threads. This was mostly easy to work around (I created a ExecutorService using the current thread), except for the CountDownLatch locking stuff in the SolrCore constructor: searcherExecutor.submit(new Callable() { public Object call() throws Exception { latch.await(); return null; } }); I don't completely understand what's going on here. My understanding is that it's locking the search executor so that it won't run until all the searchers are correctly initialized, and I'm guessing that SolrCore handles the case where simultaneous requests to the filter come in before initialization is complete somehow. Since I'm running single threaded here, I've worked around that by commenting it out. Is that sufficient or is there a better way? Nick --0016e64ca94ea032e60485be3739 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable
I've got Solr working on Google AppEngine (mostly, anyway - it'= ;s read only ATM, and I haven't done any stability testing).
=
For those of you who aren't aware, AppEngine doesn't= allow file access, while Solr is fairly dependent on file system access fo= r configuration files.

Solr allowed me to work around the majority of the file= system dependencies (by implementing a custom ResourceLoader etc), but I n= eeded to alter SolrCore.java, SolrResourceLoader.java and SolrDispatchFilte= r.java

Is there any interest in patches to make these classes = extensible enough for use in this scenario?

Second= ly, AppEngine also doesn't allow the creation of threads. This was most= ly easy to work around (I created a ExecutorService using the current threa= d), except for the CountDownLatch locking stuff in the SolrCore constructor= :

=A0=A0 =A0 =A0searcherExecutor.submit(new Callable= () {
=A0=A0 =A0 =A0 =A0public Object call() throws Exception {
=A0=A0 =A0 =A0 =A0 =A0latch.await();
=A0=A0 =A0 =A0 =A0 = =A0return null;
=A0=A0 =A0 =A0 =A0}
=A0=A0 =A0 =A0});

I don't completel= y understand what's going on here. My understanding is that it's lo= cking the search executor so that it won't run until all the searchers = are correctly=A0initialized, and I'm guessing that SolrCore handles the= case where=A0simultaneous=A0requests to the filter come in before=A0initia= lization=A0is=A0complete=A0somehow.=A0

Since I'm running single threaded here,=A0I've = worked around that by commenting it out. Is that sufficient or is there a b= etter way?

Nick
--0016e64ca94ea032e60485be3739--