[CONJ-296] Support COM_MULTI Created: 2016-05-13 Updated: 2017-11-08 Resolved: 2017-11-08 |
|
| Status: | Closed |
| Project: | MariaDB Connector/J |
| Component/s: | Other |
| Affects Version/s: | None |
| Fix Version/s: | N/A |
| Type: | Task | Priority: | Major |
| Reporter: | Diego Dupin | Assignee: | Diego Dupin |
| Resolution: | Won't Do | Votes: | 0 |
| Labels: | None | ||
| Issue Links: |
|
||||||||||||||||
| Description |
|
Support COM_MULTI protocol, and implement server prepare statement PREPARE+EXECUTE in one call if supported |
| Comments |
| Comment by Diego Dupin [ 2016-06-07 ] |
|
Prepare cannot work on all query actually : Query like "select TMP.field1 from (select ? `field1` from dual) TMP" that use temporary table cannot be prepared (see Actual implementation of PreparedStatement (using "Connection.preparedStatement(String sql)" ) fall back ClientPreparedStatement when prepare cannot be done. Since "PREPARE" execution will be defered using COM_MULTI to the first execution to avoid one round-trip to server, driver will not be able to know if PREPARE can be done or not (or parsing query, but that will take to much additional time for each query). COM_MULTI will wait |
| Comment by Diego Dupin [ 2016-06-07 ] |
|
implementation done on "develop" branch. |
| Comment by Diego Dupin [ 2016-07-14 ] |
|
reopen, since 16mb packet cannot work with current implementation |
| Comment by Diego Dupin [ 2016-09-06 ] |
|
waiting for discussion result about SERVER_MORE_RESULT_EXISTS flags |