[
https://issues.apache.org/jira/browse/HIVE-27238?focusedWorklogId=859871&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-859871
]
ASF GitHub Bot logged work on HIVE-27238:
-----------------------------------------
Author: ASF GitHub Bot
Created on: 01/May/23 14:32
Start Date: 01/May/23 14:32
Worklog Time Spent: 10m
Work Description: scarlin-cloudera commented on PR #4212:
URL: https://github.com/apache/hive/pull/4212#issuecomment-1529778518
@zabetak : I'm not sure what is meant by a micro-benchmark. Can you
explain what is needed here or provide an example from a previous commit?
As for not being thread-safe: Not sure what you mean here. The "get" is
wrapped in a "synchronized" call. I don't think the underlying Calcite classes
will have any thread safety issues when I did the code inspection within
Calcite, but admittedly, I'm not a Calcite expert.
But without this code (as I hope to show with the micro-benchmarks
perhaps), we are regenerating Calcite classes which they specifically try to
avoid. It does add to the compile time as I have seen through my own private
benchmarks.
I do realize this is risky though. Do we have any framework within Hive
that does concurrency testing? If not, perhaps that is something I should
consider adding.
Issue Time Tracking
-------------------
Worklog Id: (was: 859871)
Time Spent: 50m (was: 40m)
> Avoid Calcite Code generation for RelMetaDataProvider on every query
> --------------------------------------------------------------------
>
> Key: HIVE-27238
> URL: https://issues.apache.org/jira/browse/HIVE-27238
> Project: Hive
> Issue Type: Improvement
> Components: HiveServer2
> Reporter: Steve Carlin
> Priority: Major
> Labels: pull-request-available
> Time Spent: 50m
> Remaining Estimate: 0h
>
> In CalcitePlanner, we are instantiating a new CachingRelMetadataProvider on
> every query. Within the Calcite code, they keep the provider key to prevent
> a new MetadataHandler class from being created. But by generating a new
> provider, the cache never gets a hit so we keep instantiating new
> MetadataHandlers.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)