Skip to content

Commit 2301655

Browse files
committed
Handled exceptions
Signed-off-by: Owais Kazi <[email protected]>
1 parent c0fbb36 commit 2301655

File tree

2 files changed

+17
-28
lines changed

2 files changed

+17
-28
lines changed

server/src/main/java/org/opensearch/extensions/ExtensionsManager.java

+14-23
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
import java.util.Optional;
1717
import java.util.Set;
1818
import java.util.concurrent.CompletableFuture;
19-
import java.util.concurrent.TimeUnit;
2019
import java.util.stream.Collectors;
2120

2221
import org.apache.logging.log4j.LogManager;
@@ -292,26 +291,19 @@ private void registerRequestHandler(DynamicActionRegistry dynamicActionRegistry)
292291
* @param extension The extension to be loaded
293292
*/
294293
public void loadExtension(Extension extension) throws IOException {
295-
try {
296-
validateExtension(extension);
297-
DiscoveryExtensionNode discoveryExtensionNode = new DiscoveryExtensionNode(
298-
extension.getName(),
299-
extension.getUniqueId(),
300-
new TransportAddress(InetAddress.getByName(extension.getHostAddress()), Integer.parseInt(extension.getPort())),
301-
new HashMap<String, String>(),
302-
Version.fromString(extension.getOpensearchVersion()),
303-
Version.fromString(extension.getMinimumCompatibleVersion()),
304-
extension.getDependencies()
305-
);
306-
extensionIdMap.put(extension.getUniqueId(), discoveryExtensionNode);
307-
extensionSettingsMap.put(extension.getUniqueId(), extension);
308-
logger.info("Loaded extension with uniqueId " + extension.getUniqueId() + ": " + extension);
309-
} catch (IOException e) {
310-
throw e;
311-
} catch (IllegalArgumentException e) {
312-
throw e;
313-
}
314-
294+
validateExtension(extension);
295+
DiscoveryExtensionNode discoveryExtensionNode = new DiscoveryExtensionNode(
296+
extension.getName(),
297+
extension.getUniqueId(),
298+
new TransportAddress(InetAddress.getByName(extension.getHostAddress()), Integer.parseInt(extension.getPort())),
299+
new HashMap<String, String>(),
300+
Version.fromString(extension.getOpensearchVersion()),
301+
Version.fromString(extension.getMinimumCompatibleVersion()),
302+
extension.getDependencies()
303+
);
304+
extensionIdMap.put(extension.getUniqueId(), discoveryExtensionNode);
305+
extensionSettingsMap.put(extension.getUniqueId(), extension);
306+
logger.info("Loaded extension with uniqueId " + extension.getUniqueId() + ": " + extension);
315307
}
316308

317309
private void validateField(String fieldName, String value) throws IOException {
@@ -329,7 +321,7 @@ private void validateExtension(Extension extension) throws IOException {
329321
validateField("opensearch version", extension.getOpensearchVersion());
330322
validateField("minimum opensearch version", extension.getMinimumCompatibleVersion());
331323
if (extensionIdMap.containsKey(extension.getUniqueId())) {
332-
throw new IOException("Duplicate uniqueId " + extension.getUniqueId() + ". Did not load extension: " + extension);
324+
throw new IOException("Duplicate uniqueId [" + extension.getUniqueId() + "]. Did not load extension: " + extension);
333325
}
334326
}
335327

@@ -404,7 +396,6 @@ protected void doRun() throws Exception {
404396
new InitializeExtensionRequest(transportService.getLocalNode(), extension),
405397
initializeExtensionResponseHandler
406398
);
407-
inProgressFuture.orTimeout(EXTENSION_REQUEST_WAIT_TIMEOUT, TimeUnit.SECONDS).join();
408399
}
409400
});
410401
}

server/src/main/java/org/opensearch/extensions/rest/RestInitializeExtensionAction.java

+3-5
Original file line numberDiff line numberDiff line change
@@ -86,14 +86,12 @@ public RestChannelConsumer prepareRequest(RestRequest request, NodeClient client
8686
} else if ("dependencies".equals(currentFieldName)) {
8787
ensureExpectedToken(XContentParser.Token.START_ARRAY, parser.currentToken(), parser);
8888
while (parser.nextToken() != XContentParser.Token.END_ARRAY) {
89-
try {
90-
dependencies.add(ExtensionDependency.parse(parser));
91-
} catch (IOException e) {
92-
throw e;
93-
}
89+
dependencies.add(ExtensionDependency.parse(parser));
9490
}
9591
}
9692
}
93+
} catch (IOException e) {
94+
throw new IOException("Missing attribute", e);
9795
}
9896

9997
Extension extension = new Extension(

0 commit comments

Comments
 (0)