jackrabbit-oak-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From tomm...@apache.org
Subject svn commit: r1448550 [4/6] - in /jackrabbit/oak/trunk: ./ oak-parent/ oak-solr-core/ oak-solr-core/src/ oak-solr-core/src/main/ oak-solr-core/src/main/java/ oak-solr-core/src/main/java/org/ oak-solr-core/src/main/java/org/apache/ oak-solr-core/src/main...
Date Thu, 21 Feb 2013 08:51:32 GMT
Added: jackrabbit/oak/trunk/oak-solr-embedded/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/embedded/EmbeddedSolrConfigurationProvider.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-solr-embedded/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/embedded/EmbeddedSolrConfigurationProvider.java?rev=1448550&view=auto
==============================================================================
--- jackrabbit/oak/trunk/oak-solr-embedded/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/embedded/EmbeddedSolrConfigurationProvider.java
(added)
+++ jackrabbit/oak/trunk/oak-solr-embedded/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/embedded/EmbeddedSolrConfigurationProvider.java
Thu Feb 21 08:51:30 2013
@@ -0,0 +1,37 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.jackrabbit.oak.plugins.index.solr.embedded;
+
+import org.apache.felix.scr.annotations.Component;
+import org.apache.felix.scr.annotations.Service;
+import org.apache.jackrabbit.oak.plugins.index.solr.OakSolrConfiguration;
+import org.apache.jackrabbit.oak.plugins.index.solr.OakSolrConfigurationProvider;
+
+/**
+ * An {@link OakSolrConfigurationProvider} for the embedded Solr server
+ */
+@Component
+@Service(OakSolrConfigurationProvider.class)
+public class EmbeddedSolrConfigurationProvider implements OakSolrConfigurationProvider {
+
+    private final OakSolrConfiguration embeddedConfiguration = new EmbeddedSolrConfiguration();
+
+    @Override
+    public OakSolrConfiguration getConfiguration() {
+        return embeddedConfiguration;
+    }
+}

