Skip to content

Commit 15dab2e

Browse files
authored
Add protect logic to TopN's topNWorkerReportCycle (#9599)
1 parent e4ad258 commit 15dab2e

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

Diff for: oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/worker/TopNStreamProcessor.java

+9-2
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,6 @@ public class TopNStreamProcessor implements StreamProcessor<TopN> {
5454
@Getter
5555
private List<TopNWorker> persistentWorkers = new ArrayList<>();
5656
private Map<Class<? extends Record>, TopNWorker> workers = new HashMap<>();
57-
@Setter
5857
@Getter
5958
private int topNWorkerReportCycle = 10;
6059
@Setter
@@ -65,6 +64,13 @@ public static TopNStreamProcessor getInstance() {
6564
return PROCESSOR;
6665
}
6766

67+
public void setTopNWorkerReportCycle(final int topNWorkerReportCycle) {
68+
if (topNWorkerReportCycle < 1) {
69+
return;
70+
}
71+
this.topNWorkerReportCycle = topNWorkerReportCycle;
72+
}
73+
6874
@Override
6975
@SuppressWarnings("unchecked")
7076
public void create(ModuleDefineHolder moduleDefineHolder,
@@ -79,7 +85,8 @@ public void create(ModuleDefineHolder moduleDefineHolder,
7985
IRecordDAO recordDAO;
8086
try {
8187
recordDAO = storageDAO.newRecordDao(builder.getDeclaredConstructor().newInstance());
82-
} catch (InstantiationException | IllegalAccessException | NoSuchMethodException | InvocationTargetException e) {
88+
} catch (InstantiationException | IllegalAccessException | NoSuchMethodException |
89+
InvocationTargetException e) {
8390
throw new UnexpectedException(
8491
"Create " + stream.builder().getSimpleName() + " top n record DAO failure.", e);
8592
}

0 commit comments

Comments
 (0)