Skip to content

Commit ab98278

Browse files
committed
Use project resolver instead of explicit project ID
1 parent 16dee6d commit ab98278

File tree

61 files changed

+459
-184
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

61 files changed

+459
-184
lines changed

libs/logstash-bridge/src/main/java/org/elasticsearch/logstashbridge/script/ScriptServiceBridge.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,9 @@
88
*/
99
package org.elasticsearch.logstashbridge.script;
1010

11+
import org.elasticsearch.cluster.project.ProjectResolver;
1112
import org.elasticsearch.common.settings.Settings;
13+
import org.elasticsearch.core.FixForMultiProject;
1214
import org.elasticsearch.logstashbridge.StableBridgeAPI;
1315
import org.elasticsearch.logstashbridge.common.SettingsBridge;
1416
import org.elasticsearch.painless.PainlessPlugin;
@@ -55,7 +57,9 @@ private static ScriptService getScriptService(final Settings settings, final Lon
5557
MustacheScriptEngine.NAME,
5658
new MustacheScriptEngine(settings)
5759
);
58-
return new ScriptService(settings, scriptEngines, ScriptModule.CORE_CONTEXTS, timeProvider);
60+
@FixForMultiProject // Should this be non-null?
61+
final ProjectResolver projectResolver = null;
62+
return new ScriptService(settings, scriptEngines, ScriptModule.CORE_CONTEXTS, timeProvider, projectResolver);
5963
}
6064

6165
private static List<Whitelist> getPainlessBaseWhiteList() {

modules/aggregations/src/test/java/org/elasticsearch/aggregations/pipeline/MovFnAggregatorTests.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
import org.apache.lucene.search.Query;
1919
import org.apache.lucene.store.Directory;
2020
import org.apache.lucene.tests.index.RandomIndexWriter;
21+
import org.elasticsearch.cluster.project.TestProjectResolvers;
2122
import org.elasticsearch.common.settings.Settings;
2223
import org.elasticsearch.common.time.DateFormatters;
2324
import org.elasticsearch.index.mapper.DateFieldMapper;
@@ -106,7 +107,8 @@ public Set<ScriptContext<?>> getSupportedContexts() {
106107
Settings.EMPTY,
107108
engines,
108109
Map.of(MovingFunctionScript.CONTEXT.name, MovingFunctionScript.CONTEXT),
109-
() -> 1L
110+
() -> 1L,
111+
TestProjectResolvers.singleProject(randomProjectIdOrDefault())
110112
);
111113
}
112114

modules/analysis-common/src/test/java/org/elasticsearch/analysis/common/PredicateTokenScriptFilterTests.java

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
import org.elasticsearch.client.internal.Client;
1717
import org.elasticsearch.client.internal.support.AbstractClient;
1818
import org.elasticsearch.cluster.metadata.IndexMetadata;
19-
import org.elasticsearch.cluster.metadata.ProjectId;
2019
import org.elasticsearch.cluster.project.TestProjectResolvers;
2120
import org.elasticsearch.common.settings.Settings;
2221
import org.elasticsearch.env.Environment;
@@ -64,10 +63,16 @@ public boolean execute(Token token) {
6463
}
6564
};
6665

