This is an automated email from the ASF dual-hosted git repository.

madhan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/atlas.git


The following commit(s) were added to refs/heads/master by this push:
     new 0c1c390dd ATLAS-5073: ensure propertyKey is created before using it 
(#401)
0c1c390dd is described below

commit 0c1c390dd94b6aed05b0386f80c43fb5de5d4566
Author: Madhan Neethiraj <mad...@apache.org>
AuthorDate: Wed Jul 16 08:39:22 2025 -0700

    ATLAS-5073: ensure propertyKey is created before using it (#401)
---
 addons/kafka-bridge/pom.xml                        |  6 --
 .../repository/graph/GraphBackedSearchIndexer.java | 24 ++++++++
 .../store/graph/v2/AtlasAbstractDefStoreV2.java    |  8 +++
 .../store/graph/v2/AtlasEnumDefStoreV2.java        | 55 ++++++++++++++---
 .../store/graph/v2/AtlasStructDefStoreV2.java      | 71 ++++++++++++++++------
 .../resources/solr/core-template/solrconfig.xml    |  2 +-
 6 files changed, 133 insertions(+), 33 deletions(-)

diff --git a/addons/kafka-bridge/pom.xml b/addons/kafka-bridge/pom.xml
index 1f0f54eab..ba4923000 100644
--- a/addons/kafka-bridge/pom.xml
+++ b/addons/kafka-bridge/pom.xml
@@ -342,12 +342,6 @@
                             </resources>
                         </configuration>
                     </execution>
-                </executions>
-            </plugin>
-
-            <plugin>
-                <artifactId>maven-resources-plugin</artifactId>
-                <executions>
                     <execution>
                         <id>copy-solr-resources</id>
                         <goals>
diff --git 
a/repository/src/main/java/org/apache/atlas/repository/graph/GraphBackedSearchIndexer.java
 
b/repository/src/main/java/org/apache/atlas/repository/graph/GraphBackedSearchIndexer.java
index 4512ac63d..3abb3db3f 100755
--- 
a/repository/src/main/java/org/apache/atlas/repository/graph/GraphBackedSearchIndexer.java
+++ 
b/repository/src/main/java/org/apache/atlas/repository/graph/GraphBackedSearchIndexer.java
@@ -90,6 +90,8 @@ import static 
org.apache.atlas.model.typedef.AtlasBaseTypeDef.ATLAS_TYPE_INT;
 import static org.apache.atlas.model.typedef.AtlasBaseTypeDef.ATLAS_TYPE_LONG;
 import static org.apache.atlas.model.typedef.AtlasBaseTypeDef.ATLAS_TYPE_SHORT;
 import static 
org.apache.atlas.model.typedef.AtlasBaseTypeDef.ATLAS_TYPE_STRING;
+import static 
org.apache.atlas.repository.Constants.ATTRIBUTE_INDEX_PROPERTY_KEY;
+import static org.apache.atlas.repository.Constants.ATTRIBUTE_KEY_PROPERTY_KEY;
 import static org.apache.atlas.repository.Constants.BACKING_INDEX;
 import static 
org.apache.atlas.repository.Constants.CLASSIFICATION_EDGE_IS_PROPAGATED_PROPERTY_KEY;
 import static 
org.apache.atlas.repository.Constants.CLASSIFICATION_EDGE_NAME_PROPERTY_KEY;
@@ -121,6 +123,11 @@ import static 
org.apache.atlas.repository.Constants.PROPAGATED_TRAIT_NAMES_PROPE
 import static 
org.apache.atlas.repository.Constants.PROPERTY_KEY_AUDIT_REDUCTION_NAME;
 import static 
org.apache.atlas.repository.Constants.PROPERTY_KEY_INDEX_RECOVERY_NAME;
 import static org.apache.atlas.repository.Constants.PROVENANCE_TYPE_KEY;
+import static 
org.apache.atlas.repository.Constants.RELATIONSHIPTYPE_CATEGORY_KEY;
+import static org.apache.atlas.repository.Constants.RELATIONSHIPTYPE_END1_KEY;
+import static org.apache.atlas.repository.Constants.RELATIONSHIPTYPE_END2_KEY;
+import static org.apache.atlas.repository.Constants.RELATIONSHIPTYPE_LABEL_KEY;
+import static 
org.apache.atlas.repository.Constants.RELATIONSHIPTYPE_TAG_PROPAGATION_KEY;
 import static 
org.apache.atlas.repository.Constants.RELATIONSHIP_GUID_PROPERTY_KEY;
 import static 
org.apache.atlas.repository.Constants.RELATIONSHIP_TYPE_PROPERTY_KEY;
 import static org.apache.atlas.repository.Constants.STATE_PROPERTY_KEY;
@@ -131,8 +138,13 @@ import static 
org.apache.atlas.repository.Constants.TASK_STATUS;
 import static org.apache.atlas.repository.Constants.TASK_TYPE_PROPERTY_KEY;
 import static org.apache.atlas.repository.Constants.TIMESTAMP_PROPERTY_KEY;
 import static org.apache.atlas.repository.Constants.TRAIT_NAMES_PROPERTY_KEY;
+import static 
org.apache.atlas.repository.Constants.TYPEDESCRIPTION_PROPERTY_KEY;
 import static org.apache.atlas.repository.Constants.TYPENAME_PROPERTY_KEY;
+import static org.apache.atlas.repository.Constants.TYPEOPTIONS_PROPERTY_KEY;
 import static 
org.apache.atlas.repository.Constants.TYPESERVICETYPE_PROPERTY_KEY;
+import static org.apache.atlas.repository.Constants.TYPEVERSION_PROPERTY_KEY;
+import static org.apache.atlas.repository.Constants.TYPE_CATEGORY_PROPERTY_KEY;
+import static org.apache.atlas.repository.Constants.VERSION_PROPERTY_KEY;
 import static org.apache.atlas.repository.Constants.VERTEX_INDEX;
 import static org.apache.atlas.repository.Constants.VERTEX_TYPE_PROPERTY_KEY;
 import static org.apache.atlas.repository.graphdb.AtlasCardinality.LIST;
@@ -631,9 +643,21 @@ public class GraphBackedSearchIndexer implements 
SearchIndexer, ActiveStateChang
             // create fulltext indexes
             createFullTextIndex(management, ENTITY_TEXT_PROPERTY_KEY, 
String.class, SINGLE);
 
+            createPropertyKey(management, TYPE_CATEGORY_PROPERTY_KEY, 
String.class, SINGLE);
+            createPropertyKey(management, TYPEDESCRIPTION_PROPERTY_KEY, 
String.class, SINGLE);
+            createPropertyKey(management, TYPEVERSION_PROPERTY_KEY, 
String.class, SINGLE);
+            createPropertyKey(management, VERSION_PROPERTY_KEY, Long.class, 
SINGLE);
+            createPropertyKey(management, TYPEOPTIONS_PROPERTY_KEY, 
String.class, SINGLE);
             createPropertyKey(management, IS_PROXY_KEY, Boolean.class, SINGLE);
             createPropertyKey(management, PROVENANCE_TYPE_KEY, Integer.class, 
SINGLE);
             createPropertyKey(management, HOME_ID_KEY, String.class, SINGLE);
+            createPropertyKey(management, ATTRIBUTE_INDEX_PROPERTY_KEY, 
Integer.class, SINGLE);
+            createPropertyKey(management, ATTRIBUTE_KEY_PROPERTY_KEY, 
String.class, SINGLE);
+            createPropertyKey(management, RELATIONSHIPTYPE_END1_KEY, 
String.class, SINGLE);
+            createPropertyKey(management, RELATIONSHIPTYPE_END2_KEY, 
String.class, SINGLE);
+            createPropertyKey(management, RELATIONSHIPTYPE_CATEGORY_KEY, 
String.class, SINGLE);
+            createPropertyKey(management, RELATIONSHIPTYPE_LABEL_KEY, 
String.class, SINGLE);
+            createPropertyKey(management, 
RELATIONSHIPTYPE_TAG_PROPAGATION_KEY, String.class, SINGLE);
 
             commit(management);
 
diff --git 
a/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasAbstractDefStoreV2.java
 
b/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasAbstractDefStoreV2.java
index e98d60efb..1d61aa978 100644
--- 
a/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasAbstractDefStoreV2.java
+++ 
b/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasAbstractDefStoreV2.java
@@ -27,6 +27,8 @@ import org.apache.atlas.exception.AtlasBaseException;
 import org.apache.atlas.model.typedef.AtlasBaseTypeDef;
 import org.apache.atlas.model.typedef.AtlasStructDef;
 import org.apache.atlas.query.AtlasDSL;
+import org.apache.atlas.repository.graphdb.AtlasCardinality;
+import org.apache.atlas.repository.graphdb.AtlasGraphManagement;
 import org.apache.atlas.repository.graphdb.AtlasVertex;
 import org.apache.atlas.repository.store.graph.AtlasDefStore;
 import org.apache.atlas.type.AtlasType;
@@ -169,4 +171,10 @@ abstract class AtlasAbstractDefStoreV2<T extends 
AtlasBaseTypeDef> implements At
     public boolean isInvalidTypeDefName(String typeName) {
         return INVALID_TYPEDEF_NAMES_LIST.contains(typeName);
     }
+
+    protected static void createPropertyKey(String propertyKey, Class<?> clz, 
AtlasCardinality cardinality, AtlasGraphManagement management) {
+        if (!management.containsPropertyKey(propertyKey)) {
+            management.makePropertyKey(propertyKey, clz, cardinality);
+        }
+    }
 }
diff --git 
a/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasEnumDefStoreV2.java
 
b/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasEnumDefStoreV2.java
index 7cca4e2a7..6977b737f 100644
--- 
a/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasEnumDefStoreV2.java
+++ 
b/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasEnumDefStoreV2.java
@@ -25,6 +25,9 @@ import org.apache.atlas.exception.AtlasBaseException;
 import org.apache.atlas.model.typedef.AtlasEnumDef;
 import org.apache.atlas.model.typedef.AtlasEnumDef.AtlasEnumElementDef;
 import org.apache.atlas.repository.Constants;
+import org.apache.atlas.repository.IndexException;
+import org.apache.atlas.repository.graphdb.AtlasCardinality;
+import org.apache.atlas.repository.graphdb.AtlasGraphManagement;
 import org.apache.atlas.repository.graphdb.AtlasVertex;
 import org.apache.atlas.type.AtlasTypeRegistry;
 import org.apache.atlas.typesystem.types.DataTypes.TypeCategory;
@@ -37,6 +40,8 @@ import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
 
+import static 
org.apache.atlas.repository.store.graph.v2.AtlasGraphUtilsV2.encodePropertyKey;
+
 /**
  * EnumDef store in v2 format.
  */
@@ -239,14 +244,11 @@ class AtlasEnumDefStoreV2 extends 
AtlasAbstractDefStoreV2<AtlasEnumDef> {
             throw new 
AtlasBaseException(AtlasErrorCode.MISSING_MANDATORY_ATTRIBUTE, 
enumDef.getName(), "values");
         }
 
+        createPropertyKeys(enumDef);
+
         List<String> values = new ArrayList<>(enumDef.getElementDefs().size());
 
         for (AtlasEnumElementDef element : enumDef.getElementDefs()) {
-            // Validate the enum element
-            if (StringUtils.isEmpty(element.getValue()) || null == 
element.getOrdinal()) {
-                throw new 
AtlasBaseException(AtlasErrorCode.MISSING_MANDATORY_ATTRIBUTE, 
enumDef.getName(), "elementValue");
-            }
-
             String elemKey = AtlasGraphUtilsV2.getTypeDefPropertyKey(enumDef, 
element.getValue());
 
             AtlasGraphUtilsV2.setProperty(vertex, elemKey, 
element.getOrdinal());
@@ -259,10 +261,9 @@ class AtlasEnumDefStoreV2 extends 
AtlasAbstractDefStoreV2<AtlasEnumDef> {
 
             values.add(element.getValue());
         }
-        AtlasGraphUtilsV2.setProperty(vertex, 
AtlasGraphUtilsV2.getTypeDefPropertyKey(enumDef), values);
 
-        String defaultValueKey = 
AtlasGraphUtilsV2.getTypeDefPropertyKey(enumDef, "defaultValue");
-        AtlasGraphUtilsV2.setProperty(vertex, defaultValueKey, 
enumDef.getDefaultValue());
+        AtlasGraphUtilsV2.setProperty(vertex, 
AtlasGraphUtilsV2.getTypeDefPropertyKey(enumDef), values);
+        AtlasGraphUtilsV2.setProperty(vertex, 
AtlasGraphUtilsV2.getTypeDefPropertyKey(enumDef, "defaultValue"), 
enumDef.getDefaultValue());
     }
 
     private AtlasEnumDef toEnumDef(AtlasVertex vertex) {
@@ -281,7 +282,13 @@ class AtlasEnumDefStoreV2 extends 
AtlasAbstractDefStoreV2<AtlasEnumDef> {
         typeDefStore.vertexToTypeDef(vertex, ret);
 
         List<AtlasEnumElementDef> elements   = new ArrayList<>();
-        List<String>              elemValues = 
vertex.getProperty(AtlasGraphUtilsV2.getTypeDefPropertyKey(ret), List.class);
+        Object                    names      = 
vertex.getProperty(AtlasGraphUtilsV2.getTypeDefPropertyKey(ret), Object.class);
+        List<String>              elemValues = names instanceof List ? 
(List<String>) names : new ArrayList<>();
+
+        if (names == null) {
+            LOG.warn("failed to load element names for enum {}", 
ret.getName());
+        }
+
         for (String elemValue : elemValues) {
             String elemKey = AtlasGraphUtilsV2.getTypeDefPropertyKey(ret, 
elemValue);
             String descKey = AtlasGraphUtilsV2.getTypeDefPropertyKey(elemKey, 
"description");
@@ -299,4 +306,34 @@ class AtlasEnumDefStoreV2 extends 
AtlasAbstractDefStoreV2<AtlasEnumDef> {
 
         return ret;
     }
+
+    private void createPropertyKeys(AtlasEnumDef enumDef) throws 
AtlasBaseException {
+        AtlasGraphManagement management = 
typeDefStore.atlasGraph.getManagementSystem();
+
+        // create property keys first
+        for (AtlasEnumElementDef element : enumDef.getElementDefs()) {
+            // Validate the enum element
+            if (StringUtils.isEmpty(element.getValue()) || null == 
element.getOrdinal()) {
+                throw new 
AtlasBaseException(AtlasErrorCode.MISSING_MANDATORY_ATTRIBUTE, 
enumDef.getName(), "elementValue");
+            }
+
+            String elemKey = AtlasGraphUtilsV2.getTypeDefPropertyKey(enumDef, 
element.getValue());
+
+            createPropertyKey(encodePropertyKey(elemKey), Integer.class, 
AtlasCardinality.SINGLE, management);
+        }
+
+        String typeDefKey      = 
AtlasGraphUtilsV2.getTypeDefPropertyKey(enumDef);
+        String defaultValueKey = 
AtlasGraphUtilsV2.getTypeDefPropertyKey(enumDef, "defaultValue");
+
+        createPropertyKey(encodePropertyKey(typeDefKey), Object.class, 
AtlasCardinality.SINGLE, management);
+        createPropertyKey(encodePropertyKey(defaultValueKey), String.class, 
AtlasCardinality.SINGLE, management);
+
+        try {
+            management.commit();
+        } catch (Exception e) {
+            LOG.error("PropertyKey creation failed", e);
+
+            throw new AtlasBaseException(new IndexException("Index commit 
failed", e));
+        }
+    }
 }
diff --git 
a/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasStructDefStoreV2.java
 
b/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasStructDefStoreV2.java
index b5ef5ab51..3c891bbcb 100644
--- 
a/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasStructDefStoreV2.java
+++ 
b/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasStructDefStoreV2.java
@@ -28,6 +28,9 @@ import org.apache.atlas.model.typedef.AtlasStructDef;
 import org.apache.atlas.model.typedef.AtlasStructDef.AtlasAttributeDef;
 import org.apache.atlas.model.typedef.AtlasStructDef.AtlasConstraintDef;
 import org.apache.atlas.repository.Constants;
+import org.apache.atlas.repository.IndexException;
+import org.apache.atlas.repository.graphdb.AtlasCardinality;
+import org.apache.atlas.repository.graphdb.AtlasGraphManagement;
 import org.apache.atlas.repository.graphdb.AtlasVertex;
 import org.apache.atlas.type.AtlasRelationshipType;
 import org.apache.atlas.type.AtlasStructType;
@@ -64,28 +67,19 @@ public class AtlasStructDefStoreV2 extends 
AtlasAbstractDefStoreV2<AtlasStructDe
     public static void updateVertexPreCreate(AtlasStructDef structDef, 
AtlasStructType structType, AtlasVertex vertex, AtlasTypeDefGraphStoreV2 
typeDefStore) throws AtlasBaseException {
         List<String> attrNames = new 
ArrayList<>(structDef.getAttributeDefs().size());
 
-        for (AtlasAttributeDef attributeDef : structDef.getAttributeDefs()) {
-            // Validate the mandatory features of an attribute (compatibility 
with legacy type system)
-            if (StringUtils.isEmpty(attributeDef.getName())) {
-                throw new 
AtlasBaseException(AtlasErrorCode.MISSING_MANDATORY_ATTRIBUTE, 
structDef.getName(), "name");
-            }
-
-            if (StringUtils.isEmpty(attributeDef.getTypeName())) {
-                throw new 
AtlasBaseException(AtlasErrorCode.MISSING_MANDATORY_ATTRIBUTE, 
structDef.getName(), "typeName");
-            }
+        createPropertyKeys(structDef, typeDefStore);
 
-            String propertyKey        = 
AtlasGraphUtilsV2.getTypeDefPropertyKey(structDef, attributeDef.getName());
-            String encodedPropertyKey = 
AtlasGraphUtilsV2.encodePropertyKey(propertyKey);
+        for (AtlasAttributeDef attributeDef : structDef.getAttributeDefs()) {
+            String propertyKey = 
AtlasGraphUtilsV2.getTypeDefPropertyKey(structDef, attributeDef.getName());
 
-            vertex.setProperty(encodedPropertyKey, 
toJsonFromAttribute(structType.getAttribute(attributeDef.getName())));
+            
vertex.setProperty(AtlasGraphUtilsV2.encodePropertyKey(propertyKey), 
toJsonFromAttribute(structType.getAttribute(attributeDef.getName())));
 
             attrNames.add(attributeDef.getName());
         }
 
-        String typeNamePropertyKey        = 
AtlasGraphUtilsV2.getTypeDefPropertyKey(structDef);
-        String encodedtypeNamePropertyKey = 
AtlasGraphUtilsV2.encodePropertyKey(typeNamePropertyKey);
+        String typeNamePropertyKey = 
AtlasGraphUtilsV2.getTypeDefPropertyKey(structDef);
 
-        vertex.setProperty(encodedtypeNamePropertyKey, attrNames);
+        
vertex.setProperty(AtlasGraphUtilsV2.encodePropertyKey(typeNamePropertyKey), 
attrNames);
     }
 
     public static void updateVertexPreUpdate(AtlasStructDef structDef, 
AtlasStructType structType, AtlasVertex vertex, AtlasTypeDefGraphStoreV2 
typeDefStore) throws AtlasBaseException {
@@ -99,12 +93,15 @@ public class AtlasStructDefStoreV2 extends 
AtlasAbstractDefStoreV2<AtlasStructDe
 
         String       structDefPropertyKey        = 
AtlasGraphUtilsV2.getTypeDefPropertyKey(structDef);
         String       encodedStructDefPropertyKey = 
encodePropertyKey(structDefPropertyKey);
-        List<String> currAttrNames               = 
vertex.getProperty(encodedStructDefPropertyKey, List.class);
+        Object       names                       = 
vertex.getProperty(encodedStructDefPropertyKey, Object.class);
+        List<String> currAttrNames               = names instanceof List ? 
(List<String>) names : new ArrayList<>();
 
         // delete attributes that are not present in updated structDef
         if (CollectionUtils.isNotEmpty(currAttrNames)) {
             List<String> removedAttributes = null;
 
+            createPropertyKeys(structDef, typeDefStore);
+
             for (String currAttrName : currAttrNames) {
                 if (!attrNames.contains(currAttrName)) {
                     if (RequestContext.get().isInTypePatching()) {
@@ -136,6 +133,10 @@ public class AtlasStructDefStoreV2 extends 
AtlasAbstractDefStoreV2<AtlasStructDe
                     vertex.removeProperty(propertyKey);
                 }
             }
+        } else {
+            if (names == null) {
+                LOG.warn("failed to load attribute names for type {}", 
structDef.getName());
+            }
         }
 
         typeDefStore.updateTypeVertex(structDef, vertex);
@@ -207,7 +208,8 @@ public class AtlasStructDefStoreV2 extends 
AtlasAbstractDefStoreV2<AtlasStructDe
         List<AtlasAttributeDef> attributeDefs          = new ArrayList<>();
         String                  typePropertyKey        = 
AtlasGraphUtilsV2.getTypeDefPropertyKey(ret);
         String                  encodedTypePropertyKey = 
AtlasGraphUtilsV2.encodePropertyKey(typePropertyKey);
-        List<String>            attrNames              = 
vertex.getProperty(encodedTypePropertyKey, List.class);
+        Object                  names                  = 
vertex.getProperty(encodedTypePropertyKey, Object.class);
+        List<String>            attrNames              = names instanceof List 
? (List<String>) names : new ArrayList<>();
 
         if (CollectionUtils.isNotEmpty(attrNames)) {
             for (String attrName : attrNames) {
@@ -223,6 +225,10 @@ public class AtlasStructDefStoreV2 extends 
AtlasAbstractDefStoreV2<AtlasStructDe
 
                 attributeDefs.add(toAttributeDefFromJson(structDef, 
AtlasType.fromJson(attrJson, Map.class), typeDefStore));
             }
+        } else {
+            if (names == null) {
+                LOG.warn("failed to load attribute names for type {}", 
structDef);
+            }
         }
 
         ret.setAttributeDefs(attributeDefs);
@@ -638,4 +644,35 @@ public class AtlasStructDefStoreV2 extends 
AtlasAbstractDefStoreV2<AtlasStructDe
             }
         }
     }
+
+    private static void createPropertyKeys(AtlasStructDef structDef, 
AtlasTypeDefGraphStoreV2 typeDefStore) throws AtlasBaseException {
+        AtlasGraphManagement management = 
typeDefStore.atlasGraph.getManagementSystem();
+
+        for (AtlasAttributeDef attributeDef : structDef.getAttributeDefs()) {
+            // Validate the mandatory features of an attribute (compatibility 
with legacy type system)
+            if (StringUtils.isEmpty(attributeDef.getName())) {
+                throw new 
AtlasBaseException(AtlasErrorCode.MISSING_MANDATORY_ATTRIBUTE, 
structDef.getName(), "name");
+            }
+
+            if (StringUtils.isEmpty(attributeDef.getTypeName())) {
+                throw new 
AtlasBaseException(AtlasErrorCode.MISSING_MANDATORY_ATTRIBUTE, 
structDef.getName(), "typeName");
+            }
+
+            String propertyKey = 
AtlasGraphUtilsV2.getTypeDefPropertyKey(structDef, attributeDef.getName());
+
+            
createPropertyKey(AtlasGraphUtilsV2.encodePropertyKey(propertyKey), 
String.class, AtlasCardinality.SINGLE, management);
+        }
+
+        String typeNamePropertyKey = 
AtlasGraphUtilsV2.getTypeDefPropertyKey(structDef);
+
+        
createPropertyKey(AtlasGraphUtilsV2.encodePropertyKey(typeNamePropertyKey), 
Object.class, AtlasCardinality.SINGLE, management);
+
+        try {
+            management.commit();
+        } catch (Exception e) {
+            LOG.error("PropertyKey creation failed", e);
+
+            throw new AtlasBaseException(new IndexException("Index commit 
failed", e));
+        }
+    }
 }
diff --git a/test-tools/src/main/resources/solr/core-template/solrconfig.xml 
b/test-tools/src/main/resources/solr/core-template/solrconfig.xml
index c7ee388c7..e39ca9e81 100644
--- a/test-tools/src/main/resources/solr/core-template/solrconfig.xml
+++ b/test-tools/src/main/resources/solr/core-template/solrconfig.xml
@@ -445,7 +445,7 @@
          -->
         <lst name="defaults">
             <str name="defType">edismax</str>
-            <str name="qf">35x_t 5j9_t 7wl_t a9x_t but_t dfp_l f0l_t i6d_l 
iyt_l jr9_t kjp_s lc5_t m4l_s mx1_t ohx_t xz9_i 1151_t 12px_t 14at_l 15vp_t 
1891_t 19tx_t 1bet_t 1czp_t 1ekl_t 1gxx_t 1iit_l 1k3p_t 1lol_t 1o1x_t 1qf9_t 
1ssl_t 1v5x_t 1wqt_t 1z45_t 20p1_t 4ttx_t 56h1_s 54w5_s 52it_s 50xx_s 543p_t 
5c05_t 581x_t 59mt_l 5af9_t 5gqt_t 5f5x_t 5ibp_t 5pfp_t 5uyt_t 5zph_t 5xc5_t 
5y4l_t 5wjp_t 6611_t 658l_t 6d51_l 6epx_l 66th_t 6ccl_t 6net_l 6ozp_l 6ltx_t 
6k91_t 6qkl_t 6gat_t 6h39_t 6io5_ [...]
+            <str name="qf">35x_t 5j9_t 7wl_t a9x_t but_t dfp_l f0l_t i6d_l 
iyt_l jr9_t kjp_s lc5_t m4l_s mx1_t ohx_t xz9_i 1151_t 12px_t 14at_l 15vp_t 
1891_t 19tx_t 1bet_t 1czp_t 1ekl_t 1gxx_t 1iit_l 1k3p_t 1lol_t 1o1x_t 1qf9_t 
1ssl_t 1v5x_t 1wqt_t 1z45_t 20p1_t 4wzp_t 59mt_s 581x_s 55ol_s 543p_s 579h_t 
5f5x_t 5b7p_t 5csl_l 5dl1_t 5jwl_t 5ibp_t 5lhh_t 5slh_t 5y4l_t 62v9_t 60hx_t 
61ad_t 5zph_t 696t_t 68ed_t 6gat_l 6hvp_l 69z9_t 6fid_t 6qkl_l 6s5h_l 6ozp_t 
6net_t 6tqd_t 6jgl_t 6k91_t 6ltx_ [...]
             <str name="hl.fl">*</str>
             <bool name="hl.requireFieldMatch">true</bool>
             <bool name="lowercaseOperators">true</bool>

Reply via email to