Github user amansinha100 commented on the issue:
https://github.com/apache/drill/pull/671
It is quite likely that the CachingRelMetadataProvider is meant for this.
Based on the stack trace, there are multiple instances of "at
org.apache.calcite.rel.metadata.CachingRelMetadataProvider$CachingInvocationHandler.invoke(CachingRelMetadataProvider.java:132)"
and that line # indicates that there was either a cache miss or the entry was
stale. So, the caching provider does in fact get used but then subsequently
gets stuck in the apply() method of the ReflectiveRelMetadataProvider. I did
not attempt to debug why it got stuck there...partly because I am not very
familiar with the way reflection is used in this provider. Hence, my fix is an
attempt to circumvent the issue.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---