This is an automated email from the ASF dual-hosted git repository. amashenkov pushed a commit to branch ignite-14743-row-formats in repository https://gitbox.apache.org/repos/asf/ignite-3.git
commit 4d31cb3dd2d37d6c8be17e6dcd5c59c5a29a8971 Author: Andrew Mashenkov <andrey.mashen...@gmail.com> AuthorDate: Thu Jun 24 15:11:38 2021 +0300 Minor. --- .../schema/marshaller/reflection/JavaSerializer.java | 13 ++++++++----- .../org/apache/ignite/internal/schema/row/ChunkFormat.java | 4 +--- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java b/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java index 57b5bdd..6b5f252 100644 --- a/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java +++ b/modules/schema/src/main/java/org/apache/ignite/internal/schema/marshaller/reflection/JavaSerializer.java @@ -85,7 +85,7 @@ public class JavaSerializer extends AbstractSerializer { ObjectStatistic keyStat = collectObjectStats(schema.keyColumns(), keyMarsh, key); ObjectStatistic valStat = collectObjectStats(schema.valueColumns(), valMarsh, val); - return new RowAssembler(schema, keyStat.maxChunkDataSize, keyStat.nonNullCols, valStat.maxChunkDataSize, valStat.nonNullCols); + return new RowAssembler(schema, keyStat.nonNullColsSize, keyStat.nonNullCols, valStat.nonNullColsSize, valStat.nonNullCols); } /** @@ -98,7 +98,7 @@ public class JavaSerializer extends AbstractSerializer { */ private ObjectStatistic collectObjectStats(Columns cols, Marshaller marsh, Object obj) { if (obj == null || !cols.hasVarlengthColumns()) - return new ObjectStatistic(0, 0); + return ObjectStatistic.ZERO_VARLEN_STATISTICS; int cnt = 0; int size = cols.fixsizeMaxLen(); @@ -138,16 +138,19 @@ public class JavaSerializer extends AbstractSerializer { * Object statistic. */ private static class ObjectStatistic { + /** Cached zero statistics. */ + static final ObjectStatistic ZERO_VARLEN_STATISTICS = new ObjectStatistic(0,0); + /** Non-null columns of varlen type. */ int nonNullCols; /** Length of all non-null columns of varlen types. */ - int maxChunkDataSize; + int nonNullColsSize; /** Constructor. */ - ObjectStatistic(int nonNullCols, int maxRowSize) { + ObjectStatistic(int nonNullCols, int nonNullColsSize) { this.nonNullCols = nonNullCols; - this.maxChunkDataSize = maxRowSize; + this.nonNullColsSize = nonNullColsSize; } } } diff --git a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ChunkFormat.java b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ChunkFormat.java index ba2588c..e18156f 100644 --- a/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ChunkFormat.java +++ b/modules/schema/src/main/java/org/apache/ignite/internal/schema/row/ChunkFormat.java @@ -149,9 +149,7 @@ abstract class ChunkFormat { * @return Chunk formatter regarding the provided flags. */ private static ChunkFormat fromFlags(byte chunkFlags) { - final int mode = chunkFlags & FORMAT_CODE_MASK; - - switch (mode) { + switch (chunkFlags & FORMAT_CODE_MASK) { case 1: return TINY; case 2: