[
https://issues.apache.org/jira/browse/CAMEL-4662?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Daniel Gredler updated CAMEL-4662:
----------------------------------
Attachment: camel-4662.patch
patch to trunk
> add batching support to sql component
> -------------------------------------
>
> Key: CAMEL-4662
> URL: https://issues.apache.org/jira/browse/CAMEL-4662
> Project: Camel
> Issue Type: New Feature
> Components: camel-sql
> Affects Versions: 2.8.2
> Reporter: Daniel Gredler
> Labels: patch
> Attachments: camel-4662.patch
>
>
> When I first started using Camel, I expected something like this to
> automatically batch SQL update statements:
> from("direct:foo")
> .aggregate(constant("all"), new StringCollector())
> .completionSize(20) // batch size = 20
> .completionTimeout(5000)
> .to("sql:insert into foo values (#)?dataSourceRef=ds")
> I was surprised when this wasn't the case, because in general batching SQL
> update statements is much more efficient than executing them individually,
> and is best practice when there is a lot of data involved.
> The attached patch adds a "batch" attribute to the SQL component (default
> value is false), which should only be set to true for SQL update statements
> (insert, update, delete). If the "batch" attribute is true, then the
> interpretation of the inbound message body changes slightly -- instead of an
> Iterator of parameters, the component expects an Iterator that contains the
> parameter Iterators; the size of the outer Iterator determines the batch size.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira