[jira] [Commented] (IGNITE-4370) ODBC: Implement DML operations with parameters in batch.

2017-06-15 Thread ASF GitHub Bot (JIRA)

[ 
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.

2017-06-15 Thread Pavel Tupitsyn (JIRA)

[ 
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.

2017-06-15 Thread Igor Sapego (JIRA)

[ 
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.

2017-06-13 Thread Vladimir Ozerov (JIRA)

[ 
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.

2017-06-13 Thread Igor Sapego (JIRA)

[ 
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.

2017-06-09 Thread Pavel Tupitsyn (JIRA)

[ 
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.

2017-06-07 Thread ASF GitHub Bot (JIRA)

[ 
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 Sapego 
Date:   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.

2017-06-02 Thread Igor Sapego (JIRA)

[ 
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)