Github user NamanRastogi commented on the issue:
https://github.com/apache/carbondata/pull/2850
@xuchuanyin
Since `CarbonReader` is iterator based, we can only read a line when user
wants. So, even if we keep the parallelism internally before the build method,
it will still read the file row by row (even though they are in different
threads) and reading multiple rows will still be accessed sequentially. Please
notice the test file **ConcurrentSdkReaderTest.java**, the reading is happening
in the thread itself, and multiple threads are reading the files (line-by-line)
concurrently.
The actual reading is happening inside the `CarbonReader.readNext()`
method, as long as that is sequential, the actual reading performance is not
going to get better, so we have to have `CarbonReader.readNext()` inside
different threads,.
---