[jira] [Commented] (CALCITE-1181) FetchResponse always return no rows

2016-05-06 Thread Francis Chuang (JIRA)

[ 
https://issues.apache.org/jira/browse/CALCITE-1181?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15273679#comment-15273679
 ] 

Francis Chuang commented on CALCITE-1181:
-

I attempted to implement {{prepareAndExecute}} in my golang driver and hit this 
issue again. I was able to narrow the problem down with my tests.

This issue does not exist if you use the "long way": {{PrepareRequest}}, 
{{ExecuteRequest}}, {{FetchRequest}}.

The problem only exists if you attempt to use {{prepareAndExecute}} and then 
use {{FetchRequest}} to fetch more rows.

The current work around is to use the "long way" when querying.

> FetchResponse always return no rows
> ---
>
> Key: CALCITE-1181
> URL: https://issues.apache.org/jira/browse/CALCITE-1181
> Project: Calcite
>  Issue Type: Bug
>  Components: avatica
>Affects Versions: avatica-1.7.1
> Environment: HBase 1.1 and Phoenix 4.7.0, HBase 1.1 and Phoenix 
> 4.8.0-SNAPSHOT
>Reporter: Francis Chuang
>Assignee: Julian Hyde
>
> Assuming I have a table called my_table which is created and seeded like so:
> {code:sql}
> CREATE TABLE my_table (k BIGINT PRIMARY KEY, v VARCHAR) TRANSACTIONAL=true
> UPSERT INTO my_table VALUES (1,'A')
> UPSERT INTO my_table VALUES (2,'B')
> {code}
> I have 2 rows in the table. If I query the table using SELECT * FROM 
> my_table, and request a maxRowCount of 1, using FetchRequest to request 
> further rows always returns 0 rows.
> For ease of reproduction, I have included CURL commands (avatica will need to 
> have serialization set to JSON):
> {code}
> curl localhost:8765 -XPOST --data '{"request": 
> "openConnection","connectionId": "my-conn"}'
> curl localhost:8765 -XPOST --data '{"request": 
> "createStatement","connectionId": "my-conn"}'
> curl localhost:8765 -XPOST --data '{"request": 
> "prepareAndExecute","connectionId": "my-conn","statementId": 12345,"sql": 
> "SELECT * FROM my_table","maxRowCount": 1}' # update the statementId
> curl localhost:8765 -XPOST --data '{"request": "fetch","connectionId": 
> "my-conn","statementId": 12345,"offset": 0,"fetchMaxRowCount": 1}' # update 
> the statementId
> {code}



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


[jira] [Commented] (CALCITE-1181) FetchResponse always return no rows

2016-04-04 Thread Josh Elser (JIRA)

[ 
https://issues.apache.org/jira/browse/CALCITE-1181?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15224254#comment-15224254
 ] 

Josh Elser commented on CALCITE-1181:
-

{{"offset": 0}} is also not quite correct. Since you already got the first 
"frame" (batch) of results, you'd want {{"offset": 1}}. I'm not sure at a 
glance why you wouldn't get back the first result twice though (or why {{done}} 
would be true).

Any interest in writing up a unit case which shows this? It should be fairly 
easy to put together if you [have an 
example|https://github.com/apache/calcite/blob/master/avatica/server/src/test/java/org/apache/calcite/avatica/RemoteDriverTest.java#L1458].
 This should help us track down the issue to Avatica specifically. If nothing 
else, we might be able to find out what is going wrong.

> FetchResponse always return no rows
> ---
>
> Key: CALCITE-1181
> URL: https://issues.apache.org/jira/browse/CALCITE-1181
> Project: Calcite
>  Issue Type: Bug
>  Components: avatica
>Affects Versions: avatica-1.7.1
> Environment: HBase 1.1 and Phoenix 4.7.0, HBase 1.1 and Phoenix 
> 4.8.0-SNAPSHOT
>Reporter: Francis Chuang
>Assignee: Julian Hyde
>
> Assuming I have a table called my_table which is created and seeded like so:
> {code:sql}
> CREATE TABLE my_table (k BIGINT PRIMARY KEY, v VARCHAR) TRANSACTIONAL=true
> UPSERT INTO my_table VALUES (1,'A')
> UPSERT INTO my_table VALUES (2,'B')
> {code}
> I have 2 rows in the table. If I query the table using SELECT * FROM 
> my_table, and request a maxRowCount of 1, using FetchRequest to request 
> further rows always returns 0 rows.
> For ease of reproduction, I have included CURL commands (avatica will need to 
> have serialization set to JSON):
> {code}
> curl localhost:8765 -XPOST --data '{"request": 
> "openConnection","connectionId": "my-conn"}'
> curl localhost:8765 -XPOST --data '{"request": 
> "createStatement","connectionId": "my-conn"}'
> curl localhost:8765 -XPOST --data '{"request": 
> "prepareAndExecute","connectionId": "my-conn","statementId": 12345,"sql": 
> "SELECT * FROM my_table","maxRowCount": 1}' # update the statementId
> curl localhost:8765 -XPOST --data '{"request": "fetch","connectionId": 
> "my-conn","statementId": 12345,"offset": 0,"fetchMaxRowCount": 1}' # update 
> the statementId
> {code}



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


