[ 
https://issues.apache.org/jira/browse/PHOENIX-4876?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16595542#comment-16595542
 ] 

William Shen commented on PHOENIX-4876:
---------------------------------------

Maybe this has to do with how Phoenix handles deletion by full primary key 
differently?
{code:java}
> EXPLAIN DELETE FROM TEST WHERE A = 0;

+--------------------+-----------------+----------------+--------------+

|       PLAN        | EST_BYTES_READ | EST_ROWS_READ | EST_INFO_TS |

+--------------------+-----------------+----------------+--------------+

| DELETE SINGLE ROW | 0               | 0              | 0            |

+--------------------+-----------------+----------------+--------------+

1 row selected (0.052 seconds)

> EXPLAIN DELETE FROM TEST WHERE B = 0;

+----------------------------------------------------+-----------------+----------------+--------------+

|                       PLAN                        | EST_BYTES_READ | 
EST_ROWS_READ | EST_INFO_TS |

+----------------------------------------------------+-----------------+----------------+--------------+

| DELETE ROWS                                        | null            | null   
        | null         |

| CLIENT 1-CHUNK PARALLEL 1-WAY FULL SCAN OVER TEST | null            | null    
       | null         |

|     SERVER FILTER BY B = 0                         | null            | null   
        | null         |

+----------------------------------------------------+-----------------+----------------+--------------+

3 rows selected (0.026 seconds)

> EXPLAIN DELETE FROM TEST WHERE A = 0 AND B = 0;

+--------------------------------------------------------------------------------+-----------------+----------------+----------------+

|                                     PLAN                                      
| EST_BYTES_READ | EST_ROWS_READ | EST_INFO_TS  |

+--------------------------------------------------------------------------------+-----------------+----------------+----------------+

| DELETE ROWS                                                                   
 | 71              | 1              | 1535487124089 |

| CLIENT 1-CHUNK 1 ROWS 71 BYTES PARALLEL 1-WAY POINT LOOKUP ON 1 KEY OVER TEST 
| 71              | 1              | 1535487124089 |

|     SERVER FILTER BY B = 0                                                    
 | 71              | 1              | 1535487124089 |

+--------------------------------------------------------------------------------+-----------------+----------------+----------------+

3 rows selected (0.024 seconds){code}

> Delete returns incorrect number of rows affected in some case
> -------------------------------------------------------------
>
>                 Key: PHOENIX-4876
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-4876
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 4.13.0
>            Reporter: William Shen
>            Priority: Minor
>
> Running Phoenix 4.13 and encountering deletion of a non-existing row 
> returning "1 row affected" instead of "No rows affected".
> Here is a simplified reproducible case:
> {code:java}
> > CREATE TABLE IF NOT EXISTS TEST (A BIGINT PRIMARY KEY, B BIGINT);
> No rows affected (2.524 seconds)
> > DELETE FROM TEST WHERE A = 0;
> 1 row affected (0.107 seconds)
> > DELETE FROM TEST WHERE B = 0;
> No rows affected (0.007 seconds)
> > DELETE FROM TEST WHERE A = 0 AND B = 0;
> No rows affected (0.007 seconds)
> > DELETE FROM TEST WHERE A = 0;
> 1 row affected (0.007 seconds)
> > SELECT * FROM TEST;
> +----+----+
> | A | B |
> +----+----+
> +----+----+
> No rows selected (0.023 seconds)
> > SELECT COUNT(*) FROM TEST;
> +-----------+
> | COUNT(1) |
> +-----------+
> | 0         |
> +-----------+
> 1 row selected (0.014 seconds){code}
> Expected: 
> {code:java}
> > DELETE FROM TEST WHERE A = 0;
> No rows affected{code}
> Actual:
> {code:java}
> > DELETE FROM TEST WHERE A = 0;
> 1 row affected{code}



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

Reply via email to