You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Eugene Koifman (JIRA)" <ji...@apache.org> on 2018/11/01 21:07:00 UTC

[jira] [Updated] (HIVE-20856) ValidReaderWriteIdList() is not valid in most places

     [ https://issues.apache.org/jira/browse/HIVE-20856?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eugene Koifman updated HIVE-20856:
----------------------------------
    Description: 
Most of the time it's something like this:
{code:java|title=VectorizedOrcAcidRowBatchReader.SortMergedDeleteEventRegistry}
String txnString = conf.get(ValidWriteIdList.VALID_WRITEIDS_KEY);
this.validWriteIdList = (txnString == null) ? 
       new ValidReaderWriteIdList() : new ValidReaderWriteIdList(txnString);
{code}
or
{code:java|title=OrcInputFormat.Context}
String value = conf.get(ValidWriteIdList.VALID_WRITEIDS_KEY);
writeIdList = value == null ? new ValidReaderWriteIdList() : new ValidReaderWriteIdList(value);
{code}

and many others but {{ValidReaderWriteIdList()}}(no arg c'tor) creates a write ID list that considers every base/delta valid - this unlikely to be the correct for a general read of acid data.

  was:
Most of the time it's something like this:
{code:java}
String txnString = conf.get(ValidWriteIdList.VALID_WRITEIDS_KEY);
this.validWriteIdList = (txnString == null) ? 
       new ValidReaderWriteIdList() : new ValidReaderWriteIdList(txnString);
{code}

but ValidReaderWriteIdList() (no arg c'tor) creates a write ID list that considers every base/delta valid - this unlikely to be the correct for a general read of acid data.


> ValidReaderWriteIdList() is not valid in most places
> ----------------------------------------------------
>
>                 Key: HIVE-20856
>                 URL: https://issues.apache.org/jira/browse/HIVE-20856
>             Project: Hive
>          Issue Type: Bug
>          Components: Transactions
>    Affects Versions: 3.0.0
>            Reporter: Eugene Koifman
>            Priority: Major
>
> Most of the time it's something like this:
> {code:java|title=VectorizedOrcAcidRowBatchReader.SortMergedDeleteEventRegistry}
> String txnString = conf.get(ValidWriteIdList.VALID_WRITEIDS_KEY);
> this.validWriteIdList = (txnString == null) ? 
>        new ValidReaderWriteIdList() : new ValidReaderWriteIdList(txnString);
> {code}
> or
> {code:java|title=OrcInputFormat.Context}
> String value = conf.get(ValidWriteIdList.VALID_WRITEIDS_KEY);
> writeIdList = value == null ? new ValidReaderWriteIdList() : new ValidReaderWriteIdList(value);
> {code}
> and many others but {{ValidReaderWriteIdList()}}(no arg c'tor) creates a write ID list that considers every base/delta valid - this unlikely to be the correct for a general read of acid data.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)