diff --git a/core/trino-main/src/test/java/io/trino/block/TestBlockBuilder.java b/core/trino-main/src/test/java/io/trino/block/TestBlockBuilder.java index cd2849579cfd7..366eae8574e9a 100644 --- a/core/trino-main/src/test/java/io/trino/block/TestBlockBuilder.java +++ b/core/trino-main/src/test/java/io/trino/block/TestBlockBuilder.java @@ -25,6 +25,7 @@ import java.util.List; import java.util.concurrent.atomic.AtomicBoolean; +import java.util.stream.IntStream; import static io.trino.block.BlockAssertions.assertBlockEquals; import static io.trino.spi.type.BigintType.BIGINT; @@ -72,13 +73,15 @@ public void testNewBlockBuilderLike() pageBuilder.declarePosition(); } - PageBuilder newPageBuilder = pageBuilder.newPageBuilderLike(); + List originalBlockBuilders = IntStream.range(0, channels.size()).mapToObj(pageBuilder::getBlockBuilder).toList(); + pageBuilder.reset(); for (int i = 0; i < channels.size(); i++) { // we should get new block builder instances - assertThat(pageBuilder.getBlockBuilder(i)) - .isNotEqualTo(newPageBuilder.getBlockBuilder(i)); - assertThat(newPageBuilder.getBlockBuilder(i).getPositionCount()).isEqualTo(0); - assertThat(newPageBuilder.getBlockBuilder(i).getRetainedSizeInBytes() < pageBuilder.getBlockBuilder(i).getRetainedSizeInBytes()).isTrue(); + assertThat(originalBlockBuilders.get(i)) + .isNotEqualTo(pageBuilder.getBlockBuilder(i)); + assertThat(pageBuilder.getBlockBuilder(i).getPositionCount()).isEqualTo(0); + assertThat(pageBuilder.getBlockBuilder(i).getSizeInBytes()).isLessThan(originalBlockBuilders.get(i).getSizeInBytes()); + assertThat(pageBuilder.getBlockBuilder(i).getRetainedSizeInBytes()).isLessThan(originalBlockBuilders.get(i).getRetainedSizeInBytes()); } } diff --git a/core/trino-spi/pom.xml b/core/trino-spi/pom.xml index 9bfdfeecda3b1..dbf576be2d44e 100644 --- a/core/trino-spi/pom.xml +++ b/core/trino-spi/pom.xml @@ -342,6 +342,10 @@ method io.trino.spi.block.BlockBuilder io.trino.spi.type.UuidType::createBlockBuilder(io.trino.spi.block.BlockBuilderStatus, int, int) method io.trino.spi.block.BlockBuilder io.trino.spi.type.Type::createBlockBuilder(io.trino.spi.block.BlockBuilderStatus, int, int) @ io.trino.spi.type.UuidType + + java.method.removed + method io.trino.spi.PageBuilder io.trino.spi.PageBuilder::newPageBuilderLike() + diff --git a/core/trino-spi/src/main/java/io/trino/spi/PageBuilder.java b/core/trino-spi/src/main/java/io/trino/spi/PageBuilder.java index 78526ff4b78d3..ea19cdd324d9f 100644 --- a/core/trino-spi/src/main/java/io/trino/spi/PageBuilder.java +++ b/core/trino-spi/src/main/java/io/trino/spi/PageBuilder.java @@ -71,17 +71,6 @@ private PageBuilder(int initialExpectedEntries, int maxPageBytes, List