[jira] [Commented] (DRILL-7192) Drill limits rows when autoLimit is disabled
[ https://issues.apache.org/jira/browse/DRILL-7192?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16910750#comment-16910750 ] Kunal Khatua commented on DRILL-7192: - [~vvysotskyi] there is a `!reset rowlimit` option that takes care of the `!set rowlimit` option for SqlLine. I'll see if there is something that will apply this for generic JDBC client as well. I suspect that setting an explicit zero value will not be applied if there is a non-zero value already set (even if temporary). > Drill limits rows when autoLimit is disabled > > > Key: DRILL-7192 > URL: https://issues.apache.org/jira/browse/DRILL-7192 > Project: Apache Drill > Issue Type: Bug >Affects Versions: 1.16.0 >Reporter: Volodymyr Vysotskyi >Assignee: Kunal Khatua >Priority: Major > Fix For: 1.17.0 > > > In DRILL-7048 was implemented autoLimit for JDBC and rest clients. > *Steps to reproduce the issue:* > 1. Check that autoLimit was disabled, if not, disable it and restart Drill. > 2. Submit any query, and verify that rows count is correct, for example, > {code:sql} > SELECT * FROM cp.`employee.json`; > {code} > returns 1,155 rows > 3. Enable autoLimit for sqlLine sqlLine client: > {code:sql} > !set rowLimit 10 > {code} > 4. Submit the same query and verify that the result has 10 rows. > 5. Disable autoLimit: > {code:sql} > !set rowLimit 0 > {code} > 6. Submit the same query, but for this time, *it returns 10 rows instead of > 1,155*. > Correct rows count is returned only after creating a new connection. > The same issue is also observed for SQuirreL SQL client, but for example, for > Postgres, it works correctly. -- This message was sent by Atlassian Jira (v8.3.2#803003)
[jira] [Commented] (DRILL-7192) Drill limits rows when autoLimit is disabled
[ https://issues.apache.org/jira/browse/DRILL-7192?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16843804#comment-16843804 ] Volodymyr Vysotskyi commented on DRILL-7192: [~kkhatua], thanks for looking into this issue, the last your proposal makes sense for me. > Drill limits rows when autoLimit is disabled > > > Key: DRILL-7192 > URL: https://issues.apache.org/jira/browse/DRILL-7192 > Project: Apache Drill > Issue Type: Bug >Affects Versions: 1.16.0 >Reporter: Volodymyr Vysotskyi >Assignee: Kunal Khatua >Priority: Major > Fix For: 1.17.0 > > > In DRILL-7048 was implemented autoLimit for JDBC and rest clients. > *Steps to reproduce the issue:* > 1. Check that autoLimit was disabled, if not, disable it and restart Drill. > 2. Submit any query, and verify that rows count is correct, for example, > {code:sql} > SELECT * FROM cp.`employee.json`; > {code} > returns 1,155 rows > 3. Enable autoLimit for sqlLine sqlLine client: > {code:sql} > !set rowLimit 10 > {code} > 4. Submit the same query and verify that the result has 10 rows. > 5. Disable autoLimit: > {code:sql} > !set rowLimit 0 > {code} > 6. Submit the same query, but for this time, *it returns 10 rows instead of > 1,155*. > Correct rows count is returned only after creating a new connection. > The same issue is also observed for SQuirreL SQL client, but for example, for > Postgres, it works correctly. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (DRILL-7192) Drill limits rows when autoLimit is disabled
[ https://issues.apache.org/jira/browse/DRILL-7192?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16827143#comment-16827143 ] Kunal Khatua commented on DRILL-7192: - [~vvysotskyi] The source of this issue is that we are setting the parameter at a {{SESSION}} level, although the feature works at a {{QUERY}} level (i.e. on the {{Statement}} object). Calling {{!set rowlimit 10}} will execute the `Statement.setMaxRows()` automatically for each new Statement. However, {{!set rowlimit 0}} will *not* execute the `Statement.setMaxRows()` automatically for each new Statement. My guess is that since each query's Statement is a new object with a presumed default 0 (on the client side), it does not again `ALTER SESSION` behind the scene. I'll verify this with a custom code, but if that is the case... fixing SQLLine is not the solution. The only workaround would be to not rely on the {{SESSION}}-level value, but on the RunQuery.getAutolimitRowcount() by ensuring the value is set in the {{DrillClient}} > Drill limits rows when autoLimit is disabled > > > Key: DRILL-7192 > URL: https://issues.apache.org/jira/browse/DRILL-7192 > Project: Apache Drill > Issue Type: Bug >Affects Versions: 1.16.0 >Reporter: Volodymyr Vysotskyi >Assignee: Kunal Khatua >Priority: Major > Fix For: 1.17.0 > > > In DRILL-7048 was implemented autoLimit for JDBC and rest clients. > *Steps to reproduce the issue:* > 1. Check that autoLimit was disabled, if not, disable it and restart Drill. > 2. Submit any query, and verify that rows count is correct, for example, > {code:sql} > SELECT * FROM cp.`employee.json`; > {code} > returns 1,155 rows > 3. Enable autoLimit for sqlLine sqlLine client: > {code:sql} > !set rowLimit 10 > {code} > 4. Submit the same query and verify that the result has 10 rows. > 5. Disable autoLimit: > {code:sql} > !set rowLimit 0 > {code} > 6. Submit the same query, but for this time, *it returns 10 rows instead of > 1,155*. > Correct rows count is returned only after creating a new connection. > The same issue is also observed for SQuirreL SQL client, but for example, for > Postgres, it works correctly. -- This message was sent by Atlassian JIRA (v7.6.3#76005)