Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

isc_dsql_exec* should allow list of parameter sets [CORE820] #1206

Closed
firebird-issue-importer opened this issue Mar 15, 2005 · 16 comments
Closed

Comments

@firebird-issue-importer

Submitted by: rdebay (rdebay)

Is duplicated by CORE3821
Relate to CORE5951
Is replaced by CORE5951

Votes: 3

SFID: 1164037#⁠
Submitted By: rdebay

JDBC has a feature called batched statements. To put it simply, an SQL statement is prepared, sets of parameters are added to the batch, and then the batch is executed.

Currently, Jaybird takes the list of parameter sets, and executes each one with isc_dsql_exec2. Other databases have APIs that allow the entire list of parameter sets to be sent across, and the server then loops through them, executing each one in turn against the prepared SQL statement.

This greatly reduces wire traffic, with equally large gains in performance.

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Jun 16, 2006

Modified by: @pcisar

issuetype: New Feature [ 2 ] => Improvement [ 4 ]

assignee: Dmitry Yemanov [ dimitr ]

SF_ID: 1164037 =>

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Jun 19, 2006

Modified by: @dyemanov

assignee: Dmitry Yemanov [ dimitr ] => Vlad Horsun [ hvlad ]

issuetype: Improvement [ 4 ] => New Feature [ 2 ]

SF_ID: 1164037 =>

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Jul 1, 2006

Modified by: @dyemanov

Component: API / Client Library [ 10040 ]

SF_ID: 1164037 =>

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Jan 28, 2008

Modified by: @pcisar

Workflow: jira [ 10844 ] => Firebird [ 15284 ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Apr 18, 2012

Modified by: Sean Leyne (seanleyne)

description: SFID: 1164037#⁠
Submitted By: rdebay

JDBC has a feature called batched statements. To put
it simply, an SQL statement is prepared, sets of
parameters are added to the batch, and then the batch
is executed.
Currently, Jaybird takes the list of parameter sets,
and executes each one with isc_dsql_exec2. Other
databases have APIs that allow the entire list of
parameter sets to be sent across, and the server then
loops through them, executing each one in turn against
the prepared SQL statement.
This greatly reduces wire traffic, with equally large
gains in performance.

=>

SFID: 1164037#⁠
Submitted By: rdebay

JDBC has a feature called batched statements. To put it simply, an SQL statement is prepared, sets of parameters are added to the batch, and then the batch is executed.

Currently, Jaybird takes the list of parameter sets, and executes each one with isc_dsql_exec2. Other databases have APIs that allow the entire list of parameter sets to be sent across, and the server then loops through them, executing each one in turn against the prepared SQL statement.

This greatly reduces wire traffic, with equally large gains in performance.

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Oct 16, 2014

Modified by: @dyemanov

Link: This issue is duplicated by CORE3821 [ CORE3821 ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Nov 10, 2014

Commented by: TIP Group, S.A. (Olivier Mascia) (tipgroup)

This imply a batch of results too. What if the statement is a SELECT, the results sets are batched too? What about failures (one of the exec instances could trigger errors - depending on the parameter values). How would it be expected to behave?

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Mar 9, 2016

Modified by: @dyemanov

assignee: Vlad Khorsun [ hvlad ] => Alexander Peshkov [ alexpeshkoff ]

Fix Version: 4.0 Alpha 1 [ 10731 ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Sep 1, 2016

Modified by: @dyemanov

Fix Version: 4.0 Beta 1 [ 10750 ]

Fix Version: 4.0 Alpha 1 [ 10731 ] =>

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Jun 25, 2017

Commented by: Thomas Kragh (realic)

Hey
I can see in the planning bord and in the git repository that hvis feature i under development at the moment. Out of curiosity, will this new batch feature make it possible to execute multiple select statements in a single roundtrip to the database?

for example
select * from houses where owner = @ownerid
;
select * from cars where model = @modelnr

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Jun 25, 2017

Commented by: @AlexPeshkoff

In v4 - definitely not. Primary goal is to support JDBC requirements. May be an ability to execute select statement with parameters sending sets of different parameters' values in a batch will be added in v4 too, but what about execution of different select statements with different sets of output columns that requires changing a way we work with result sets and is out of v4 scope.

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Oct 23, 2017

Commented by: @AlexPeshkoff

Implemented new Batch interface performing everything needed for JDBC compliance and additionally:
- detailed information about error happened when processing particular message in batch,
- ability to use BLOBs in batches (efficient in a case of relatively small blobs).

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Oct 23, 2017

Modified by: @AlexPeshkoff

status: Open [ 1 ] => Resolved [ 5 ]

resolution: Fixed [ 1 ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Oct 25, 2018

Modified by: @AlexPeshkoff

Link: This issue relate to CORE5951 [ CORE5951 ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Oct 25, 2018

Modified by: @dyemanov

Link: This issue is replaced by CORE5951 [ CORE5951 ]

@firebird-issue-importer
Copy link
Author

@firebird-issue-importer firebird-issue-importer commented Oct 25, 2018

Modified by: @dyemanov

Fix Version: 4.0 Beta 1 [ 10750 ] =>

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
2 participants