clintropolis commented on a change in pull request #11004:
URL: https://github.com/apache/druid/pull/11004#discussion_r597334321
##########
File path:
processing/src/test/java/org/apache/druid/segment/data/VSizeLongSerdeTest.java
##########
@@ -20,132 +20,352 @@
package org.apache.druid.segment.data;
+import com.google.common.primitives.Ints;
+import org.apache.druid.java.util.common.StringUtils;
import org.junit.Assert;
-import org.junit.Before;
import org.junit.Test;
+import org.junit.experimental.runners.Enclosed;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.nio.ByteBuffer;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.stream.Collectors;
+@RunWith(Enclosed.class)
public class VSizeLongSerdeTest
Review comment:
It's not too bad, low end doesn't seem very different at all
Before adding `Preconditions.checkArgument(value >= 0);` to every write:
```
Benchmark
(distribution) (encoding) (rows) (zeroProbability) Mode Cnt Score
Error Units
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-1 lz4-auto 5000000 0.0 avgt 2 97.509
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-2 lz4-auto 5000000 0.0 avgt 2 148.329
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-4 lz4-auto 5000000 0.0 avgt 2 171.316
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-8 lz4-auto 5000000 0.0 avgt 2 242.792
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-12 lz4-auto 5000000 0.0 avgt 2 249.412
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-16 lz4-auto 5000000 0.0 avgt 2 254.304
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-20 lz4-auto 5000000 0.0 avgt 2 309.736
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-24 lz4-auto 5000000 0.0 avgt 2 359.252
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uinform-32 lz4-auto 5000000 0.0 avgt 2 416.235
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-40 lz4-auto 5000000 0.0 avgt 2 492.306
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-48 lz4-auto 5000000 0.0 avgt 2 611.416
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-56 lz4-auto 5000000 0.0 avgt 2 734.503
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-64 lz4-auto 5000000 0.0 avgt 2 669.983
ms/op
```
after:
```
Benchmark
(distribution) (encoding) (rows) (zeroProbability) Mode Cnt Score
Error Units
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-1 lz4-auto 5000000 0.0 avgt 2 100.281
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-2 lz4-auto 5000000 0.0 avgt 2 148.947
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-4 lz4-auto 5000000 0.0 avgt 2 178.900
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-8 lz4-auto 5000000 0.0 avgt 2 264.585
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-12 lz4-auto 5000000 0.0 avgt 2 262.852
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-16 lz4-auto 5000000 0.0 avgt 2 265.252
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-20 lz4-auto 5000000 0.0 avgt 2 341.000
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-24 lz4-auto 5000000 0.0 avgt 2 368.859
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uinform-32 lz4-auto 5000000 0.0 avgt 2 456.571
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-40 lz4-auto 5000000 0.0 avgt 2 635.758
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-48 lz4-auto 5000000 0.0 avgt 2 831.513
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-56 lz4-auto 5000000 0.0 avgt 2 975.933
ms/op
ColumnarLongsEncodeDataFromGeneratorBenchmark.encodeColumn
uniform-64 lz4-auto 5000000 0.0 avgt 2 727.638
ms/op
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]