Hi Dejan,
Yeah, since rollups have "never" had an issue in the 18 months I've been working with the product, the first suspicion in a case like this is that it's not grouping on the right fields.
There is no global schema stored in Druid, each segment is on its own, and it is the union of all of the segment metadata that the Broker sees as the schema.
I don't know that the segment has an explicit schema ... however when you run a standard compaction job, the first pass of the job is to open up all segments and inspect the metadata. Then the job outputs a "revised" compaction spec ... that spec now includes the dimensionsSpec. So it must have a way of determining what the dimensions are.
Possibly PHP tries to interpret the schema and does not do it properly? Or maybe it assumes that if you don't explicitly state the dimensions then it is going to assume that all fields are a dimension, in order to avoid accidental data loss?
If there is doc on the PHP interface I would be interested in hearing if it mentions anything like this.
Thanks. John