I have a question about the priority between reflections ! how the optimizer do choose when there multiple reflections that can respond !
I have a PDS with a reflection on it
I created a VDS (based on the previous PDS), and I added some calculated columns on it, then I created a reflections on this VDS (with included the derived columns)
the good thing, is that the VDS reflection is accelerated by the PDS reflections
and when I do a select from the VDS, the query is accelerated by the VDS reflection
But, when I do a select from the VDS join another PDS (no reflection defined on it)
the query is not accelerated by the VDS reflections any more but by the PDS reflection ?
And I can’t understand why is it so ?
We do costing of using different reflection during the planning phase. We are also working on some fixes similar to the problem you are describing. Would you be able to send us the job profile for the the query that you think should have used the reflection on the VDS but it ends up substituting the one on the PDS?
Share Dremio query profile
here is the job profile
1e1829e3-955f-468a-addb-1e13b023fe01.zip (67,3 Ko)
Sorry @ssky, forgot to mention that we need verbose profile to confirm the behavior we are suspecting. Click on admin-support-support key-enter “planner.verbose_profile”-click show-enable-save, run the query again and send us the profile again
As requested here’s the verbose job profile
a30fc7f6-0a66-4ef9-960e-ccc77c72e94d.zip (67,3 Ko)