Thanks for filing the JIRA, James. This is actually working as designed.
See my comments here:
https://issues.apache.org/jira/browse/PHOENIX-2223?focusedCommentId=14727548&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14727548

On Wed, Sep 2, 2015 at 7:20 AM, James Heather <james.heat...@mendeley.com>
wrote:

> https://issues.apache.org/jira/browse/PHOENIX-2223
>
> James
>
>
> On 02/09/15 15:09, Jean-Marc Spaggiari wrote:
>
> Yep, now I can only totally agree with you.
>
> I think you should open a JIRA.
>
> 2015-09-02 10:05 GMT-04:00 James Heather <james.heat...@mendeley.com>:
>
>> I think this is enough to demonstrate that there's an issue. Deleting
>> without the 'where' clause returns (correctly) no rows affected when
>> there's nothing there. Using a '<=' operator in the 'where' clause seems to
>> report the right values (2 when it deletes 2 rows, 0 when it deletes 0
>> rows). Going back to '=' reports 1 row regardless.
>>
>> This is 4.3 on CDH5, by the way.
>>
>> 0: jdbc:phoenix:172.31.30.216> select * from names;
>> +------------------------------------------+----------------------+
>> |                    ID                    |         NAME         |
>> +------------------------------------------+----------------------+
>> +------------------------------------------+----------------------+
>> No rows selected (0.538 seconds)
>> 0: jdbc:phoenix:172.31.30.216> delete from names;
>> No rows affected (0.1 seconds)
>> 0: jdbc:phoenix:172.31.30.216> upsert into names (id, name) values (1, 
>> 'james');
>> 1 row affected (0.064 seconds)
>> 0: jdbc:phoenix:172.31.30.216> upsert into names (id, name) values (2, 
>> 'helen');
>> 1 row affected (0.05 seconds)
>> 0: jdbc:phoenix:172.31.30.216> upsert into names (id, name) values (3, 
>> 'naomi');
>> 1 row affected (0.052 seconds)
>> 0: jdbc:phoenix:172.31.30.216> upsert into names (id, name) values (4, 
>> 'reuben');
>> 1 row affected (0.053 seconds)
>> 0: jdbc:phoenix:172.31.30.216> delete from names where id<=2;
>> 2 rows affected (0.116 seconds)
>> 0: jdbc:phoenix:172.31.30.216> delete from names where id<=2;
>> No rows affected (0.098 seconds)
>> 0: jdbc:phoenix:172.31.30.216> delete from names where id=2;
>> 1 row affected (0.071 seconds)
>> 0: jdbc:phoenix:172.31.30.216>
>>
>>
>> James
>>
>>
>> On 02/09/15 14:57, Jean-Marc Spaggiari wrote:
>>
>> Is not the output the number of lines of the delete command, which is one
>> line (the command itself) and not the number of deleted lines?
>>
>> Can you try to put some rows into the table and do the delete again? Or
>> try without the where close too?
>>
>> 2015-09-02 9:54 GMT-04:00 James Heather < <james.heat...@mendeley.com>
>> james.heat...@mendeley.com>:
>>
>>> Any idea why sqlline would report 1 row affected when I delete no rows?
>>>
>>> 0: jdbc:phoenix:172.xx.xx.xxx> create table names (id bigint(20) primary
>>> key, name varchar(20));
>>> No rows affected (1.158 seconds)
>>> 0: jdbc:phoenix:172.xx.xx.xxx> delete from names where id=1;
>>> 1 row affected (0.204 seconds)
>>> 0: jdbc:phoenix:172.xx.xx.xxx>
>>>
>>> James
>>>
>>
>>
>>
>
>

Reply via email to