Propchange: jackrabbit/oak/trunk/oak-solr-embedded/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/embedded/EmbeddedSolrConfigurationProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: jackrabbit/oak/trunk/oak-solr-embedded/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/embedded/EmbeddedSolrServerProvider.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-solr-embedded/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/embedded/EmbeddedSolrServerProvider.java?rev=1448550&view=auto
==============================================================================
--- jackrabbit/oak/trunk/oak-solr-embedded/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/embedded/EmbeddedSolrServerProvider.java
(added)
+++ jackrabbit/oak/trunk/oak-solr-embedded/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/embedded/EmbeddedSolrServerProvider.java
Thu Feb 21 08:51:30 2013
@@ -0,0 +1,147 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.jackrabbit.oak.plugins.index.solr.embedded;
+
+import java.io.File;
+import java.io.IOException;
+import javax.xml.parsers.ParserConfigurationException;
+
+import org.apache.felix.scr.annotations.Activate;
+import org.apache.felix.scr.annotations.Component;
+import org.apache.felix.scr.annotations.Deactivate;
+import org.apache.felix.scr.annotations.Property;
+import org.apache.felix.scr.annotations.Service;
+import org.apache.jackrabbit.oak.plugins.index.solr.OakSolrUtils;
+import org.apache.jackrabbit.oak.plugins.index.solr.SolrServerProvider;
+import org.apache.solr.client.solrj.SolrServer;
+import org.apache.solr.client.solrj.SolrServerException;
+import org.apache.solr.client.solrj.embedded.EmbeddedSolrServer;
+import org.apache.solr.client.solrj.embedded.JettySolrRunner;
+import org.apache.solr.client.solrj.impl.HttpSolrServer;
+import org.apache.solr.core.CoreContainer;
+import org.osgi.service.component.ComponentContext;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.xml.sax.SAXException;
+
+/**
+ * {@link SolrServerProvider} which (spawns if needed and) exposes an embedded Solr server
+ */
+@Component(metatype = true, immediate = true)
+@Service(SolrServerProvider.class)
+public class EmbeddedSolrServerProvider implements SolrServerProvider {
+
+    private final Logger log = LoggerFactory.getLogger(EmbeddedSolrServerProvider.class);
+
+    private static final String SOLR_HOME_PROPERTY_NAME = "solr.solr.home";
+    private static final String DEFAULT_CORE_NAME = "oak";
+    private static final String LOCAL_BASE_URL = "http://127.0.0.1";
+    private static final String CONTEXT = "/solr";
+
+    @Property(value = "/")
+    private static final String SOLR_HOME_PATH = "solr.home.path";
+
+    @Property(value = "8983")
+    private static final String SOLR_HTTP_PORT = "solr.http.port";
+
+    private SolrServer solrServer;
+    private String solrHome;
+    private Integer solrHttpPort;
+
+    @Activate
+    protected void activate(ComponentContext componentContext) throws Exception {
+        solrHome = String.valueOf(componentContext.getProperties().get(SOLR_HOME_PATH));
+        File file = new File(solrHome);
+        if (!file.exists()) {
+            assert file.createNewFile();
+        }
+        solrHttpPort = Integer.valueOf(String.valueOf(componentContext.getProperties().get(SOLR_HTTP_PORT)));
+        // TODO : add the possibility to inject solrconfig and schema files
+    }
+
+    @Deactivate
+    protected void deactivate() throws Exception {
+        solrHome = null;
+        solrHttpPort = null;
+        if (solrServer != null) {
+            solrServer.shutdown();
+            solrServer = null;
+        }
+    }
+
+    @Override
+    public SolrServer getSolrServer() throws Exception {
+        if (solrServer == null) {
+            try {
+                solrServer = initializeWithNewHttpServer();
+            } catch (Exception e2) {
+                log.warn("unable to spawn a new Solr server and initialize the default Solr
HTTP client");
+                try {
+                    solrServer = initializeWithEmbeddedSolrServer();
+                } catch (Exception e3) {
+                    log.warn("unable to initialize embedded Solr client");
+                    throw new IOException("unable to initialize an embedded Solr server",
e2);
+                }
+            }
+            if (solrServer == null) {
+                throw new IOException("could not connect to any embedded Solr server");
+            }
+        }
+        return solrServer;
+    }
+
+    private SolrServer initializeWithNewHttpServer() throws Exception {
+        // try spawning a new Solr server using Jetty and connect to it via HTTP
+        enableSolrCloud(solrHome, DEFAULT_CORE_NAME);
+        JettySolrRunner jettySolrRunner = new JettySolrRunner(solrHome, CONTEXT, solrHttpPort,
"solrconfig.xml", "schema.xml", true);
+        jettySolrRunner.start(true);
+        HttpSolrServer httpSolrServer = new HttpSolrServer(new StringBuilder(LOCAL_BASE_URL)
+                .append(':').append(solrHttpPort).append(CONTEXT).toString());
+        if (OakSolrUtils.checkServerAlive(httpSolrServer)) {
+            return httpSolrServer;
+        } else {
+            throw new IOException("the spawn HTTP Solr server is not alive");
+        }
+
+    }
+
+    private SolrServer initializeWithEmbeddedSolrServer() throws IOException, ParserConfigurationException,
SAXException, SolrServerException {
+        // fallback to creating an in memory bundled Solr instance
+        System.setProperty(SOLR_HOME_PROPERTY_NAME, solrHome);
+        enableSolrCloud(solrHome, DEFAULT_CORE_NAME);
+        CoreContainer.Initializer initializer = new CoreContainer.Initializer();
+        EmbeddedSolrServer embeddedSolrServer = new EmbeddedSolrServer(initializer.initialize(),
DEFAULT_CORE_NAME);
+        if (OakSolrUtils.checkServerAlive(embeddedSolrServer)) {
+            return embeddedSolrServer;
+        } else {
+            throw new IOException("the found embedded Solr server is not alive");
+        }
+
+    }
+
+    private void enableSolrCloud(String solrHome, String coreName) {
+        // TODO : expose such properties via OSGi conf
+        if (System.getProperty("solrcloud") != null && System.getProperty("solrcloud").equals("true"))
{
+            // enable embedded SolrCloud by setting needed params
+            System.setProperty("zkRun", "true");
+//        System.setProperty("bootstrap_conf", "true");
+            System.setProperty("bootstrap_confdir", solrHome + "/" + coreName + "/conf");
+            System.setProperty("collection.configName", "oakconf");
+//        System.setProperty("numShards", "1");
+        }
+    }
+}

Propchange: jackrabbit/oak/trunk/oak-solr-embedded/src/main/java/org/apache/jackrabbit/oak/plugins/index/solr/embedded/EmbeddedSolrServerProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Added: jackrabbit/oak/trunk/oak-solr-embedded/src/main/resources/solr/oak/conf/currency.xml
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-solr-embedded/src/main/resources/solr/oak/conf/currency.xml?rev=1448550&view=auto
==============================================================================
--- jackrabbit/oak/trunk/oak-solr-embedded/src/main/resources/solr/oak/conf/currency.xml (added)
+++ jackrabbit/oak/trunk/oak-solr-embedded/src/main/resources/solr/oak/conf/currency.xml Thu
Feb 21 08:51:30 2013
@@ -0,0 +1,67 @@
+<?xml version="1.0" ?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements.  See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<!-- Example exchange rates file for CurrencyField type named "currency" in example schema
-->
+
+<currencyConfig version="1.0">
+  <rates>
+    <!-- Updated from http://www.exchangerate.com/ at 2011-09-27 -->
+    <rate from="USD" to="ARS" rate="4.333871" comment="ARGENTINA Peso" />
+    <rate from="USD" to="AUD" rate="1.025768" comment="AUSTRALIA Dollar" />
+    <rate from="USD" to="EUR" rate="0.743676" comment="European Euro" />
+    <rate from="USD" to="BRL" rate="1.881093" comment="BRAZIL Real" />
+    <rate from="USD" to="CAD" rate="1.030815" comment="CANADA Dollar" />
+    <rate from="USD" to="CLP" rate="519.0996" comment="CHILE Peso" />
+    <rate from="USD" to="CNY" rate="6.387310" comment="CHINA Yuan" />
+    <rate from="USD" to="CZK" rate="18.47134" comment="CZECH REP. Koruna" />
+    <rate from="USD" to="DKK" rate="5.515436" comment="DENMARK Krone" />
+    <rate from="USD" to="HKD" rate="7.801922" comment="HONG KONG Dollar" />
+    <rate from="USD" to="HUF" rate="215.6169" comment="HUNGARY Forint" />
+    <rate from="USD" to="ISK" rate="118.1280" comment="ICELAND Krona" />
+    <rate from="USD" to="INR" rate="49.49088" comment="INDIA Rupee" />
+    <rate from="USD" to="XDR" rate="0.641358" comment="INTNL MON. FUND SDR" />
+    <rate from="USD" to="ILS" rate="3.709739" comment="ISRAEL Sheqel" />
+    <rate from="USD" to="JPY" rate="76.32419" comment="JAPAN Yen" />
+    <rate from="USD" to="KRW" rate="1169.173" comment="KOREA (SOUTH) Won" />
+    <rate from="USD" to="KWD" rate="0.275142" comment="KUWAIT Dinar" />
+    <rate from="USD" to="MXN" rate="13.85895" comment="MEXICO Peso" />
+    <rate from="USD" to="NZD" rate="1.285159" comment="NEW ZEALAND Dollar" />
+    <rate from="USD" to="NOK" rate="5.859035" comment="NORWAY Krone" />
+    <rate from="USD" to="PKR" rate="87.57007" comment="PAKISTAN Rupee" />
+    <rate from="USD" to="PEN" rate="2.730683" comment="PERU Sol" />
+    <rate from="USD" to="PHP" rate="43.62039" comment="PHILIPPINES Peso" />
+    <rate from="USD" to="PLN" rate="3.310139" comment="POLAND Zloty" />
+    <rate from="USD" to="RON" rate="3.100932" comment="ROMANIA Leu" />
+    <rate from="USD" to="RUB" rate="32.14663" comment="RUSSIA Ruble" />
+    <rate from="USD" to="SAR" rate="3.750465" comment="SAUDI ARABIA Riyal" />
+    <rate from="USD" to="SGD" rate="1.299352" comment="SINGAPORE Dollar" />
+    <rate from="USD" to="ZAR" rate="8.329761" comment="SOUTH AFRICA Rand" />
+    <rate from="USD" to="SEK" rate="6.883442" comment="SWEDEN Krona" />
+    <rate from="USD" to="CHF" rate="0.906035" comment="SWITZERLAND Franc" />
+    <rate from="USD" to="TWD" rate="30.40283" comment="TAIWAN Dollar" />
+    <rate from="USD" to="THB" rate="30.89487" comment="THAILAND Baht" />
+    <rate from="USD" to="AED" rate="3.672955" comment="U.A.E. Dirham" />
+    <rate from="USD" to="UAH" rate="7.988582" comment="UKRAINE Hryvnia" />
+    <rate from="USD" to="GBP" rate="0.647910" comment="UNITED KINGDOM Pound" />
+    
+    <!-- Cross-rates for some common currencies -->
+    <rate from="EUR" to="GBP" rate="0.869914" />  
+    <rate from="EUR" to="NOK" rate="7.800095" />  
+    <rate from="GBP" to="NOK" rate="8.966508" />  
+  </rates>
+</currencyConfig>

Propchange: jackrabbit/oak/trunk/oak-solr-embedded/src/main/resources/solr/oak/conf/currency.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: jackrabbit/oak/trunk/oak-solr-embedded/src/main/resources/solr/oak/conf/protwords.txt
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-solr-embedded/src/main/resources/solr/oak/conf/protwords.txt?rev=1448550&view=auto
==============================================================================
--- jackrabbit/oak/trunk/oak-solr-embedded/src/main/resources/solr/oak/conf/protwords.txt
(added)
+++ jackrabbit/oak/trunk/oak-solr-embedded/src/main/resources/solr/oak/conf/protwords.txt
Thu Feb 21 08:51:30 2013
@@ -0,0 +1,14 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.

Propchange: jackrabbit/oak/trunk/oak-solr-embedded/src/main/resources/solr/oak/conf/protwords.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: jackrabbit/oak/trunk/oak-solr-embedded/src/main/resources/solr/oak/conf/schema.xml
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-solr-embedded/src/main/resources/solr/oak/conf/schema.xml?rev=1448550&view=auto
==============================================================================
--- jackrabbit/oak/trunk/oak-solr-embedded/src/main/resources/solr/oak/conf/schema.xml (added)
+++ jackrabbit/oak/trunk/oak-solr-embedded/src/main/resources/solr/oak/conf/schema.xml Thu
Feb 21 08:51:30 2013
@@ -0,0 +1,145 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements.  See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License.  You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<schema name="minimal" version="1.5">
+    <types>
+        <fieldType name="string" class="solr.StrField"/>
+        <fieldType name="descendent_path" class="solr.TextField">
+            <analyzer type="index">
+                <tokenizer class="solr.PathHierarchyTokenizerFactory" delimiter="/" />
+            </analyzer>
+            <analyzer type="query">
+                <tokenizer class="solr.KeywordTokenizerFactory" />
+            </analyzer>
+        </fieldType>
+        <fieldType name="children_path" class="solr.TextField">
+            <analyzer type="index">
+                <tokenizer class="solr.PathHierarchyTokenizerFactory" delimiter="/" skip="1"
reverse="true" />
+                <filter class="solr.PatternReplaceFilterFactory" pattern="/" replacement=""
replace="all"/>
+            </analyzer>
+            <analyzer type="query">
+                <tokenizer class="solr.KeywordTokenizerFactory" />
+                <filter class="solr.PatternReplaceFilterFactory" pattern="/" replacement=""
replace="all"/>
+            </analyzer>
+        </fieldType>
+        <fieldType name="parent_path" class="solr.TextField">
+            <analyzer type="index">
+                <tokenizer class="solr.KeywordTokenizerFactory" />
+                <filter class="solr.PatternReplaceFilterFactory" pattern="/" replacement=""
replace="all"/>
+            </analyzer>
+            <analyzer type="query">
+                <tokenizer class="solr.PathHierarchyTokenizerFactory" delimiter="/" skip="1"
reverse="true"/>
+                <filter class="solr.PatternReplaceFilterFactory" pattern="/" replacement=""
replace="all"/>
+            </analyzer>
+        </fieldType>
+        <fieldType name="text_keepcase" class="solr.TextField" positionIncrementGap="100">
+            <analyzer type="index">
+                <tokenizer class="solr.StandardTokenizerFactory"/>
+            </analyzer>
+            <analyzer type="query">
+                <tokenizer class="solr.StandardTokenizerFactory"/>
+            </analyzer>
+        </fieldType>
+        <fieldType name="text_general" class="solr.TextField" positionIncrementGap="100">
+            <analyzer type="index">
+                <tokenizer class="solr.StandardTokenizerFactory"/>
+                <filter class="solr.LowerCaseFilterFactory"/>
+            </analyzer>
+            <analyzer type="query">
+                <tokenizer class="solr.StandardTokenizerFactory"/>
+                <filter class="solr.LowerCaseFilterFactory"/>
+            </analyzer>
+        </fieldType>
+
+        <fieldType name="boolean" class="solr.BoolField" sortMissingLast="true"/>
+
+        <fieldType name="int" class="solr.TrieIntField" precisionStep="0" positionIncrementGap="0"/>
+        <fieldType name="float" class="solr.TrieFloatField" precisionStep="0" positionIncrementGap="0"/>
+        <fieldType name="long" class="solr.TrieLongField" precisionStep="0" positionIncrementGap="0"/>
+        <fieldType name="double" class="solr.TrieDoubleField" precisionStep="0" positionIncrementGap="0"/>
+
+        <fieldType name="tint" class="solr.TrieIntField" precisionStep="8" positionIncrementGap="0"/>
+        <fieldType name="tfloat" class="solr.TrieFloatField" precisionStep="8" positionIncrementGap="0"/>
+        <fieldType name="tlong" class="solr.TrieLongField" precisionStep="8" positionIncrementGap="0"/>
+        <fieldType name="tdouble" class="solr.TrieDoubleField" precisionStep="8" positionIncrementGap="0"/>
+        <fieldType name="date" class="solr.TrieDateField" precisionStep="0" positionIncrementGap="0"/>
+
+        <fieldType name="tdate" class="solr.TrieDateField" precisionStep="6" positionIncrementGap="0"/>
+
+        <fieldtype name="binary" class="solr.BinaryField"/>
+
+        <fieldType name="pint" class="solr.IntField"/>
+        <fieldType name="plong" class="solr.LongField"/>
+        <fieldType name="pfloat" class="solr.FloatField"/>
+        <fieldType name="pdouble" class="solr.DoubleField"/>
+        <fieldType name="pdate" class="solr.DateField" sortMissingLast="true"/>
+
+        <fieldType name="point" class="solr.PointType" dimension="2" subFieldSuffix="_d"/>
+
+        <fieldType name="location" class="solr.LatLonType" subFieldSuffix="_coordinate"/>
+
+        <fieldType name="location_rpt" class="solr.SpatialRecursivePrefixTreeFieldType"
+                   geo="true" distErrPct="0.025" maxDistErr="0.000009" units="degrees" />
+
+        <fieldType name="currency" class="solr.CurrencyField" precisionStep="8" defaultCurrency="USD"
currencyConfig="currency.xml" />
+
+    </types>
+    <fields>
+        <field name="path_exact" type="string" indexed="true" stored="true"/>
+        <field name="path_child" type="children_path" indexed="true" stored="false"/>
+        <field name="path_anc" type="parent_path" indexed="true" stored="false"/>
+        <field name="path_des" type="descendent_path" indexed="true" stored="false"/>
+        <field name="catch_all" type="text_general" indexed="true" stored="false" multiValued="true"/>
+        <field name="_version_" type="long" indexed="true" stored="true"/>
+
+        <dynamicField name="*_i"  type="int"    indexed="true"  stored="true"/>
+        <dynamicField name="*_is" type="int"    indexed="true"  stored="true"  multiValued="true"/>
+        <dynamicField name="*_s"  type="string"  indexed="true"  stored="true" />
+        <dynamicField name="*_ss" type="string"  indexed="true"  stored="true" multiValued="true"/>
+        <dynamicField name="*_l"  type="long"   indexed="true"  stored="true"/>
+        <dynamicField name="*_ls" type="long"   indexed="true"  stored="true"  multiValued="true"/>
+        <dynamicField name="*_t"  type="text_general"    indexed="true"  stored="true"/>
+        <dynamicField name="*_txt" type="text_general"   indexed="true"  stored="true"
multiValued="true"/>
+        <dynamicField name="*_b"  type="boolean" indexed="true" stored="true"/>
+        <dynamicField name="*_bs" type="boolean" indexed="true" stored="true"  multiValued="true"/>
+        <dynamicField name="*_f"  type="float"  indexed="true"  stored="true"/>
+        <dynamicField name="*_fs" type="float"  indexed="true"  stored="true"  multiValued="true"/>
+        <dynamicField name="*_d"  type="double" indexed="true"  stored="true"/>
+        <dynamicField name="*_ds" type="double" indexed="true"  stored="true"  multiValued="true"/>
+
+        <dynamicField name="*_coordinate"  type="tdouble" indexed="true"  stored="false"
/>
+
+        <dynamicField name="*_dt"  type="date"    indexed="true"  stored="true"/>
+        <dynamicField name="*_dts" type="date"    indexed="true"  stored="true" multiValued="true"/>
+        <dynamicField name="*_p"  type="location" indexed="true" stored="true"/>
+
+        <dynamicField name="*_ti" type="tint"    indexed="true"  stored="true"/>
+        <dynamicField name="*_tl" type="tlong"   indexed="true"  stored="true"/>
+        <dynamicField name="*_tf" type="tfloat"  indexed="true"  stored="true"/>
+        <dynamicField name="*_td" type="tdouble" indexed="true"  stored="true"/>
+        <dynamicField name="*_tdt" type="tdate"  indexed="true"  stored="true"/>
+
+        <dynamicField name="*_pi"  type="pint"    indexed="true"  stored="true"/>
+        <dynamicField name="*_c"   type="currency" indexed="true"  stored="true"/>
+        <dynamicField name="*" type="text_keepcase" indexed="true" stored="true" multiValued="true"/>
+    </fields>
+    <uniqueKey>path_exact</uniqueKey>
+    <copyField source="path_exact" dest="path_anc"/>
+    <copyField source="path_exact" dest="path_des"/>
+    <copyField source="path_exact" dest="path_child"/>
+    <copyField source="*" dest="catch_all"/>
+</schema>

Propchange: jackrabbit/oak/trunk/oak-solr-embedded/src/main/resources/solr/oak/conf/schema.xml
------------------------------------------------------------------------------
    svn:eol-style = native



Mime
View raw message