phoenix-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From GitBox <...@apache.org>
Subject [GitHub] hnguyen08 opened a new pull request #443: PHOENIX-5136
Date Thu, 21 Feb 2019 00:47:41 GMT
hnguyen08 opened a new pull request #443: PHOENIX-5136
URL: https://github.com/apache/phoenix/pull/443
 
 
   `NULL` values for rows that are inserted using `UPSERT ON DUPLICATE KEY UPDATE` will be
stored in HBase as empty byte arrays.  `NULL` values represented by empty byte arrays are
not handled well in the `AndOrOperator.evaluate()`.  Any child expression of the `AndOrOperator`
that evaluates to `NULL` represented by empty byte array will get marked in `partialEvalState`,
thus having no effect when the `AndOrOperator` is re-evaluated against a different cell from
the same row.  This causes problems because the child expression *should* be re-evaluated
since it can still affect the final result.
   
   The fix ensures that `partialEvalState` is not marked if the child expression evaluates
to a NULL value represented by empty array.
   
   Let me know if this fix is acceptable or if there is a better approach to this problem!

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

Mime
View raw message