Gopal V created HIVE-13225:
------------------------------
Summary: LLAP: Stripe metadata cache holds unreachable keys
Key: HIVE-13225
URL: https://issues.apache.org/jira/browse/HIVE-13225
Project: Hive
Issue Type: Bug
Reporter: Gopal V
Assignee: Sergey Shelukhin
The Hash inspection reported that there were some unreachable keys in the
metadata hashmap.
{code}
for (...) {
if (hasFileId && metadataCache != null) {
stripeKey.stripeIx = stripeIx;
value = metadataCache.getStripeMetadata(stripeKey);
}
if (value == null || !value.hasAllIndexes(globalInc)) {
if (hasFileId && metadataCache != null) {
value = metadataCache.putStripeMetadata(value);
...
}
{code}
Means that the hashCode of the key changes after the put if there are > 1
stripes in the file.
{code}
public OrcStripeMetadata putStripeMetadata(OrcStripeMetadata metaData) {
....
OrcStripeMetadata val = stripeMetadata.putIfAbsent(metaData.getKey(),
metaData);
{code}
needs to make a copy of the Key, if it needs to preserve hash consistency.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)