Author: shijh
Date: Wed Feb 17 07:32:08 2016
New Revision: 1730790
URL: http://svn.apache.org/viewvc?rev=1730790&view=rev
Log:
OFBIZ-6715 Solr rebuild problem.
Changes are:
1. Comment out solr eecas.xml as it's duplicated to ecas in eecas_product.xml.
2. Add default-value="solrdefault" to indexName of addToSolr service.
3. Replace some tabs with spaces.
Modified:
ofbiz/trunk/specialpurpose/solr/entitydef/eecas.xml
ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/schema.xml
ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/solrconfig.xml
ofbiz/trunk/specialpurpose/solr/servicedef/solrservices.xml
ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/SolrUtil.java
Modified: ofbiz/trunk/specialpurpose/solr/entitydef/eecas.xml
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/entitydef/eecas.xml?rev=1730790&r1=1730789&r2=1730790&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/solr/entitydef/eecas.xml (original)
+++ ofbiz/trunk/specialpurpose/solr/entitydef/eecas.xml Wed Feb 17 07:32:08 2016
@@ -29,7 +29,7 @@ xsi:noNamespaceSchemaLocation="http://of
See documentation for issues regarding implementation and
context-specific issues
(such as data loading/install).
-->
-
+ <!--
<eca entity="Product" operation="create-store" event="return">
<action service="addToSolr" mode="sync" value-attr="instance"/>
</eca>
@@ -48,7 +48,7 @@ xsi:noNamespaceSchemaLocation="http://of
<condition operator="equals" field-name="productPriceTypeId"
value="DEFAULT_PRICE"/>
<action service="addToSolr" mode="sync" value-attr="instance"/>
</eca>
-
+ -->
<!-- (Insert any needed additional ECAs here) -->
</entity-eca>
\ No newline at end of file
Modified: ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/schema.xml
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/schema.xml?rev=1730790&r1=1730789&r2=1730790&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/schema.xml (original)
+++ ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/schema.xml Wed Feb 17
07:32:08 2016
@@ -303,10 +303,10 @@
<copyField source="manu" dest="manu_exact"/>
<!-- Above, multiple source fields are copied to the [text] field.
- Another way to map multiple source fields to the same
- destination field is to use the dynamic field syntax.
- copyField also supports a maxChars to copy setting. -->
-
+ Another way to map multiple source fields to the same
+ destination field is to use the dynamic field syntax.
+ copyField also supports a maxChars to copy setting. -->
+
<!-- <copyField source="*_t" dest="text" maxChars="3000"/> -->
<!-- copy name to alphaNameSort, a field designed for sorting by name -->
@@ -333,8 +333,8 @@
<!-- sortMissingLast and sortMissingFirst attributes are optional
attributes are
currently supported on types that are sorted internally as strings
and on numeric types.
- This includes "string","boolean", and, as of 3.5 (and 4.x),
- int, float, long, date, double, including the "Trie" variants.
+ This includes "string","boolean", and, as of 3.5 (and 4.x),
+ int, float, long, date, double, including the "Trie" variants.
- If sortMissingLast="true", then a sort on this field will cause
documents
without the field to come after documents with the field,
regardless of the requested sort order (asc or desc).
@@ -454,9 +454,9 @@
<!-- A general text field that has reasonable, generic
cross-language defaults: it tokenizes with StandardTokenizer,
- removes stop words from case-insensitive "stopwords.txt"
- (empty by default), and down cases. At query time only, it
- also applies synonyms. -->
+ removes stop words from case-insensitive "stopwords.txt"
+ (empty by default), and down cases. At query time only, it
+ also applies synonyms. -->
<fieldType name="text_general" class="solr.TextField"
positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
@@ -492,11 +492,11 @@
words="lang/stopwords_en.txt"
/>
<filter class="solr.LowerCaseFilterFactory"/>
- <filter class="solr.EnglishPossessiveFilterFactory"/>
+ <filter class="solr.EnglishPossessiveFilterFactory"/>
<filter class="solr.KeywordMarkerFilterFactory"
protected="protwords.txt"/>
- <!-- Optionally you may want to use this less aggressive stemmer
instead of PorterStemFilterFactory:
+ <!-- Optionally you may want to use this less aggressive stemmer instead
of PorterStemFilterFactory:
<filter class="solr.EnglishMinimalStemFilterFactory"/>
- -->
+ -->
<filter class="solr.PorterStemFilterFactory"/>
</analyzer>
<analyzer type="query">
@@ -507,23 +507,23 @@
words="lang/stopwords_en.txt"
/>
<filter class="solr.LowerCaseFilterFactory"/>
- <filter class="solr.EnglishPossessiveFilterFactory"/>
+ <filter class="solr.EnglishPossessiveFilterFactory"/>
<filter class="solr.KeywordMarkerFilterFactory"
protected="protwords.txt"/>
- <!-- Optionally you may want to use this less aggressive stemmer
instead of PorterStemFilterFactory:
+ <!-- Optionally you may want to use this less aggressive stemmer instead
of PorterStemFilterFactory:
<filter class="solr.EnglishMinimalStemFilterFactory"/>
- -->
+ -->
<filter class="solr.PorterStemFilterFactory"/>
</analyzer>
</fieldType>
<!-- A text field with defaults appropriate for English, plus
- aggressive word-splitting and autophrase features enabled.
- This field is just like text_en, except it adds
- WordDelimiterFilter to enable splitting and matching of
- words on case-change, alpha numeric boundaries, and
- non-alphanumeric chars. This means certain compound word
- cases will work, for example query "wi fi" will match
- document "WiFi" or "wi-fi".
+ aggressive word-splitting and autophrase features enabled.
+ This field is just like text_en, except it adds
+ WordDelimiterFilter to enable splitting and matching of
+ words on case-change, alpha numeric boundaries, and
+ non-alphanumeric chars. This means certain compound word
+ cases will work, for example query "wi fi" will match
+ document "WiFi" or "wi-fi".
-->
<fieldType name="text_en_splitting" class="solr.TextField" positionIncrementGap="100"
autoGeneratePhraseQueries="true">
<analyzer type="index">
@@ -574,7 +574,7 @@
</fieldType>
<!-- Just like text_general except it reverses the characters of
- each token, to enable more efficient leading wildcard queries. -->
+ each token, to enable more efficient leading wildcard queries. -->
<fieldType name="text_general_rev" class="solr.TextField"
positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
@@ -649,10 +649,10 @@
a token of "foo|1.4" would be indexed as "foo" with a payload of 1.4f
Attributes of the DelimitedPayloadTokenFilterFactory :
"delimiter" - a one character delimiter. Default is | (pipe)
- "encoder" - how to encode the following value into a playload
- float -> org.apache.lucene.analysis.payloads.FloatEncoder,
- integer -> o.a.l.a.p.IntegerEncoder
- identity -> o.a.l.a.p.IdentityEncoder
+ "encoder" - how to encode the following value into a playload
+ float -> org.apache.lucene.analysis.payloads.FloatEncoder,
+ integer -> o.a.l.a.p.IntegerEncoder
+ identity -> o.a.l.a.p.IdentityEncoder
Fully Qualified class name implementing PayloadEncoder, Encoder
must have a no arg constructor.
-->
<filter class="solr.DelimitedPayloadTokenFilterFactory"
encoder="float"/>
@@ -673,10 +673,10 @@
-->
<fieldType name="descendent_path" class="solr.TextField">
<analyzer type="index">
- <tokenizer class="solr.PathHierarchyTokenizerFactory" delimiter="/" />
+ <tokenizer class="solr.PathHierarchyTokenizerFactory" delimiter="/" />
</analyzer>
<analyzer type="query">
- <tokenizer class="solr.KeywordTokenizerFactory" />
+ <tokenizer class="solr.KeywordTokenizerFactory" />
</analyzer>
</fieldType>
<!--
@@ -685,10 +685,10 @@
-->
<fieldType name="ancestor_path" class="solr.TextField">
<analyzer type="index">
- <tokenizer class="solr.KeywordTokenizerFactory" />
+ <tokenizer class="solr.KeywordTokenizerFactory" />
</analyzer>
<analyzer type="query">
- <tokenizer class="solr.PathHierarchyTokenizerFactory" delimiter="/" />
+ <tokenizer class="solr.PathHierarchyTokenizerFactory" delimiter="/" />
</analyzer>
</fieldType>
Modified: ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/solrconfig.xml
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/solrconfig.xml?rev=1730790&r1=1730789&r2=1730790&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/solrconfig.xml
(original)
+++ ofbiz/trunk/specialpurpose/solr/home/solrdefault/conf/solrconfig.xml Wed
Feb 17 07:32:08 2016
@@ -1209,7 +1209,7 @@
<!-- maximum threshold of documents a query term can appear to be
considered for correction -->
<float name="maxQueryFrequency">0.01</float>
<!-- uncomment this to require suggestions to occur in 1% of the
documents
- <float name="thresholdTokenFrequency">.01</float>
+ <float name="thresholdTokenFrequency">.01</float>
-->
</lst>
Modified: ofbiz/trunk/specialpurpose/solr/servicedef/solrservices.xml
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/servicedef/solrservices.xml?rev=1730790&r1=1730789&r2=1730790&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/solr/servicedef/solrservices.xml (original)
+++ ofbiz/trunk/specialpurpose/solr/servicedef/solrservices.xml Wed Feb 17
07:32:08 2016
@@ -41,7 +41,7 @@ under the License.
invoke="addToSolr" debug="true" validate="true">
<description>Adds product to solr, with product denoted by productId
field in instance attribute
- intended for use with ECAs/SECAs</description>
- <attribute mode="IN" name="indexName" optional="false" type="String"/>
+ <attribute mode="IN" name="indexName" optional="false" type="String"
default-value="solrdefault"/>
<attribute mode="IN" name="instance" optional="false"
type="org.ofbiz.entity.GenericValue" />
</service>
Modified: ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/SolrUtil.java
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/SolrUtil.java?rev=1730790&r1=1730789&r2=1730790&view=diff
==============================================================================
--- ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/SolrUtil.java (original)
+++ ofbiz/trunk/specialpurpose/solr/src/org/ofbiz/solr/SolrUtil.java Wed Feb 17
07:32:08 2016
@@ -84,7 +84,7 @@ public final class SolrUtil {
// empty constructor
}
- public static String makeSolrWebappUrl() {
+ public static String makeSolrWebappUrl() {
final String solrWebappProtocol =
UtilProperties.getPropertyValue(solrConfigName, "solr.webapp.protocol");
final String solrWebappDomainName =
UtilProperties.getPropertyValue(solrConfigName, "solr.webapp.domainName");
final String solrWebappPath = UtilProperties.getPropertyValue(solrConfigName,
"solr.webapp.path");
@@ -101,33 +101,33 @@ public final class SolrUtil {
}
private static Integer getSocketTimeout() {
- if (UtilValidate.isNotEmpty(socketTimeoutString)) {
- try {
- return Integer.parseInt(socketTimeoutString);
+ if (UtilValidate.isNotEmpty(socketTimeoutString)) {
+ try {
+ return Integer.parseInt(socketTimeoutString);
} catch (Exception e) {
return null;
}
- }
- return null;
- }
-
- private static Integer getConnectionTimeout() {
- if (UtilValidate.isNotEmpty(connectionTimeoutString)) {
- try {
- return
Integer.parseInt(connectionTimeoutString);
+ }
+ return null;
+ }
+
+ private static Integer getConnectionTimeout() {
+ if (UtilValidate.isNotEmpty(connectionTimeoutString)) {
+ try {
+ return Integer.parseInt(connectionTimeoutString);
} catch (Exception e) {
return null;
}
- }
- return null;
- }
-
- private static boolean getTrustSelfSignedCert() {
- if ("true".equals(trustSelfSignedCertString)) {
- return true;
- }
- return false;
- }
+ }
+ return null;
+ }
+
+ private static boolean getTrustSelfSignedCert() {
+ if ("true".equals(trustSelfSignedCertString)) {
+ return true;
+ }
+ return false;
+ }
public static boolean isSolrEcaEnabled() {
Boolean ecaEnabled = null;
@@ -327,30 +327,30 @@ public final class SolrUtil {
CloseableHttpClient httpClient = null;
if (trustSelfSignedCert) {
- httpClient = getAllowAllHttpClient();
+ httpClient = getAllowAllHttpClient();
} else {
- httpClient = HttpClients.createDefault();
+ httpClient = HttpClients.createDefault();
}
RequestConfig requestConfig = null;
if (UtilValidate.isNotEmpty(socketTimeout) &&
UtilValidate.isNotEmpty(connectionTimeout)) {
- requestConfig = RequestConfig.custom()
+ requestConfig = RequestConfig.custom()
.setSocketTimeout(socketTimeout)
.setConnectTimeout(connectionTimeout)
.setRedirectsEnabled(true)
.build();
} else if (UtilValidate.isNotEmpty(socketTimeout)) {
- requestConfig = RequestConfig.custom()
+ requestConfig = RequestConfig.custom()
.setSocketTimeout(socketTimeout)
.setRedirectsEnabled(true)
.build();
} else if (UtilValidate.isNotEmpty(connectionTimeout)) {
- requestConfig = RequestConfig.custom()
+ requestConfig = RequestConfig.custom()
.setConnectTimeout(connectionTimeout)
.setRedirectsEnabled(true)
.build();
} else {
- requestConfig = RequestConfig.custom()
+ requestConfig = RequestConfig.custom()
.setRedirectsEnabled(true)
.build();
}