Hi

Yeah contributions is welcome. Just mind about the stream must close
the underlying ResultSet / DataSource / Connection when done, so you
would need to add that logic into the iterator you provide as output.
So when the iterator is closed, then it does close those resources.

Also I wonder if you would need to configure somewhere in JDBC that
you want the result set in a streaming / batch mode. So the JDBC
driver don't load all 1000000 rows into memory anyway.


On Mon, May 19, 2014 at 6:59 PM, Antoine DESSAIGNE
<[email protected]> wrote:
> Hi everyone,
>
> I've looked into the source code and it doesn't seem like its possible to
> stream the result of an SQL query in camel using either the SqlComponent or
> the JdbcComponent. This would be really useful when reading a large DataSet.
>
> If you confirm that it's not the case right now, I would gladly fill a JIRA
> issue and submit a pull request. I think I'm going to use another option in
> SqlOutputType named StreamList and return an Iterator that wraps the
> ResultSet in this case
>
> That way it would look like
> from("direct:streamDB")
> .to("sql:select * from actors?outputType=StreamList")
> .split(body())
>     .to("direct:processSingleActor")
>
> What do you think ?
>
> Antoine.



-- 
Claus Ibsen
-----------------
Red Hat, Inc.
Email: [email protected]
Twitter: davsclaus
Blog: http://davsclaus.com
Author of Camel in Action: http://www.manning.com/ibsen
hawtio: http://hawt.io/
fabric8: http://fabric8.io/

Reply via email to