This is an automated email from the ASF dual-hosted git repository.
kharekartik pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pinot.git
The following commit(s) were added to refs/heads/master by this push:
new 82e5defee03 Fix QueryScheduler constructor using class name. (#16280)
82e5defee03 is described below
commit 82e5defee033d9cb687959d5cf21ba7270bddc1f
Author: Rajat Venkatesh <[email protected]>
AuthorDate: Fri Jul 4 17:29:20 2025 +0530
Fix QueryScheduler constructor using class name. (#16280)
* Fix QueryScheduler constructor using class name.
* Fix test
---
.../pinot/core/query/scheduler/QuerySchedulerFactory.java | 11 +++++++----
.../pinot/core/query/scheduler/QuerySchedulerFactoryTest.java | 4 ++--
2 files changed, 9 insertions(+), 6 deletions(-)
diff --git
a/pinot-core/src/main/java/org/apache/pinot/core/query/scheduler/QuerySchedulerFactory.java
b/pinot-core/src/main/java/org/apache/pinot/core/query/scheduler/QuerySchedulerFactory.java
index e7225598732..bf6be84be12 100644
---
a/pinot-core/src/main/java/org/apache/pinot/core/query/scheduler/QuerySchedulerFactory.java
+++
b/pinot-core/src/main/java/org/apache/pinot/core/query/scheduler/QuerySchedulerFactory.java
@@ -85,7 +85,8 @@ public class QuerySchedulerFactory {
break;
default:
scheduler =
- getQuerySchedulerByClassName(schedulerName, schedulerConfig,
queryExecutor, serverMetrics, latestQueryTime);
+ getQuerySchedulerByClassName(schedulerName, schedulerConfig,
queryExecutor, serverMetrics, latestQueryTime,
+ resourceUsageAccountant);
break;
}
@@ -105,13 +106,15 @@ public class QuerySchedulerFactory {
@Nullable
private static QueryScheduler getQuerySchedulerByClassName(String className,
PinotConfiguration schedulerConfig,
- QueryExecutor queryExecutor, ServerMetrics serverMetrics,
LongAccumulator latestQueryTime) {
+ QueryExecutor queryExecutor, ServerMetrics serverMetrics,
LongAccumulator latestQueryTime,
+ ThreadResourceUsageAccountant resourceUsageAccountant) {
try {
Constructor<?> constructor = PluginManager.get().loadClass(className)
.getDeclaredConstructor(PinotConfiguration.class,
QueryExecutor.class, ServerMetrics.class,
- LongAccumulator.class);
+ LongAccumulator.class, ThreadResourceUsageAccountant.class);
constructor.setAccessible(true);
- return (QueryScheduler) constructor.newInstance(schedulerConfig,
queryExecutor, serverMetrics, latestQueryTime);
+ return (QueryScheduler) constructor.newInstance(schedulerConfig,
queryExecutor, serverMetrics, latestQueryTime,
+ resourceUsageAccountant);
} catch (Exception e) {
LOGGER.error("Failed to instantiate scheduler class by name: {}",
className, e);
return null;
diff --git
a/pinot-core/src/test/java/org/apache/pinot/core/query/scheduler/QuerySchedulerFactoryTest.java
b/pinot-core/src/test/java/org/apache/pinot/core/query/scheduler/QuerySchedulerFactoryTest.java
index b28bf4ac8ec..9def39b51ee 100644
---
a/pinot-core/src/test/java/org/apache/pinot/core/query/scheduler/QuerySchedulerFactoryTest.java
+++
b/pinot-core/src/test/java/org/apache/pinot/core/query/scheduler/QuerySchedulerFactoryTest.java
@@ -72,9 +72,9 @@ public class QuerySchedulerFactoryTest {
public static final class TestQueryScheduler extends QueryScheduler {
public TestQueryScheduler(PinotConfiguration config, QueryExecutor
queryExecutor, ServerMetrics serverMetrics,
- LongAccumulator latestQueryTime) {
+ LongAccumulator latestQueryTime, ThreadResourceUsageAccountant
resourceUsageAccountant) {
super(config, queryExecutor,
- new UnboundedResourceManager(config, new
Tracing.DefaultThreadResourceUsageAccountant()), serverMetrics,
+ new UnboundedResourceManager(config, resourceUsageAccountant),
serverMetrics,
latestQueryTime);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]