67-
ScriptService scriptService = new ScriptService(indexSettings, Collections.emptyMap(), Collections.emptyMap(), () -> 1L) {
66+
ScriptService scriptService = new ScriptService(
67+
indexSettings,
68+
Collections.emptyMap(),
69+
Collections.emptyMap(),
70+
() -> 1L,
71+
TestProjectResolvers.singleProject(randomProjectIdOrDefault())
72+
) {
6873
@Override
6974
@SuppressWarnings("unchecked")
70-
public <FactoryType> FactoryType compile(ProjectId projectId, Script script, ScriptContext<FactoryType> context) {
75+
public <FactoryType> FactoryType compile(Script script, ScriptContext<FactoryType> context) {
7176
assertEquals(context, AnalysisPredicateScript.CONTEXT);
7277
assertEquals(new Script("my_script"), script);
7378
return (FactoryType) factory;

modules/analysis-common/src/test/java/org/elasticsearch/analysis/common/ScriptedConditionTokenFilterTests.java

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
import org.elasticsearch.client.internal.Client;
1717
import org.elasticsearch.client.internal.support.AbstractClient;
1818
import org.elasticsearch.cluster.metadata.IndexMetadata;
19-
import org.elasticsearch.cluster.metadata.ProjectId;
2019
import org.elasticsearch.cluster.project.TestProjectResolvers;
2120
import org.elasticsearch.common.settings.Settings;
2221
import org.elasticsearch.env.Environment;
@@ -65,9 +64,15 @@ public boolean execute(Token token) {
6564
};
6665

6766
@SuppressWarnings("unchecked")
68-
ScriptService scriptService = new ScriptService(indexSettings, Collections.emptyMap(), Collections.emptyMap(), () -> 1L) {
67+
ScriptService scriptService = new ScriptService(
68+
indexSettings,
69+
Collections.emptyMap(),
70+
Collections.emptyMap(),
71+
() -> 1L,
72+
TestProjectResolvers.singleProject(randomProjectIdOrDefault())
73+
) {
6974
@Override
70-
public <FactoryType> FactoryType compile(ProjectId projectId, Script script, ScriptContext<FactoryType> context) {
75+
public <FactoryType> FactoryType compile(Script script, ScriptContext<FactoryType> context) {
7176
assertEquals(context, AnalysisPredicateScript.CONTEXT);
7277
assertEquals(new Script("token.getPosition() > 1"), script);
7378
return (FactoryType) factory;

modules/ingest-common/src/test/java/org/elasticsearch/ingest/common/ScriptProcessorFactoryTests.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
package org.elasticsearch.ingest.common;
1111

1212
import org.elasticsearch.ElasticsearchException;
13+
import org.elasticsearch.cluster.project.TestProjectResolvers;
1314
import org.elasticsearch.common.settings.Settings;
1415
import org.elasticsearch.ingest.TestIngestDocument;
1516
import org.elasticsearch.script.CtxMap;
@@ -145,7 +146,8 @@ public void testInlineIsCompiled() throws Exception {
145146
return null;
146147
}), Map.of())),
147148
new HashMap<>(ScriptModule.CORE_CONTEXTS),
148-
() -> 1L
149+
() -> 1L,
150+
TestProjectResolvers.singleProject(randomProjectIdOrDefault())
149151
);
150152
factory = new ScriptProcessor.Factory(scriptService);
151153

modules/ingest-common/src/test/java/org/elasticsearch/ingest/common/ScriptProcessorTests.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99

1010
package org.elasticsearch.ingest.common;
1111

12+
import org.elasticsearch.cluster.project.TestProjectResolvers;
1213
import org.elasticsearch.common.settings.Settings;
1314
import org.elasticsearch.ingest.IngestDocument;
1415
import org.elasticsearch.ingest.RandomDocumentPicks;
@@ -47,7 +48,8 @@ public void setupScripting() {
4748
return null;
4849
}), Map.of())),
4950
new HashMap<>(ScriptModule.CORE_CONTEXTS),
50-
() -> 1L
51+
() -> 1L,
52+
TestProjectResolvers.singleProject(randomProjectIdOrDefault())
5153
);
5254
script = new Script(ScriptType.INLINE, Script.DEFAULT_SCRIPT_LANG, scriptName, Map.of());
5355
ingestScriptFactory = scriptService.compile(script, IngestScript.CONTEXT);

modules/lang-expression/src/test/java/org/elasticsearch/script/expression/ExpressionDoubleValuesScriptTests.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
import org.apache.lucene.search.DoubleValues;
1414
import org.apache.lucene.search.DoubleValuesSource;
1515
import org.apache.lucene.search.SortField;
16+
import org.elasticsearch.cluster.project.TestProjectResolvers;
1617
import org.elasticsearch.common.settings.Settings;
1718
import org.elasticsearch.script.DoubleValuesScript;
1819
import org.elasticsearch.script.Script;
@@ -39,7 +40,13 @@ public void setUp() throws Exception {
3940
super.setUp();
4041

4142
engine = new ExpressionScriptEngine();
42-
scriptService = new ScriptService(Settings.EMPTY, Map.of("expression", engine), ScriptModule.CORE_CONTEXTS, () -> 1L);
43+
scriptService = new ScriptService(
44+
Settings.EMPTY,
45+
Map.of("expression", engine),
46+
ScriptModule.CORE_CONTEXTS,
47+
() -> 1L,
48+
TestProjectResolvers.singleProject(randomProjectIdOrDefault())
49+
);
4350
}
4451

4552
@SuppressWarnings("unchecked")

modules/lang-mustache/src/main/java/org/elasticsearch/script/mustache/TransportMultiSearchTemplateAction.java

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
import org.elasticsearch.action.support.HandledTransportAction;
2121
import org.elasticsearch.client.internal.node.NodeClient;
2222
import org.elasticsearch.cluster.ClusterState;
23-
import org.elasticsearch.cluster.project.ProjectResolver;
2423
import org.elasticsearch.cluster.service.ClusterService;
2524
import org.elasticsearch.common.util.concurrent.EsExecutors;
2625
import org.elasticsearch.features.FeatureService;
@@ -48,7 +47,6 @@ public class TransportMultiSearchTemplateAction extends HandledTransportAction<M
4847
private final Predicate<NodeFeature> clusterSupportsFeature;
4948
private final NodeClient client;
5049
private final SearchUsageHolder searchUsageHolder;
51-
private final ProjectResolver projectResolver;
5250