[jira] [Commented] (CALCITE-1181) FetchResponse always return no rows

2016-04-04 Thread Josh Elser (JIRA)

[ 
https://issues.apache.org/jira/browse/CALCITE-1181?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15224232#comment-15224232
 ] 

Josh Elser commented on CALCITE-1181:
-

bq. In prepareAndExecute, I get 1 row back (the select statement should return 
2 rows) and done is false. When I use fetch to fetch the remaining row, done is 
true, but the array of rows is empty.

You got back one row because you requested {{"maxRowCount": 1}} in your 
{{prepareAndExecute}} request.

> FetchResponse always return no rows
> ---
>
> Key: CALCITE-1181
> URL: https://issues.apache.org/jira/browse/CALCITE-1181
> Project: Calcite
>  Issue Type: Bug
>  Components: avatica
>Affects Versions: avatica-1.7.1
> Environment: HBase 1.1 and Phoenix 4.7.0, HBase 1.1 and Phoenix 
> 4.8.0-SNAPSHOT
>Reporter: Francis Chuang
>Assignee: Julian Hyde
>
> Assuming I have a table called my_table which is created and seeded like so:
> {code:sql}
> CREATE TABLE my_table (k BIGINT PRIMARY KEY, v VARCHAR) TRANSACTIONAL=true
> UPSERT INTO my_table VALUES (1,'A')
> UPSERT INTO my_table VALUES (2,'B')
> {code}
> I have 2 rows in the table. If I query the table using SELECT * FROM 
> my_table, and request a maxRowCount of 1, using FetchRequest to request 
> further rows always returns 0 rows.
> For ease of reproduction, I have included CURL commands (avatica will need to 
> have serialization set to JSON):
> {code}
> curl localhost:8765 -XPOST --data '{"request": 
> "openConnection","connectionId": "my-conn"}'
> curl localhost:8765 -XPOST --data '{"request": 
> "createStatement","connectionId": "my-conn"}'
> curl localhost:8765 -XPOST --data '{"request": 
> "prepareAndExecute","connectionId": "my-conn","statementId": 12345,"sql": 
> "SELECT * FROM my_table","maxRowCount": 1}' # update the statementId
> curl localhost:8765 -XPOST --data '{"request": "fetch","connectionId": 
> "my-conn","statementId": 12345,"offset": 0,"fetchMaxRowCount": 1}' # update 
> the statementId
> {code}



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


[jira] [Commented] (CALCITE-1181) FetchResponse always return no rows

2016-04-03 Thread Francis Chuang (JIRA)

[ 
https://issues.apache.org/jira/browse/CALCITE-1181?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15223609#comment-15223609
 ] 

Francis Chuang commented on CALCITE-1181:
-

I just tested Phoenix 4.8.0-SNAPSHOT which uses avatica 1.7.1 and it also 
exhibits the same problem.

> FetchResponse always return no rows
> ---
>
> Key: CALCITE-1181
> URL: https://issues.apache.org/jira/browse/CALCITE-1181
> Project: Calcite
>  Issue Type: Bug
>  Components: avatica
>Affects Versions: avatica-1.7.1
> Environment: HBase 1.1 and Phoenix 4.7.0
>Reporter: Francis Chuang
>Assignee: Julian Hyde
>
> Assuming I have a table called my_table which is created and seeded like so:
> {code:sql}
> CREATE TABLE my_table (k BIGINT PRIMARY KEY, v VARCHAR) TRANSACTIONAL=true
> UPSERT INTO my_table VALUES (1,'A')
> UPSERT INTO my_table VALUES (2,'B')
> {code}
> I have 2 rows in the table. If I query the table using SELECT * FROM 
> my_table, and request a maxRowCount of 1, using FetchRequest to request 
> further rows always returns 0 rows.
> For ease of reproduction, I have included CURL commands (avatica will need to 
> have serialization set to JSON):
> {code}
> curl localhost:8765 -XPOST --data '{"request": 
> "openConnection","connectionId": "my-conn"}'
> curl localhost:8765 -XPOST --data '{"request": 
> "createStatement","connectionId": "my-conn"}'
> curl localhost:8765 -XPOST --data '{"request": 
> "prepareAndExecute","connectionId": "my-conn","statementId": 12345,"sql": 
> "SELECT * FROM my_table","maxRowCount": 1}' # update the statementId
> curl localhost:8765 -XPOST --data '{"request": "fetch","connectionId": 
> "my-conn","statementId": 12345,"offset": 0,"fetchMaxRowCount": 1}' # update 
> the statementId
> {code}



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


