[jira] [Commented] (IGNITE-4370) ODBC: Implement DML operations with parameters in batch.
[ https://issues.apache.org/jira/browse/IGNITE-4370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16050522#comment-16050522 ] ASF GitHub Bot commented on IGNITE-4370: Github user isapego closed the pull request at: https://github.com/apache/ignite/pull/2106 > ODBC: Implement DML operations with parameters in batch. > > > Key: IGNITE-4370 > URL: https://issues.apache.org/jira/browse/IGNITE-4370 > Project: Ignite > Issue Type: Task > Components: odbc >Affects Versions: 1.7 >Reporter: Igor Sapego >Assignee: Igor Sapego > Labels: important > Fix For: 2.1 > > > Currently, if user wants for example to insert 20k records they need to call > {{SQLExecute}} for the 20k times. More than that, internally, we transmit and > execute the same SQL query 20k times. This is a huge overhead. We should only > transfer sql query once, transfer all the parameters in a batch and then > execute it once using some fast, possibly internal API. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (IGNITE-4370) ODBC: Implement DML operations with parameters in batch.
[ https://issues.apache.org/jira/browse/IGNITE-4370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16050428#comment-16050428 ] Pavel Tupitsyn commented on IGNITE-4370: LGTM > ODBC: Implement DML operations with parameters in batch. > > > Key: IGNITE-4370 > URL: https://issues.apache.org/jira/browse/IGNITE-4370 > Project: Ignite > Issue Type: Task > Components: odbc >Affects Versions: 1.7 >Reporter: Igor Sapego >Assignee: Igor Sapego > Labels: important > Fix For: 2.1 > > > Currently, if user wants for example to insert 20k records they need to call > {{SQLExecute}} for the 20k times. More than that, internally, we transmit and > execute the same SQL query 20k times. This is a huge overhead. We should only > transfer sql query once, transfer all the parameters in a batch and then > execute it once using some fast, possibly internal API. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (IGNITE-4370) ODBC: Implement DML operations with parameters in batch.
[ https://issues.apache.org/jira/browse/IGNITE-4370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16050412#comment-16050412 ] Igor Sapego commented on IGNITE-4370: - [~ptupitsyn], can you also have a look? > ODBC: Implement DML operations with parameters in batch. > > > Key: IGNITE-4370 > URL: https://issues.apache.org/jira/browse/IGNITE-4370 > Project: Ignite > Issue Type: Task > Components: odbc >Affects Versions: 1.7 >Reporter: Igor Sapego >Assignee: Igor Sapego > Labels: important > Fix For: 2.1 > > > Currently, if user wants for example to insert 20k records they need to call > {{SQLExecute}} for the 20k times. More than that, internally, we transmit and > execute the same SQL query 20k times. This is a huge overhead. We should only > transfer sql query once, transfer all the parameters in a batch and then > execute it once using some fast, possibly internal API. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (IGNITE-4370) ODBC: Implement DML operations with parameters in batch.
[ https://issues.apache.org/jira/browse/IGNITE-4370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16047974#comment-16047974 ] Vladimir Ozerov commented on IGNITE-4370: - [~isapego], I think we will fix it a bit later in both batched and non-batched messages. I would prefer to keep the solution simple for now. > ODBC: Implement DML operations with parameters in batch. > > > Key: IGNITE-4370 > URL: https://issues.apache.org/jira/browse/IGNITE-4370 > Project: Ignite > Issue Type: Task > Components: odbc >Affects Versions: 1.7 >Reporter: Igor Sapego >Assignee: Igor Sapego > Labels: important > Fix For: 2.1 > > > Currently, if user wants for example to insert 20k records they need to call > {{SQLExecute}} for the 20k times. More than that, internally, we transmit and > execute the same SQL query 20k times. This is a huge overhead. We should only > transfer sql query once, transfer all the parameters in a batch and then > execute it once using some fast, possibly internal API. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (IGNITE-4370) ODBC: Implement DML operations with parameters in batch.
[ https://issues.apache.org/jira/browse/IGNITE-4370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16047895#comment-16047895 ] Igor Sapego commented on IGNITE-4370: - [~vozerov], 1) In the beginning there also was metadata in response to start request, which I've removed afterwards. However, don't you think that SQL query caching may be useful if there is large SQL request (few hungered bytes) and many parameters, ~1KK? In this case there is going to be significant overhead, don't you think so? 2) That was for the consistency reasons, as if you can't make request with one set of parameters why would you be able to do exactly the same request but with 2 parameter sets? However, on the second though, I think this is unnecessary restriction. Will fix. > ODBC: Implement DML operations with parameters in batch. > > > Key: IGNITE-4370 > URL: https://issues.apache.org/jira/browse/IGNITE-4370 > Project: Ignite > Issue Type: Task > Components: odbc >Affects Versions: 1.7 >Reporter: Igor Sapego >Assignee: Igor Sapego > Labels: important > Fix For: 2.1 > > > Currently, if user wants for example to insert 20k records they need to call > {{SQLExecute}} for the 20k times. More than that, internally, we transmit and > execute the same SQL query 20k times. This is a huge overhead. We should only > transfer sql query once, transfer all the parameters in a batch and then > execute it once using some fast, possibly internal API. -- This message was sent by Atlassian JIRA (v6.4.14#64029)
[jira] [Commented] (IGNITE-4370) ODBC: Implement DML operations with parameters in batch.
[ https://issues.apache.org/jira/browse/IGNITE-4370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16044345#comment-16044345 ] Pavel Tupitsyn commented on IGNITE-4370: Looks good to me in general (though I'm not familiar with ODBC). > ODBC: Implement DML operations with parameters in batch. > > > Key: IGNITE-4370 > URL: https://issues.apache.org/jira/browse/IGNITE-4370 > Project: Ignite > Issue Type: Task > Components: odbc >Affects Versions: 1.7 >Reporter: Igor Sapego >Assignee: Igor Sapego > Labels: important > Fix For: 2.1 > > > Currently, if user wants for example to insert 20k records they need to call > {{SQLExecute}} for the 20k times. More than that, internally, we transmit and > execute the same SQL query 20k times. This is a huge overhead. We should only > transfer sql query once, transfer all the parameters in a batch and then > execute it once using some fast, possibly internal API. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (IGNITE-4370) ODBC: Implement DML operations with parameters in batch.
[ https://issues.apache.org/jira/browse/IGNITE-4370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16041392#comment-16041392 ] ASF GitHub Bot commented on IGNITE-4370: GitHub user isapego opened a pull request: https://github.com/apache/ignite/pull/2106 IGNITE-4370: Implemented writing of batch of parameters for ODBC. You can merge this pull request into a Git repository by running: $ git pull https://github.com/gridgain/apache-ignite ignite-4370 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/ignite/pull/2106.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #2106 commit 19499050347d18fc2625d1efb881436c42d3916d Author: Igor SapegoDate: 2017-06-05T15:09:50Z IGNITE-4370: Added SQL_PARAM_ARRAY_ROW_COUNTS param commit bdc68cca6a939e800323382f69f765ba84d97a8a Author: Igor Sapego Date: 2017-06-05T15:55:20Z IGNITE-4370: Added SQL_PARAM_ARRAY_SELECTS param commit ee040b4d9b04233c91853ac4bef2d60b86e828c5 Author: Igor Sapego Date: 2017-06-06T16:15:37Z IGNITE-4370: Parameter refactored commit cc60a056331d5a9162e710d41f208c86a4b5d27c Author: Igor Sapego Date: 2017-06-06T16:32:43Z IGNITE-4370: Fix commit 51a01e2b772c316e2c5e3999014c146cddcde87c Author: Igor Sapego Date: 2017-06-07T08:44:03Z IGNITE-4370: Offset-related refactoring. commit 13d217776f26ab2be9a572d46b432175c8ec613e Author: Igor Sapego Date: 2017-06-07T08:53:42Z IGNITE-4370: Implemented writing of batch of parameters. commit c1b8b61b8087be5d6dffe2cf4df7be26ecad125f Author: Igor Sapego Date: 2017-06-07T10:01:47Z IGNITE-4370 refactored Parameter set writing commit 745619b847d7a5776565042e92eacf0e93df10ab Author: Igor Sapego Date: 2017-06-07T12:46:32Z IGNITE-4370: OdbcQueryExecuteBatchStartRequest implemented. commit 3a7dd6044c86bd10c2dcd45907d4dd4b2a6e33b2 Author: Igor Sapego Date: 2017-06-07T14:39:13Z IGNITE-4370: Safe commit c63120b892e64a6a19ed78d80d099f21a2f97ffa Author: Igor Sapego Date: 2017-06-07T18:36:40Z IGNITE-4370: Implemented continuation. > ODBC: Implement DML operations with parameters in batch. > > > Key: IGNITE-4370 > URL: https://issues.apache.org/jira/browse/IGNITE-4370 > Project: Ignite > Issue Type: Task > Components: odbc >Affects Versions: 1.7 >Reporter: Igor Sapego >Assignee: Igor Sapego > Labels: important > Fix For: 2.1 > > > Currently, if user wants for example to insert 20k records they need to call > {{SQLExecute}} for the 20k times. More than that, internally, we transmit and > execute the same SQL query 20k times. This is a huge overhead. We should only > transfer sql query once, transfer all the parameters in a batch and then > execute it once using some fast, possibly internal API. -- This message was sent by Atlassian JIRA (v6.3.15#6346)
[jira] [Commented] (IGNITE-4370) ODBC: Implement DML operations with parameters in batch.
[ https://issues.apache.org/jira/browse/IGNITE-4370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16034900#comment-16034900 ] Igor Sapego commented on IGNITE-4370: - Useful MS article with details of the API and implementation: https://docs.microsoft.com/en-us/sql/odbc/reference/develop-app/using-arrays-of-parameters > ODBC: Implement DML operations with parameters in batch. > > > Key: IGNITE-4370 > URL: https://issues.apache.org/jira/browse/IGNITE-4370 > Project: Ignite > Issue Type: Task > Components: odbc >Affects Versions: 1.7 >Reporter: Igor Sapego >Assignee: Igor Sapego > Labels: important > Fix For: 2.1 > > > Currently, if user wants for example to insert 20k records they need to call > {{SQLExecute}} for the 20k times. More than that, internally, we transmit and > execute the same SQL query 20k times. This is a huge overhead. We should only > transfer sql query once, transfer all the parameters in a batch and then > execute it once using some fast, possibly internal API. -- This message was sent by Atlassian JIRA (v6.3.15#6346)