You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Chesnay Schepler (JIRA)" <ji...@apache.org> on 2017/08/30 14:55:01 UTC

[jira] [Closed] (FLINK-7556) Fix fetch size configurable in JDBCInputFormat for MySQL Driver

     [ https://issues.apache.org/jira/browse/FLINK-7556?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Chesnay Schepler closed FLINK-7556.
-----------------------------------
       Resolution: Fixed
    Fix Version/s: 1.4.0

1.4: e753db8411debfc573ffc330355a0f24c0afbfb5

> Fix fetch size configurable in JDBCInputFormat for MySQL Driver
> ---------------------------------------------------------------
>
>                 Key: FLINK-7556
>                 URL: https://issues.apache.org/jira/browse/FLINK-7556
>             Project: Flink
>          Issue Type: Bug
>          Components: Batch Connectors and Input/Output Formats
>    Affects Versions: 1.3.2
>            Reporter: Nycholas de Oliveira e Oliveira
>            Assignee: Nycholas de Oliveira e Oliveira
>            Priority: Trivial
>             Fix For: 1.4.0
>
>
> According to the MySQL documentation[1], it follows:
> * ResultSet
> {quote}By default, ResultSets are completely retrieved and stored in memory. In most cases this is the most efficient way to operate and, due to the design of the MySQL network protocol, is easier to implement. If you are working with ResultSets that have a large number of rows or large values and cannot allocate heap space in your JVM for the memory required, you can tell the driver to stream the results back one row at a time.
> {quote}
> {quote}To enable this functionality, create a Statement instance in the following manner:{quote}
> {code:java}
> stmt = conn.createStatement(java.sql.ResultSet.TYPE_FORWARD_ONLY,
>               java.sql.ResultSet.CONCUR_READ_ONLY);
> stmt.setFetchSize(Integer.MIN_VALUE);
> {code}
> {quote}The combination of a forward-only, read-only result set, with a fetch size of Integer.MIN_VALUE serves as a signal to the driver to stream result sets row-by-row. After this, any result sets created with the statement will be retrieved row-by-row.{quote}
> Allow the *Integer.MIN_VALUE* to be accepted as a parameter for _setFetchSize_.
> [1] - https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-reference-implementation-notes.html



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)