hive-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gopal V (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HIVE-12315) vectorization_short_regress.q has a wrong result issue for a double calculation
Date Tue, 03 Nov 2015 03:35:27 GMT

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

Gopal V updated HIVE-12315:
---------------------------
    Description: 
I suspect it is related to the fancy optimizations in vectorized double divide that try to
quickly process the batch without checking each row for null.

{code}
 public static void setNullAndDivBy0DataEntriesDouble(
      DoubleColumnVector v, boolean selectedInUse, int[] sel, int n, DoubleColumnVector denoms)
{
    assert v.isRepeating || !denoms.isRepeating;
    v.noNulls = false;
    double[] vector = denoms.vector;
    if (v.isRepeating && (v.isNull[0] = (v.isNull[0] || vector[0] == 0))) {
      v.vector[0] = DoubleColumnVector.NULL_VALUE;
{code}


  was:I suspect it is related to the fancy optimizations in vectorized double divide that
try to quickly process the batch without checking each row for null.


> vectorization_short_regress.q has a wrong result issue for a double calculation
> -------------------------------------------------------------------------------
>
>                 Key: HIVE-12315
>                 URL: https://issues.apache.org/jira/browse/HIVE-12315
>             Project: Hive
>          Issue Type: Bug
>          Components: Vectorization
>            Reporter: Matt McCline
>            Assignee: Gopal V
>            Priority: Critical
>         Attachments: vectorization_short_regress_bug.q
>
>
> I suspect it is related to the fancy optimizations in vectorized double divide that try
to quickly process the batch without checking each row for null.
> {code}
>  public static void setNullAndDivBy0DataEntriesDouble(
>       DoubleColumnVector v, boolean selectedInUse, int[] sel, int n, DoubleColumnVector
denoms) {
>     assert v.isRepeating || !denoms.isRepeating;
>     v.noNulls = false;
>     double[] vector = denoms.vector;
>     if (v.isRepeating && (v.isNull[0] = (v.isNull[0] || vector[0] == 0))) {
>       v.vector[0] = DoubleColumnVector.NULL_VALUE;
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message