5351
@Inject
5452
public TransportMultiSearchTemplateAction(
@@ -59,8 +57,7 @@ public TransportMultiSearchTemplateAction(
5957
NodeClient client,
6058
UsageService usageService,
6159
ClusterService clusterService,
62-
FeatureService featureService,
63-
ProjectResolver projectResolver
60+
FeatureService featureService
6461
) {
6562
super(
6663
MustachePlugin.MULTI_SEARCH_TEMPLATE_ACTION.name(),
@@ -71,7 +68,6 @@ public TransportMultiSearchTemplateAction(
7168
);
7269
this.scriptService = scriptService;
7370
this.xContentRegistry = xContentRegistry;
74-
this.projectResolver = projectResolver;
7571
this.clusterSupportsFeature = f -> {
7672
ClusterState state = clusterService.state();
7773
return state.clusterRecovered() && featureService.clusterHasFeature(state, f);
@@ -96,7 +92,6 @@ protected void doExecute(Task task, MultiSearchTemplateRequest request, ActionLi
9692
SearchRequest searchRequest;
9793
try {
9894
searchRequest = convert(
99-
projectResolver.getProjectId(),
10095
searchTemplateRequest,
10196
searchTemplateResponse,
10297
scriptService,

modules/lang-mustache/src/main/java/org/elasticsearch/script/mustache/TransportSearchTemplateAction.java

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,6 @@
1515
import org.elasticsearch.action.support.HandledTransportAction;
1616
import org.elasticsearch.client.internal.node.NodeClient;
1717
import org.elasticsearch.cluster.ClusterState;
18-
import org.elasticsearch.cluster.metadata.ProjectId;
19-
import org.elasticsearch.cluster.project.ProjectResolver;
2018
import org.elasticsearch.cluster.service.ClusterService;
2119
import org.elasticsearch.common.bytes.BytesArray;
2220
import org.elasticsearch.common.util.concurrent.EsExecutors;
@@ -54,7 +52,6 @@ public class TransportSearchTemplateAction extends HandledTransportAction<Search
5452
private final Predicate<NodeFeature> clusterSupportsFeature;
5553
private final NodeClient client;
5654
private final SearchUsageHolder searchUsageHolder;
57-
private final ProjectResolver projectResolver;
5855

5956
@Inject
6057
public TransportSearchTemplateAction(
@@ -65,8 +62,7 @@ public TransportSearchTemplateAction(
6562
NodeClient client,
6663
UsageService usageService,
6764
ClusterService clusterService,
68-
FeatureService featureService,
69-
ProjectResolver projectResolver
65+
FeatureService featureService
7066
) {
7167
super(
7268
MustachePlugin.SEARCH_TEMPLATE_ACTION.name(),
@@ -77,7 +73,6 @@ public TransportSearchTemplateAction(
7773
);
7874
this.scriptService = scriptService;
7975
this.xContentRegistry = xContentRegistry;
80-
this.projectResolver = projectResolver;
8176
this.clusterSupportsFeature = f -> {
8277
ClusterState state = clusterService.state();
8378
return state.clusterRecovered() && featureService.clusterHasFeature(state, f);
@@ -92,7 +87,6 @@ protected void doExecute(Task task, SearchTemplateRequest request, ActionListene
9287
boolean success = false;
9388
try {
9489
SearchRequest searchRequest = convert(
95-
projectResolver.getProjectId(),
9690
request,
9791
response,
9892
scriptService,
@@ -124,7 +118,6 @@ protected void doExecute(Task task, SearchTemplateRequest request, ActionListene
124118
}
125119

126120
static SearchRequest convert(
127-
ProjectId projectId,
128121
SearchTemplateRequest searchTemplateRequest,
129122
SearchTemplateResponse response,
130123
ScriptService scriptService,
@@ -138,7 +131,7 @@ static SearchRequest convert(
138131
searchTemplateRequest.getScript(),
139132
searchTemplateRequest.getScriptParams() == null ? Collections.emptyMap() : searchTemplateRequest.getScriptParams()
140133
);
141-
TemplateScript compiledScript = scriptService.compile(projectId, script, TemplateScript.CONTEXT).newInstance(script.getParams());
134+
TemplateScript compiledScript = scriptService.compile(script, TemplateScript.CONTEXT).newInstance(script.getParams());
142135
String source = compiledScript.execute();
143136
response.setSource(new BytesArray(source));
144137

qa/smoke-test-ingest-with-all-dependencies/src/internalClusterTest/java/org/elasticsearch/ingest/AbstractScriptTestCase.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99

1010
package org.elasticsearch.ingest;
1111

12+
import org.elasticsearch.cluster.project.TestProjectResolvers;
1213
import org.elasticsearch.common.settings.Settings;
1314
import org.elasticsearch.script.Script;
1415
import org.elasticsearch.script.ScriptEngine;
@@ -33,7 +34,13 @@ public abstract class AbstractScriptTestCase extends ESTestCase {
3334
public void init() throws Exception {
3435
MustacheScriptEngine engine = new MustacheScriptEngine(Settings.EMPTY);
3536
Map<String, ScriptEngine> engines = Collections.singletonMap(engine.getType(), engine);
36-
scriptService = new ScriptService(Settings.EMPTY, engines, ScriptModule.CORE_CONTEXTS, () -> 1L);
37+
scriptService = new ScriptService(
38+
Settings.EMPTY,
39+
engines,
40+
ScriptModule.CORE_CONTEXTS,
41+
() -> 1L,
42+
TestProjectResolvers.singleProject(randomProjectIdOrDefault())
43+
);
3744
}
3845

3946
protected TemplateScript.Factory compile(String template) {

0 commit comments

Comments
 (0)