Skip to content

$entries and $all_entries system tables throw exceptions after deleted rows #24775

@ebyhr

Description

@ebyhr
TABLE "region$entries"; -- OK
DELETE FROM region WHERE regionkey = 0;
TABLE "region$entries";
Cannot invoke "org.apache.iceberg.types.Type.typeId()" because "type" is null
java.lang.NullPointerException: Cannot invoke "org.apache.iceberg.types.Type.typeId()" because "type" is null
	at org.apache.iceberg.types.Conversions.internalFromByteBuffer(Conversions.java:141)
	at org.apache.iceberg.types.Conversions.fromByteBuffer(Conversions.java:127)
	at io.trino.plugin.iceberg.EntriesTable.lambda$appendIntegerVarcharMap$7(EntriesTable.java:268)
	at java.base/java.util.Map.forEach(Map.java:733)
	at io.trino.plugin.iceberg.EntriesTable.lambda$appendIntegerVarcharMap$8(EntriesTable.java:265)
	at io.trino.spi.block.MapBlockBuilder.buildEntry(MapBlockBuilder.java:132)
	at io.trino.plugin.iceberg.EntriesTable.appendIntegerVarcharMap(EntriesTable.java:265)
	at io.trino.plugin.iceberg.EntriesTable.lambda$appendDataFile$3(EntriesTable.java:207)
	at io.trino.spi.block.RowBlockBuilder.buildEntry(RowBlockBuilder.java:111)
	at io.trino.plugin.iceberg.EntriesTable.appendDataFile(EntriesTable.java:152)
	at io.trino.plugin.iceberg.EntriesTable.addRow(EntriesTable.java:143)
	at io.trino.plugin.iceberg.BaseSystemTable.lambda$addRows$2(BaseSystemTable.java:105)
	at java.base/java.lang.Iterable.forEach(Iterable.java:75)
	at io.trino.plugin.iceberg.BaseSystemTable.addRows(BaseSystemTable.java:105)
	at io.trino.plugin.iceberg.BaseSystemTable.lambda$buildPages$1(BaseSystemTable.java:93)
	at java.base/java.lang.Iterable.forEach(Iterable.java:75)
	at io.trino.plugin.iceberg.BaseSystemTable.buildPages(BaseSystemTable.java:93)
	at io.trino.plugin.iceberg.BaseSystemTable.pageSource(BaseSystemTable.java:78)
	at io.trino.plugin.base.classloader.ClassLoaderSafeSystemTable.pageSource(ClassLoaderSafeSystemTable.java:88)
	at io.trino.connector.system.SystemPageSourceProvider.createPageSource(SystemPageSourceProvider.java:109)
	at io.trino.split.PageSourceManager$PageSourceProviderInstance.createPageSource(PageSourceManager.java:79)
	at io.trino.operator.TableScanOperator.getOutput(TableScanOperator.java:265)
	at io.trino.operator.Driver.processInternal(Driver.java:403)
	at io.trino.operator.Driver.lambda$process$8(Driver.java:306)
	at io.trino.operator.Driver.tryWithLock(Driver.java:709)
	at io.trino.operator.Driver.process(Driver.java:298)
	at io.trino.operator.Driver.processForDuration(Driver.java:269)
	at io.trino.execution.SqlTaskExecution$DriverSplitRunner.processFor(SqlTaskExecution.java:890)
	at io.trino.execution.executor.dedicated.SplitProcessor.run(SplitProcessor.java:77)
	at io.trino.execution.executor.dedicated.TaskEntry$VersionEmbedderBridge.lambda$run$0(TaskEntry.java:201)
	at io.trino.$gen.Trino_testversion____20250123_012244_71.run(Unknown Source)
	at io.trino.execution.executor.dedicated.TaskEntry$VersionEmbedderBridge.run(TaskEntry.java:202)
	at io.trino.execution.executor.scheduler.FairScheduler.runTask(FairScheduler.java:177)
	at io.trino.execution.executor.scheduler.FairScheduler.lambda$submit$0(FairScheduler.java:164)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
	at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:131)
	at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:75)
	at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:82)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
	at java.base/java.lang.Thread.run(Thread.java:1575)

Metadata

Metadata

Assignees

Labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions