1 Star 0 Fork 13

yangzhenyu/openjdk-21

forked from src-openEuler/openjdk-21 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
Backport-JDK-8338938-The-result-of-the-combine-metho.patch 3.42 KB
一键复制 编辑 原始数据 按行查看 历史
wuyafang 提交于 2024-10-14 11:38 . sync bishengjdk21 patches
Subject: Backport JDK-8338938 The result of the combine method of SettingsControl is not used
---
.../classes/jdk/jfr/internal/Control.java | 4 +--
.../jfr/api/settings/TestFilterEvents.java | 31 ++++++++++++++++++-
2 files changed, 32 insertions(+), 3 deletions(-)
diff --git a/src/jdk.jfr/share/classes/jdk/jfr/internal/Control.java b/src/jdk.jfr/share/classes/jdk/jfr/internal/Control.java
index 339346bd6..fbc4d4c91 100644
--- a/src/jdk.jfr/share/classes/jdk/jfr/internal/Control.java
+++ b/src/jdk.jfr/share/classes/jdk/jfr/internal/Control.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2022, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2016, 2024, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -136,7 +136,7 @@ final class Control {
@Override
public String run() {
try {
- delegate.combine(Collections.unmodifiableSet(values));
+ return delegate.combine(Collections.unmodifiableSet(values));
} catch (Throwable t) {
// Prevent malicious user to propagate exception callback in the wrong context
Logger.log(LogTag.JFR_SETTING, LogLevel.WARN, "Exception occurred when combining " + values + " for " + getClass());
diff --git a/test/jdk/jdk/jfr/api/settings/TestFilterEvents.java b/test/jdk/jdk/jfr/api/settings/TestFilterEvents.java
index 42bfc3176..67619fb10 100644
--- a/test/jdk/jdk/jfr/api/settings/TestFilterEvents.java
+++ b/test/jdk/jdk/jfr/api/settings/TestFilterEvents.java
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2018, 2024, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -70,6 +70,7 @@ public class TestFilterEvents {
continuous.enable(HTTPGetEvent.class).with("threadNames", "\"unused-threadname-1\"");
assertEquals(0, makeProfilingRecording("\"unused-threadname-2\""));
assertEquals(1, makeProfilingRecording("\"" + Thread.currentThread().getName() + "\""));
+ assertEquals(2, makeCombineControl());
continuous.close();
}
@@ -94,4 +95,32 @@ public class TestFilterEvents {
}
}
+ private static int makeCombineControl() throws Exception {
+ try (Recording r1 = new Recording()) {
+ r1.enable(HTTPPostEvent.class).with("uriFilter", "https://www.example.com/list");
+ r1.start();
+
+ try (Recording r2 = new Recording()) {
+ r2.enable(HTTPPostEvent.class).with("uriFilter", "https://www.example.com/get");
+ r2.start();
+
+ HTTPPostEvent e1 = new HTTPPostEvent();
+ e1.uri = "https://www.example.com/list";
+ e1.commit();
+
+ HTTPPostEvent e2 = new HTTPPostEvent();
+ e2.uri = "https://www.example.com/get";
+ e2.commit();
+
+ HTTPPostEvent e3 = new HTTPPostEvent();
+ e3.uri = "https://www.example.com/put";
+ e3.commit();
+ }
+
+ r1.stop();
+
+ return Events.fromRecording(r1).size();
+ }
+ }
+
}
--
2.33.0
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/dev11101/openjdk-21.git
[email protected]:dev11101/openjdk-21.git
dev11101
openjdk-21
openjdk-21
master

搜索帮助