Skip to content

Commit 26cbb39

Browse files
committed
Rename NON_NET_NEW_ONLY to BACKWARDS_COMPATIBLE_ONLY + Javadoc
1 parent 975e46d commit 26cbb39

4 files changed

Lines changed: 17 additions & 10 deletions

File tree

server/src/main/java/org/elasticsearch/action/admin/indices/create/TransportCreateIndexAction.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ protected void masterOperation(Task task, final CreateIndexRequest request, fina
8282
throw systemIndices.netNewSystemIndexAccessException(threadPool.getThreadContext(), List.of(indexName));
8383
}
8484
} else {
85-
// NON_NET_NEW_ONLY should never be a possibility here, as it cannot be returned from getSystemIndexAccessLevel.
85+
// BACKWARDS_COMPATIBLE_ONLY should never be a possibility here, it cannot be returned from getSystemIndexAccessLevel
8686
assert systemIndexAccessLevel == SystemIndexAccessLevel.NONE :
8787
"Expected no system index access but level is " + systemIndexAccessLevel;
8888
throw systemIndices.netNewSystemIndexAccessException(threadPool.getThreadContext(), List.of(indexName));

server/src/main/java/org/elasticsearch/cluster/metadata/IndexAbstractionResolver.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ public static boolean isIndexVisible(String expression, String index, IndicesOpt
142142
return false;
143143
case RESTRICTED:
144144
return resolver.getSystemIndexAccessPredicate().test(indexAbstraction.getName());
145-
case NON_NET_NEW_ONLY:
145+
case BACKWARDS_COMPATIBLE_ONLY:
146146
return resolver.getNetNewSystemIndexPredicate().test(indexAbstraction.getName());
147147
default:
148148
assert false : "unexpected system index access level [" + level + "]";
@@ -173,7 +173,7 @@ public static boolean isIndexVisible(String expression, String index, IndicesOpt
173173
return false;
174174
case RESTRICTED:
175175
return resolver.getSystemIndexAccessPredicate().test(indexAbstraction.getName());
176-
case NON_NET_NEW_ONLY:
176+
case BACKWARDS_COMPATIBLE_ONLY:
177177
return resolver.getNetNewSystemIndexPredicate().test(indexAbstraction.getName());
178178
default:
179179
assert false : "unexpected system index access level [" + level + "]";
@@ -195,7 +195,7 @@ public static boolean isIndexVisible(String expression, String index, IndicesOpt
195195
return false;
196196
case RESTRICTED:
197197
return resolver.getSystemIndexAccessPredicate().test(indexAbstraction.getName());
198-
case NON_NET_NEW_ONLY:
198+
case BACKWARDS_COMPATIBLE_ONLY:
199199
return resolver.getNetNewSystemIndexPredicate().test(indexAbstraction.getName());
200200
default:
201201
assert false : "unexpected system index access level [" + level + "]";

server/src/main/java/org/elasticsearch/cluster/metadata/IndexNameExpressionResolver.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ public String[] concreteIndexNames(ClusterState state, IndicesRequest request) {
8787
*/
8888
public String[] concreteIndexNamesWithSystemIndexAccess(ClusterState state, IndicesRequest request) {
8989
Context context = new Context(state, request.indicesOptions(), false, false, request.includeDataStreams(),
90-
SystemIndexAccessLevel.NON_NET_NEW_ONLY, name -> true, this.getNetNewSystemIndexPredicate());
90+
SystemIndexAccessLevel.BACKWARDS_COMPATIBLE_ONLY, name -> true, this.getNetNewSystemIndexPredicate());
9191
return concreteIndexNames(context, request.indices());
9292
}
9393

@@ -364,7 +364,7 @@ private void checkSystemIndexAccess(Context context, Metadata metadata, Set<Inde
364364
}
365365

366366
private static boolean shouldTrackConcreteIndex(Context context, IndicesOptions options, IndexMetadata index) {
367-
if (context.systemIndexAccessLevel == SystemIndexAccessLevel.NON_NET_NEW_ONLY
367+
if (context.systemIndexAccessLevel == SystemIndexAccessLevel.BACKWARDS_COMPATIBLE_ONLY
368368
&& context.netNewSystemIndexPredicate.test(index.getIndex().getName())) {
369369
// Exclude this one as it's a net-new system index, and we explicitly don't want those.
370370
return false;
@@ -756,7 +756,7 @@ public Predicate<String> getSystemIndexAccessPredicate() {
756756
final Predicate<String> systemIndexAccessLevelPredicate;
757757
if (systemIndexAccessLevel == SystemIndexAccessLevel.NONE) {
758758
systemIndexAccessLevelPredicate = s -> false;
759-
} else if (systemIndexAccessLevel == SystemIndexAccessLevel.NON_NET_NEW_ONLY) {
759+
} else if (systemIndexAccessLevel == SystemIndexAccessLevel.BACKWARDS_COMPATIBLE_ONLY) {
760760
systemIndexAccessLevelPredicate = getNetNewSystemIndexPredicate();
761761
} else if (systemIndexAccessLevel == SystemIndexAccessLevel.ALL) {
762762
systemIndexAccessLevelPredicate = s -> true;
@@ -1159,7 +1159,7 @@ private static List<String> resolveEmptyOrTrivialWildcardWithAllowedSystemIndice
11591159
assert abstraction != null : "null abstraction for " + name + " but was in array of all indices";
11601160
if (abstraction.isSystem()) {
11611161
if (context.netNewSystemIndexPredicate.test(name)) {
1162-
if (SystemIndexAccessLevel.NON_NET_NEW_ONLY.equals(context.systemIndexAccessLevel)) {
1162+
if (SystemIndexAccessLevel.BACKWARDS_COMPATIBLE_ONLY.equals(context.systemIndexAccessLevel)) {
11631163
return false;
11641164
} else {
11651165
return context.systemIndexAccessPredicate.test(name);

server/src/main/java/org/elasticsearch/indices/SystemIndices.java

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -362,7 +362,7 @@ public SystemDataStreamDescriptor validateDataStreamAccess(String dataStreamName
362362
return dataStreamDescriptor;
363363
}
364364
} else {
365-
assert accessLevel == SystemIndexAccessLevel.ALL || accessLevel == SystemIndexAccessLevel.NON_NET_NEW_ONLY;
365+
assert accessLevel == SystemIndexAccessLevel.ALL || accessLevel == SystemIndexAccessLevel.BACKWARDS_COMPATIBLE_ONLY;
366366
return dataStreamDescriptor;
367367
}
368368
} else {
@@ -428,7 +428,14 @@ public enum SystemIndexAccessLevel {
428428
ALL,
429429
NONE,
430430
RESTRICTED,
431-
NON_NET_NEW_ONLY
431+
/**
432+
* This value exists because there was a desire for "net-new" system indices to opt in to the post-8.0 behavior of having
433+
* access blocked in most cases, but this caused problems with certain APIs
434+
* (see https://github.com/elastic/elasticsearch/issues/74687), so this access level was added as a workaround. Once we no longer
435+
* have to support accessing existing system indices, this can and should be removed, along with the net-new property of
436+
* system indices in general.
437+
*/
438+
BACKWARDS_COMPATIBLE_ONLY
432439
}
433440

434441
/**

0 commit comments

Comments
 (0)