Exception - GroupBy query on historical for GroupByMergingQueryRunnerV2

Hi Expert,

I am running groupBy query and getting below exception.

04/Jul/2017 19:39:11,546- GroupByMergingQueryRunnerV2: Exception with one of the sequences!

java.lang.IllegalArgumentException

at java.nio.Buffer.limit(Buffer.java:275) ~[?:1.8.0_131]

at io.druid.query.groupby.epinephelinae.BufferGrouper.growIfPossible(BufferGrouper.java:417) ~[druid-processing-0.10.0.jar:0.10.0]

at io.druid.query.groupby.epinephelinae.BufferGrouper.aggregate(BufferGrouper.java:176) ~[druid-processing-0.10.0.jar:0.10.0]

at io.druid.query.groupby.epinephelinae.BufferGrouper.aggregate(BufferGrouper.java:212) ~[druid-processing-0.10.0.jar:0.10.0]

at io.druid.query.groupby.epinephelinae.GroupByQueryEngineV2$GroupByEngineIterator.next(GroupByQueryEngineV2.java:302) ~[druid-processing-0.10.0.jar:0.10.0]

at io.druid.query.groupby.epinephelinae.GroupByQueryEngineV2$GroupByEngineIterator.next(GroupByQueryEngineV2.java:202) ~[druid-processing-0.10.0.jar:0.10.0]

My historical node 60 GB and 16 CPU.

Am I need to config something for merging GroupBy query? Can you suggest all config for above node config?

Segment size is 2 GB per hour.

Any suggestion will be helpfull.

Thanks,

Jitesh

This looks like a bug that has been fixed in master, that occurs when you have large-ish processing buffers. You could try updating to 0.10.1-rc1 and see if this still happens – please let us know if it does.

Thanks for the reply.

can you please share libraries location for download this version of druid-0.11.0-SNAPSHOT?

Thanks,

Jitesh

Hey Jitesh,

Do you still see the same problem with 0.10.1-rc1 (http://druid.io/downloads.html)? To use 0.11.0-SNAPSHOT, you should build by yourself.

Jihoon

2017년 7월 5일 (수) 오후 5:26, Jitesh Mogre jitumogre@gmail.com님이 작성:

Thank you Jihoon,

I was thinking to check with 0.11.0-SNAPSHOT which is in master.

But I will use 0.10.1-rc1 (http://druid.io/downloads.html) for historical node to check this exceptions.

Anyway, I want to store extensions libraries for sqlserver and scan query. I have to build 0.10.1-rc1.

What you will suggest for building these jar master or 0.10.1?

Can I use druid-0.10.0 extensions **sqlserver **and scan query libraries for 0.10.1-rc1 version?

Thanks,

Jitesh

If I could use druid-0.10.0 extensions **sqlserver **and scan query libraries for 0.10.1-rc1 version, then how can I notify in main pom.xml?

I think both extensions of 0.10.0 should work with 0.10.1-rc1.

What do you mean by “how can I notify in main pom.xml”? BTW, you can download extensions of the specific version using pull-deps (http://druid.io/docs/latest/operations/including-extensions.html).

2017년 7월 5일 (수) 오후 6:45, Jitesh Mogre jitumogre@gmail.com님이 작성:

Thank you very much Gian / Jihoon…

It works fully with some heavy data also.

It was asking for druid.query.groupBy.maxOnDiskStorage.

I increase diskStorage and working fine for me.

I use druid-0.10.0 extensions for deploying druid-0.10.1.rc1

I gave druid.query.groupBy.maxOnDiskStorage=100000000

what u suggest maxOnDiskStorage?

Once Again thank you very much for fixing this issue in new version

Thanks,

JItesh

I’m not sure what the best number is for maxOnDiskStorage, but I’ll try to suggest.

The above error looks that your hash table byte size is hitting 2GB. The hash table can have at most Integer.MAX_VALUE elements, and once the hash table is full and cannot be increased, druid tries to spill data on disk. maxOnDiskStorage is the max size of spilled data in bytes. So, I think it should be larger than at least 2GB and would be good if it can be much larger.

Jihoon

2017년 7월 5일 (수) 오후 8:15, Jitesh Mogre jitumogre@gmail.com님이 작성:

Cool.

I will try with this.

Thank you very much