Skip to content

Commit

Permalink
fix multinode
Browse files Browse the repository at this point in the history
Signed-off-by: Joanne Wang <[email protected]>
  • Loading branch information
jowg-amazon committed Aug 27, 2024
1 parent 80fe9a1 commit 2a28941
Showing 1 changed file with 13 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
import org.apache.logging.log4j.Logger;
import org.opensearch.OpenSearchException;
import org.opensearch.action.DocWriteRequest;
import org.opensearch.action.StepListener;
import org.opensearch.action.admin.indices.create.CreateIndexRequest;
import org.opensearch.action.admin.indices.create.CreateIndexResponse;
import org.opensearch.action.bulk.BulkRequest;
Expand Down Expand Up @@ -80,7 +81,6 @@ public STIX2IOCFeedStore(
this.baseListener = listener;
batchSize = clusterService.getClusterSettings().get(SecurityAnalyticsSettings.BATCH_SIZE);
newActiveIndex = getNewActiveIndex(saTifSourceConfig.getId());
initSourceConfigIndexes();
}

@Override
Expand Down Expand Up @@ -113,7 +113,15 @@ public void storeIOCs(Map<IOC, UpdateAction> actionToIOCs) {
}

public void indexIocs(List<STIX2IOC> iocs) throws IOException {
bulkIndexIocs(iocs, newActiveIndex);
StepListener<Void> initSourceConfigIndexesListener = new StepListener<>();
initSourceConfigIndexes(initSourceConfigIndexesListener);
initSourceConfigIndexesListener.whenComplete(r -> {
bulkIndexIocs(iocs, newActiveIndex);
}, e -> {
log.error("Failed to init source config indexes");
baseListener.onFailure(e);
});

}

private void bulkIndexIocs(List<STIX2IOC> iocs, String activeIndex) throws IOException {
Expand Down Expand Up @@ -197,7 +205,7 @@ public SATIFSourceConfig getSaTifSourceConfig() {
return saTifSourceConfig;
}

private void initSourceConfigIndexes() {
private void initSourceConfigIndexes(StepListener<Void> stepListener) {
String iocIndexPattern = getAllIocIndexPatternById(saTifSourceConfig.getId());
initFeedIndex(newActiveIndex, ActionListener.wrap(
r -> {
Expand All @@ -214,10 +222,10 @@ private void initSourceConfigIndexes() {
((DefaultIocStoreConfig) saTifSourceConfig.getIocStoreConfig()).getIocToIndexDetails().add(iocToIndexDetails);
}
});

stepListener.onResponse(null);
}, e-> {
log.error("Failed to initialize the IOC index and save the IOCs", e);
baseListener.onFailure(e);
stepListener.onFailure(e);
}
));
}
Expand Down

0 comments on commit 2a28941

Please sign in to comment.