This is an automated email from the ASF dual-hosted git repository.
FrankChen021 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/druid.git
The following commit(s) were added to refs/heads/master by this push:
new e61e8202121 build: detect unused parameters and local variables
(#19821)
e61e8202121 is described below
commit e61e8202121cc15770afa5a843823d1823bcee4a
Author: Frank Chen <[email protected]>
AuthorDate: Tue Aug 4 10:20:02 2026 +0800
build: detect unused parameters and local variables (#19821)
* Add PMD checks for unused code
* Fix Rabbit seek buffer filtering
---
codestyle/pmd-ruleset.xml | 2 +
.../opentelemetry/OpenTelemetryEmitter.java | 2 +-
.../rabbitstream/RabbitStreamRecordSupplier.java | 7 +++-
.../RabbitStreamRecordSupplierTest.java | 46 ++++++++++++++++++++++
.../druid/storage/google/GoogleTaskLogs.java | 8 ++--
.../overlord/sampler/InputSourceSampler.java | 2 +-
.../supervisor/SeekableStreamSupervisor.java | 3 --
.../shuffle/LocalIntermediaryDataManager.java | 2 +-
.../org/apache/druid/common/utils/SocketUtil.java | 2 +-
.../druid/frame/processor/FrameProcessors.java | 4 +-
.../apache/druid/java/util/common/FileUtils.java | 2 +-
.../java/util/common/guava/ConcatSequence.java | 2 +-
.../realtime/appenderator/StreamAppenderator.java | 6 +--
.../loading/StrategicSegmentAssigner.java | 7 ++--
.../druid/sql/avatica/DruidAvaticaJsonHandler.java | 2 +-
.../sql/avatica/DruidAvaticaProtobufHandler.java | 2 +-
.../rule/logical/UnnestInputCleanupRule.java | 4 +-
.../sql/calcite/schema/InformationSchema.java | 9 ++---
18 files changed, 78 insertions(+), 34 deletions(-)
diff --git a/codestyle/pmd-ruleset.xml b/codestyle/pmd-ruleset.xml
index 7d7285d0a51..ef1858bf2d8 100644
--- a/codestyle/pmd-ruleset.xml
+++ b/codestyle/pmd-ruleset.xml
@@ -29,4 +29,6 @@ This ruleset defines the PMD rules for the Apache Druid
project.
<rule ref="category/java/codestyle.xml/UnnecessaryImport" />
<rule ref="category/java/codestyle.xml/TooManyStaticImports" />
+ <rule ref="category/java/bestpractices.xml/UnusedFormalParameter" />
+ <rule ref="category/java/bestpractices.xml/UnusedLocalVariable" />
</ruleset>
diff --git
a/extensions-contrib/opentelemetry-emitter/src/main/java/org/apache/druid/emitter/opentelemetry/OpenTelemetryEmitter.java
b/extensions-contrib/opentelemetry-emitter/src/main/java/org/apache/druid/emitter/opentelemetry/OpenTelemetryEmitter.java
index 2c2691e64f0..4fbb9a02f46 100644
---
a/extensions-contrib/opentelemetry-emitter/src/main/java/org/apache/druid/emitter/opentelemetry/OpenTelemetryEmitter.java
+++
b/extensions-contrib/opentelemetry-emitter/src/main/java/org/apache/druid/emitter/opentelemetry/OpenTelemetryEmitter.java
@@ -82,7 +82,7 @@ public class OpenTelemetryEmitter implements Emitter
{
Context opentelemetryContext = propagator.extract(Context.current(),
event, DRUID_CONTEXT_TEXT_MAP_GETTER);
- try (Scope scope = opentelemetryContext.makeCurrent()) {
+ try (Scope ignoredScope = opentelemetryContext.makeCurrent()) {
DateTime endTime = event.getCreatedTime();
DateTime startTime = endTime.minusMillis(event.getValue().intValue());
diff --git
a/extensions-contrib/rabbit-stream-indexing-service/src/main/java/org/apache/druid/indexing/rabbitstream/RabbitStreamRecordSupplier.java
b/extensions-contrib/rabbit-stream-indexing-service/src/main/java/org/apache/druid/indexing/rabbitstream/RabbitStreamRecordSupplier.java
index b2a2432fc9c..a23dd60a1d0 100644
---
a/extensions-contrib/rabbit-stream-indexing-service/src/main/java/org/apache/druid/indexing/rabbitstream/RabbitStreamRecordSupplier.java
+++
b/extensions-contrib/rabbit-stream-indexing-service/src/main/java/org/apache/druid/indexing/rabbitstream/RabbitStreamRecordSupplier.java
@@ -275,11 +275,14 @@ public class RabbitStreamRecordSupplier implements
RecordSupplier<String, Long,
{
this.stopBackgroundFetch();
// filter records in buffer and only retain ones whose partition was not
seeked
- BlockingQueue<OrderedPartitionableRecord<String, Long, ByteEntity>> newQ =
new LinkedBlockingQueue<>(
+ final Set<String> partitionIds = partitions.stream()
+
.map(StreamPartition::getPartitionId)
+ .collect(Collectors.toSet());
+ final BlockingQueue<OrderedPartitionableRecord<String, Long, ByteEntity>>
newQ = new LinkedBlockingQueue<>(
recordBufferSize);
queue.stream()
- .filter(x -> !streamBuilders.containsKey(x.getPartitionId()))
+ .filter(x -> !partitionIds.contains(x.getPartitionId()))
.forEachOrdered(newQ::offer);
queue = newQ;
diff --git
a/extensions-contrib/rabbit-stream-indexing-service/src/test/java/org/apache/druid/indexing/rabbitstream/RabbitStreamRecordSupplierTest.java
b/extensions-contrib/rabbit-stream-indexing-service/src/test/java/org/apache/druid/indexing/rabbitstream/RabbitStreamRecordSupplierTest.java
index 7c6beda72cb..70501b941ef 100644
---
a/extensions-contrib/rabbit-stream-indexing-service/src/test/java/org/apache/druid/indexing/rabbitstream/RabbitStreamRecordSupplierTest.java
+++
b/extensions-contrib/rabbit-stream-indexing-service/src/test/java/org/apache/druid/indexing/rabbitstream/RabbitStreamRecordSupplierTest.java
@@ -27,6 +27,7 @@ import com.rabbitmq.stream.Consumer;
import com.rabbitmq.stream.ConsumerBuilder;
import com.rabbitmq.stream.Environment;
import com.rabbitmq.stream.EnvironmentBuilder;
+import com.rabbitmq.stream.Message;
import com.rabbitmq.stream.MessageHandler;
import com.rabbitmq.stream.OffsetSpecification;
import com.rabbitmq.stream.codec.WrapperMessageBuilder;
@@ -386,6 +387,51 @@ public class RabbitStreamRecordSupplierTest extends
EasyMockSupport
}
+ @Test
+ public void testSeekRetainsBufferedRecordsForOtherPartitions()
+ {
+ final StreamPartition<String> partition0 = StreamPartition.of(STREAM,
PARTITION_ID0);
+ final StreamPartition<String> partition1 = StreamPartition.of(STREAM,
PARTITION_ID1);
+ final Set<StreamPartition<String>> partitions =
ImmutableSet.of(partition0, partition1);
+ final RabbitStreamRecordSupplier recordSupplier =
makeRecordSupplierWithMockedEnvironment(uri, null);
+
+
EasyMock.expect(environmentBuilder.uri("rabbitmq-stream://localhost:5552")).andReturn(environmentBuilder).once();
+ EasyMock.expect(environmentBuilder.build()).andStubReturn(environment);
+
+ final ConsumerBuilder consumerBuilder0 = createMock(ConsumerBuilder.class);
+
EasyMock.expect(environment.consumerBuilder()).andReturn(consumerBuilder0).once();
+
EasyMock.expect(consumerBuilder0.noTrackingStrategy()).andReturn(consumerBuilder0).once();
+
EasyMock.expect(consumerBuilder0.stream(PARTITION_ID0)).andReturn(consumerBuilder0).once();
+
EasyMock.expect(consumerBuilder0.messageHandler(recordSupplier)).andReturn(consumerBuilder0).once();
+
+ final ConsumerBuilder consumerBuilder1 = createMock(ConsumerBuilder.class);
+
EasyMock.expect(environment.consumerBuilder()).andReturn(consumerBuilder1).once();
+
EasyMock.expect(consumerBuilder1.noTrackingStrategy()).andReturn(consumerBuilder1).once();
+
EasyMock.expect(consumerBuilder1.stream(PARTITION_ID1)).andReturn(consumerBuilder1).once();
+
EasyMock.expect(consumerBuilder1.messageHandler(recordSupplier)).andReturn(consumerBuilder1).once();
+
+ replayAll();
+ recordSupplier.assign(partitions);
+
+ final WrapperMessageBuilder messageBuilder = new WrapperMessageBuilder();
+ messageBuilder.addData("record".getBytes(StandardCharsets.UTF_8));
+ final Message rabbitMessage = messageBuilder.build();
+ for (int i = 0; i < 50; i++) {
+ recordSupplier.handle(new MessageHandlerContext(i, 0, 0, PARTITION_ID0),
rabbitMessage);
+ recordSupplier.handle(new MessageHandlerContext(i, 0, 0, PARTITION_ID1),
rabbitMessage);
+ }
+
+ recordSupplier.seek(partition0, 10L);
+
+ final List<OrderedPartitionableRecord<String, Long, ByteEntity>> messages
= recordSupplier.poll(0);
+ Assert.assertEquals(50, messages.size());
+ Assert.assertTrue(messages.stream().allMatch(message ->
PARTITION_ID1.equals(message.getPartitionId())));
+
+ recordSupplier.close();
+ verifyAll();
+ }
+
+
@Test
public void testPollBothPartitions()
diff --git
a/extensions-core/google-extensions/src/main/java/org/apache/druid/storage/google/GoogleTaskLogs.java
b/extensions-core/google-extensions/src/main/java/org/apache/druid/storage/google/GoogleTaskLogs.java
index 2825f403335..f162fcb62b0 100644
---
a/extensions-core/google-extensions/src/main/java/org/apache/druid/storage/google/GoogleTaskLogs.java
+++
b/extensions-core/google-extensions/src/main/java/org/apache/druid/storage/google/GoogleTaskLogs.java
@@ -119,24 +119,24 @@ public class GoogleTaskLogs implements TaskLogs
public Optional<InputStream> streamTaskLog(final String taskid, final long
offset) throws IOException
{
final String taskKey = getTaskLogKey(taskid);
- return streamTaskFile(taskid, offset, taskKey);
+ return streamTaskFile(offset, taskKey);
}
@Override
public Optional<InputStream> streamTaskReports(String taskid) throws
IOException
{
final String taskKey = getTaskReportKey(taskid);
- return streamTaskFile(taskid, 0, taskKey);
+ return streamTaskFile(0, taskKey);
}
@Override
public Optional<InputStream> streamTaskStatus(String taskid) throws
IOException
{
final String taskKey = getTaskStatusKey(taskid);
- return streamTaskFile(taskid, 0, taskKey);
+ return streamTaskFile(0, taskKey);
}
- private Optional<InputStream> streamTaskFile(final String taskid, final long
offset, String taskKey)
+ private Optional<InputStream> streamTaskFile(final long offset, String
taskKey)
throws IOException
{
try {
diff --git
a/indexing-service/src/main/java/org/apache/druid/indexing/overlord/sampler/InputSourceSampler.java
b/indexing-service/src/main/java/org/apache/druid/indexing/overlord/sampler/InputSourceSampler.java
index 38a79684dcb..71afe07da87 100644
---
a/indexing-service/src/main/java/org/apache/druid/indexing/overlord/sampler/InputSourceSampler.java
+++
b/indexing-service/src/main/java/org/apache/druid/indexing/overlord/sampler/InputSourceSampler.java
@@ -127,7 +127,7 @@ public class InputSourceSampler
);
try (final CloseableIterator<InputRowListPlusRawValues> iterator =
reader.sample();
final IncrementalIndex index =
buildIncrementalIndex(nonNullSamplerConfig, nonNullDataSchema);
- final Closer closer1 = closer) {
+ final Closer ignoredCloser = closer) {
List<SamplerResponseRow> responseRows = new
ArrayList<>(nonNullSamplerConfig.getNumRows());
int numRowsIndexed = 0;
diff --git
a/indexing-service/src/main/java/org/apache/druid/indexing/seekablestream/supervisor/SeekableStreamSupervisor.java
b/indexing-service/src/main/java/org/apache/druid/indexing/seekablestream/supervisor/SeekableStreamSupervisor.java
index e2a5a4b1ccd..58f92ddaab7 100644
---
a/indexing-service/src/main/java/org/apache/druid/indexing/seekablestream/supervisor/SeekableStreamSupervisor.java
+++
b/indexing-service/src/main/java/org/apache/druid/indexing/seekablestream/supervisor/SeekableStreamSupervisor.java
@@ -1924,9 +1924,6 @@ public abstract class
SeekableStreamSupervisor<PartitionIdType, SequenceOffsetTy
}
}
- SeekableStreamIndexTaskTuningConfig ss =
spec.getSpec().getTuningConfig().convertToTaskTuningConfig();
- SeekableStreamSupervisorIOConfig oo = spec.getSpec().getIOConfig();
-
// store a limited number of parse exceptions, keeping the most recent ones
int parseErrorLimit =
spec.getSpec().getTuningConfig().convertToTaskTuningConfig().getMaxSavedParseExceptions()
*
spec.getSpec().getIOConfig().getTaskCount();
diff --git
a/indexing-service/src/main/java/org/apache/druid/indexing/worker/shuffle/LocalIntermediaryDataManager.java
b/indexing-service/src/main/java/org/apache/druid/indexing/worker/shuffle/LocalIntermediaryDataManager.java
index 1974b096be2..f45e442a4bb 100644
---
a/indexing-service/src/main/java/org/apache/druid/indexing/worker/shuffle/LocalIntermediaryDataManager.java
+++
b/indexing-service/src/main/java/org/apache/druid/indexing/worker/shuffle/LocalIntermediaryDataManager.java
@@ -301,7 +301,7 @@ public class LocalIntermediaryDataManager implements
IntermediaryDataManager
final BucketNumberedShardSpec<?> bucketNumberedShardSpec =
(BucketNumberedShardSpec<?>) segment.getShardSpec();
//noinspection unused
- try (final Closer resourceCloser = closer) {
+ try (final Closer ignoredCloser = closer) {
FileUtils.mkdirp(taskTempDir);
// Temporary compressed file. Will be removed when taskTempDir is
deleted.
diff --git
a/processing/src/main/java/org/apache/druid/common/utils/SocketUtil.java
b/processing/src/main/java/org/apache/druid/common/utils/SocketUtil.java
index 8eb38776e9e..0eac24c83ff 100644
--- a/processing/src/main/java/org/apache/druid/common/utils/SocketUtil.java
+++ b/processing/src/main/java/org/apache/druid/common/utils/SocketUtil.java
@@ -41,7 +41,7 @@ public class SocketUtil
int currPort = startPort;
while (currPort < 0xffff) {
- try (ServerSocket socket = new ServerSocket(currPort)) {
+ try (ServerSocket ignoredSocket = new ServerSocket(currPort)) {
return currPort;
}
catch (IOException e) {
diff --git
a/processing/src/main/java/org/apache/druid/frame/processor/FrameProcessors.java
b/processing/src/main/java/org/apache/druid/frame/processor/FrameProcessors.java
index 4e659b67cff..09331d9c207 100644
---
a/processing/src/main/java/org/apache/druid/frame/processor/FrameProcessors.java
+++
b/processing/src/main/java/org/apache/druid/frame/processor/FrameProcessors.java
@@ -77,8 +77,8 @@ public class FrameProcessors
{
if (cleanedUp.compareAndSet(false, true)) {
//noinspection EmptyTryBlock
- try (Closeable ignore1 = baggage;
- Closeable ignore2 = processor::cleanup) {
+ try (Closeable ignoredBaggage = baggage;
+ Closeable ignoredCleanup = processor::cleanup) {
// piggy-back try-with-resources semantics
}
}
diff --git
a/processing/src/main/java/org/apache/druid/java/util/common/FileUtils.java
b/processing/src/main/java/org/apache/druid/java/util/common/FileUtils.java
index f852786cc8b..7a302a5f4d2 100644
--- a/processing/src/main/java/org/apache/druid/java/util/common/FileUtils.java
+++ b/processing/src/main/java/org/apache/druid/java/util/common/FileUtils.java
@@ -264,7 +264,7 @@ public class FileUtils
final File tmpFile = new File(tmpDir, StringUtils.format(".%s.%s",
file.getName(), UUID.randomUUID()));
//noinspection unused
- try (final Closeable deleter = () ->
Files.deleteIfExists(tmpFile.toPath())) {
+ try (final Closeable ignoredDeleter = () ->
Files.deleteIfExists(tmpFile.toPath())) {
final T retVal;
try (
diff --git
a/processing/src/main/java/org/apache/druid/java/util/common/guava/ConcatSequence.java
b/processing/src/main/java/org/apache/druid/java/util/common/guava/ConcatSequence.java
index 3a02d84471f..70980931b82 100644
---
a/processing/src/main/java/org/apache/druid/java/util/common/guava/ConcatSequence.java
+++
b/processing/src/main/java/org/apache/druid/java/util/common/guava/ConcatSequence.java
@@ -142,7 +142,7 @@ public class ConcatSequence<T> implements Sequence<T>
@Override
public void close() throws IOException
{
- try (Closeable toClose = yielderYielder) {
+ try (Closeable ignoredYielder = yielderYielder) {
yielder.close();
}
}
diff --git
a/server/src/main/java/org/apache/druid/segment/realtime/appenderator/StreamAppenderator.java
b/server/src/main/java/org/apache/druid/segment/realtime/appenderator/StreamAppenderator.java
index 4b1d2facc40..d8290aaa9b0 100644
---
a/server/src/main/java/org/apache/druid/segment/realtime/appenderator/StreamAppenderator.java
+++
b/server/src/main/java/org/apache/druid/segment/realtime/appenderator/StreamAppenderator.java
@@ -521,7 +521,7 @@ public class StreamAppenderator implements Appenderator
tuningConfig.getIndexSpec(),
Collections.emptyList()
);
- bytesCurrentlyInMemory.addAndGet(calculateSinkMemoryInUsed(retVal));
+ bytesCurrentlyInMemory.addAndGet(calculateSinkMemoryInUsed());
// Add sink prior to announcing it, to ensure it is immediately
queryable.
addSink(identifier, retVal);
@@ -1526,7 +1526,7 @@ public class StreamAppenderator implements Appenderator
// i.e. those that haven't been persisted for *InMemory counters, or
pushed to deep storage for the total counter.
rowsCurrentlyInMemory.addAndGet(-sink.getNumRowsInMemory());
bytesCurrentlyInMemory.addAndGet(-sink.getBytesInMemory());
- bytesCurrentlyInMemory.addAndGet(-calculateSinkMemoryInUsed(sink));
+ bytesCurrentlyInMemory.addAndGet(-calculateSinkMemoryInUsed());
for (FireHydrant hydrant : sink) {
// Decrement memory used by all Memory Mapped Hydrant
if (!hydrant.equals(sink.getCurrHydrant())) {
@@ -1801,7 +1801,7 @@ public class StreamAppenderator implements Appenderator
return total;
}
- private int calculateSinkMemoryInUsed(Sink sink)
+ private int calculateSinkMemoryInUsed()
{
if (skipBytesInMemoryOverheadCheck) {
return 0;
diff --git
a/server/src/main/java/org/apache/druid/server/coordinator/loading/StrategicSegmentAssigner.java
b/server/src/main/java/org/apache/druid/server/coordinator/loading/StrategicSegmentAssigner.java
index f65ed4c46f4..3fde88fdea6 100644
---
a/server/src/main/java/org/apache/druid/server/coordinator/loading/StrategicSegmentAssigner.java
+++
b/server/src/main/java/org/apache/druid/server/coordinator/loading/StrategicSegmentAssigner.java
@@ -807,7 +807,7 @@ public class StrategicSegmentAssigner implements
SegmentActionHandler
// Drop as many replicas as possible from decommissioning servers
int remainingNumToDrop = numToDrop;
int numDropsQueued =
- dropReplicasFromServers(remainingNumToDrop, segment,
eligibleDyingServers.iterator(), tier);
+ dropReplicasFromServers(remainingNumToDrop, segment,
eligibleDyingServers.iterator());
// Drop replicas from active servers if required
if (numToDrop > numDropsQueued) {
@@ -816,7 +816,7 @@ public class StrategicSegmentAssigner implements
SegmentActionHandler
(useRoundRobinAssignment || eligibleLiveServers.size() <=
remainingNumToDrop)
? eligibleLiveServers.iterator()
: strategy.findServersToDropSegment(segment, new
ArrayList<>(eligibleLiveServers));
- numDropsQueued += dropReplicasFromServers(remainingNumToDrop, segment,
serverIterator, tier);
+ numDropsQueued += dropReplicasFromServers(remainingNumToDrop, segment,
serverIterator);
}
return numDropsQueued;
@@ -829,8 +829,7 @@ public class StrategicSegmentAssigner implements
SegmentActionHandler
private int dropReplicasFromServers(
int numToDrop,
DataSegment segment,
- Iterator<ServerHolder> serverIterator,
- String tier
+ Iterator<ServerHolder> serverIterator
)
{
int numDropsQueued = 0;
diff --git
a/sql/src/main/java/org/apache/druid/sql/avatica/DruidAvaticaJsonHandler.java
b/sql/src/main/java/org/apache/druid/sql/avatica/DruidAvaticaJsonHandler.java
index 2e80bfff4e7..3f20195de39 100644
---
a/sql/src/main/java/org/apache/druid/sql/avatica/DruidAvaticaJsonHandler.java
+++
b/sql/src/main/java/org/apache/druid/sql/avatica/DruidAvaticaJsonHandler.java
@@ -69,7 +69,7 @@ public class DruidAvaticaJsonHandler extends
DruidAvaticaHandler
String remoteAddr = Request.getRemoteAddr(request);
DruidMeta.setThreadLocalRemoteAddress(remoteAddr);
- try (Timer.Context ctx = this.requestTimer.start()) {
+ try (Timer.Context ignoredContext = this.requestTimer.start()) {
if
(AVATICA_PATH_NO_TRAILING_SLASH.equals(StringUtils.maybeRemoveTrailingSlash(requestURI)))
{
response.getHeaders().put("Content-Type",
"application/json;charset=utf-8");
diff --git
a/sql/src/main/java/org/apache/druid/sql/avatica/DruidAvaticaProtobufHandler.java
b/sql/src/main/java/org/apache/druid/sql/avatica/DruidAvaticaProtobufHandler.java
index 1aee0db7729..be646c10cf5 100644
---
a/sql/src/main/java/org/apache/druid/sql/avatica/DruidAvaticaProtobufHandler.java
+++
b/sql/src/main/java/org/apache/druid/sql/avatica/DruidAvaticaProtobufHandler.java
@@ -73,7 +73,7 @@ public class DruidAvaticaProtobufHandler extends
DruidAvaticaHandler
try {
if
(AVATICA_PATH_NO_TRAILING_SLASH.equals(StringUtils.maybeRemoveTrailingSlash(requestURI)))
{
- try (Timer.Context ctx = this.requestTimer.start()) {
+ try (Timer.Context ignoredContext = this.requestTimer.start()) {
if (!"POST".equals(request.getMethod())) {
response.setStatus(405);
response.write(
diff --git
a/sql/src/main/java/org/apache/druid/sql/calcite/rule/logical/UnnestInputCleanupRule.java
b/sql/src/main/java/org/apache/druid/sql/calcite/rule/logical/UnnestInputCleanupRule.java
index 6b3e7aac5ac..97c2b6981c8 100644
---
a/sql/src/main/java/org/apache/druid/sql/calcite/rule/logical/UnnestInputCleanupRule.java
+++
b/sql/src/main/java/org/apache/druid/sql/calcite/rule/logical/UnnestInputCleanupRule.java
@@ -83,7 +83,7 @@ public class UnnestInputCleanupRule extends RelOptRule
implements SubstitutionRu
newProjects.set(inputIndex, null);
- RexNode newUnnestExpr = unnestInput.accept(new
ExpressionPullerRexShuttle(newProjects, inputIndex));
+ RexNode newUnnestExpr = unnestInput.accept(new
ExpressionPullerRexShuttle(newProjects));
if (newUnnestExpr instanceof RexInputRef) {
// this won't make it simpler
@@ -142,7 +142,7 @@ public class UnnestInputCleanupRule extends RelOptRule
implements SubstitutionRu
{
private final List<RexNode> projects;
- private ExpressionPullerRexShuttle(List<RexNode> projects, int
replaceableIndex)
+ private ExpressionPullerRexShuttle(List<RexNode> projects)
{
this.projects = projects;
}
diff --git
a/sql/src/main/java/org/apache/druid/sql/calcite/schema/InformationSchema.java
b/sql/src/main/java/org/apache/druid/sql/calcite/schema/InformationSchema.java
index a9e3d2e31d2..94e11de1c72 100644
---
a/sql/src/main/java/org/apache/druid/sql/calcite/schema/InformationSchema.java
+++
b/sql/src/main/java/org/apache/druid/sql/calcite/schema/InformationSchema.java
@@ -377,8 +377,7 @@ public class InformationSchema extends AbstractSchema
return generateColumnMetadata(
schemaName,
tableName,
- table.getRowType(typeFactory),
- typeFactory
+ table.getRowType(typeFactory)
);
}
}
@@ -395,8 +394,7 @@ public class InformationSchema extends AbstractSchema
return generateColumnMetadata(
schemaName,
functionName,
-
viewMacro.apply(Collections.emptyList()).getRowType(typeFactory),
- typeFactory
+
viewMacro.apply(Collections.emptyList()).getRowType(typeFactory)
);
}
catch (Exception e) {
@@ -442,8 +440,7 @@ public class InformationSchema extends AbstractSchema
private Iterable<Object[]> generateColumnMetadata(
final String schemaName,
final String tableName,
- final RelDataType tableSchema,
- final RelDataTypeFactory typeFactory
+ final RelDataType tableSchema
)
{
return FluentIterable
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]