Github user manishgupta88 commented on a diff in the pull request: https://github.com/apache/carbondata/pull/2819#discussion_r225853518 --- Diff: core/src/main/java/org/apache/carbondata/core/datastore/page/encoding/compress/DirectCompressCodec.java --- @@ -95,10 +99,24 @@ public ColumnPage decode(byte[] input, int offset, int length) throws MemoryExce return LazyColumnPage.newPage(decodedPage, converter); } + @Override + public ColumnPage decodeAndFillVector(byte[] input, int offset, int length, --- End diff -- As per this flow first codec object is created and then from codec `createDecoder` method creates `LazyColummnPage`. `LazyColumnPage` constructor calls for filling the vector using the converter which is created by codec. So we remove `LazyColumnPage` and make the flow simpler
---