[jira] [Commented] (CALCITE-1181) FetchResponse always return no rows

2016-04-03 Thread Francis Chuang (JIRA)

[ 
https://issues.apache.org/jira/browse/CALCITE-1181?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15223523#comment-15223523
 ] 

Francis Chuang commented on CALCITE-1181:
-

In `prepareAndExecute`, I get 1 row back (the select statement should return 2 
rows) and `done` is false.
When I use `fetch` to fetch the remaining row, `done` is false, but the array 
of rows is empty.

> FetchResponse always return no rows
> ---
>
> Key: CALCITE-1181
> URL: https://issues.apache.org/jira/browse/CALCITE-1181
> Project: Calcite
>  Issue Type: Bug
>  Components: avatica
>Affects Versions: avatica-1.7.1
> Environment: HBase 1.1 and Phoenix 4.7.0
>Reporter: Francis Chuang
>Assignee: Julian Hyde
>
> Assuming I have a table called my_table which is created and seeded like so:
> {code:sql}
> CREATE TABLE my_table (k BIGINT PRIMARY KEY, v VARCHAR) TRANSACTIONAL=true
> UPSERT INTO my_table VALUES (1,'A')
> UPSERT INTO my_table VALUES (2,'B')
> {code}
> I have 2 rows in the table. If I query the table using SELECT * FROM 
> my_table, and request a maxRowCount of 1, using FetchRequest to request 
> further rows always returns 0 rows.
> For ease of reproduction, I have included CURL commands (avatica will need to 
> have serialization set to JSON):
> {code}
> curl localhost:8765 -XPOST --data '{"request": 
> "openConnection","connectionId": "my-conn"}'
> curl localhost:8765 -XPOST --data '{"request": 
> "createStatement","connectionId": "my-conn"}'
> curl localhost:8765 -XPOST --data '{"request": 
> "prepareAndExecute","connectionId": "my-conn","statementId": 12345,"sql": 
> "SELECT * FROM my_table","maxRowCount": 1}' # update the statementId
> curl localhost:8765 -XPOST --data '{"request": "fetch","connectionId": 
> "my-conn","statementId": 12345,"offset": 0,"fetchMaxRowCount": 1}' # update 
> the statementId
> {code}



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


[jira] [Commented] (CALCITE-1181) FetchResponse always return no rows

2016-04-03 Thread Julian Hyde (JIRA)

[ 
https://issues.apache.org/jira/browse/CALCITE-1181?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15223439#comment-15223439
 ] 

Julian Hyde commented on CALCITE-1181:
--

Maybe some rows are being returned in the response to {{prepareAndExecute}}?

> FetchResponse always return no rows
> ---
>
> Key: CALCITE-1181
> URL: https://issues.apache.org/jira/browse/CALCITE-1181
> Project: Calcite
>  Issue Type: Bug
>  Components: avatica
>Affects Versions: avatica-1.7.1
> Environment: HBase 1.1 and Phoenix 4.7.0
>Reporter: Francis Chuang
>Assignee: Julian Hyde
>
> Assuming I have a table called my_table which is created and seeded like so:
> {code:sql}
> CREATE TABLE my_table (k BIGINT PRIMARY KEY, v VARCHAR) TRANSACTIONAL=true
> UPSERT INTO my_table VALUES (1,'A')
> UPSERT INTO my_table VALUES (2,'B')
> {code}
> I have 2 rows in the table. If I query the table using SELECT * FROM 
> my_table, and request a maxRowCount of 1, using FetchRequest to request 
> further rows always returns 0 rows.
> For ease of reproduction, I have included CURL commands (avatica will need to 
> have serialization set to JSON):
> {code}
> curl localhost:8765 -XPOST --data '{"request": 
> "openConnection","connectionId": "my-conn"}'
> curl localhost:8765 -XPOST --data '{"request": 
> "createStatement","connectionId": "my-conn"}'
> curl localhost:8765 -XPOST --data '{"request": 
> "prepareAndExecute","connectionId": "my-conn","statementId": 12345,"sql": 
> "SELECT * FROM my_table","maxRowCount": 1}' # update the statementId
> curl localhost:8765 -XPOST --data '{"request": "fetch","connectionId": 
> "my-conn","statementId": 12345,"offset": 0,"fetchMaxRowCount": 1}' # update 
> the statementId
> {code}



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