Преглед на файлове

Allow _update on write alias (#45318)

Using the document update API on aliases with a write index does not work.

Follow-up to #31520
Yannick Welsch преди 6 години
родител
ревизия
db493768d6

+ 1 - 1
server/src/main/java/org/elasticsearch/action/support/single/instance/TransportInstanceSingleOperationAction.java

@@ -143,7 +143,7 @@ public abstract class TransportInstanceSingleOperationAction<
                         throw blockException;
                     }
                 }
-                request.concreteIndex(indexNameExpressionResolver.concreteSingleIndex(clusterState, request).getName());
+                request.concreteIndex(indexNameExpressionResolver.concreteWriteIndex(clusterState, request).getName());
                 resolveRequest(clusterState, request);
                 blockException = checkRequestBlock(clusterState, request);
                 if (blockException != null) {

+ 2 - 1
server/src/test/java/org/elasticsearch/update/UpdateIT.java

@@ -292,7 +292,8 @@ public class UpdateIT extends ESIntegTestCase {
     }
 
     public void testUpdate() throws Exception {
-        createTestIndex();
+        assertAcked(prepareCreate("test").addAlias(new Alias("alias").writeIndex(true)));
+        assertAcked(prepareCreate("test2").addAlias(new Alias("alias")));
         ensureGreen();
 
         Script fieldIncScript = new Script(ScriptType.INLINE, UPDATE_SCRIPTS, FIELD_INC_SCRIPT, Collections.singletonMap("field", "field"));