Hi, Agneeswaran,

As I said, internally ODBC driver retrieves data in pages, not one by one.
It only returns one row to user by call but it retrieve data from the remote
node in pages, not one by one.

However, I have checked now and found out that by some reason default
page size is very small. You can try changing it and see if it helps. The
line of the interest can be found here:

cpp\odbc\include\ignite\odbc\result_page.h:41

Try changing ResultPage::DEFAULT_SIZE value to something like 1024
and tell me if it helps.

In future, we are going to add a parameter for the page size.


Best Regards,
Igor

On Thu, Jun 30, 2016 at 7:49 PM, Agneeswaran <
agneeswaran.ponnuraman...@nielsen.com> wrote:

> Hi Igor,
>
> We have checked our configuration details and we suspect that the
> performance degradation is with the
> SQLFetch(stmt); This issue  happens only with the client server model not
> with the odbc-example.
>
> Lets say,
> Database has Row count as 10 and column count as 5.
>
> Please see the following code and my comments,
>
>  SQLSMALLINT columnsCnt = 0;
>  std::vector<OdbcStringBuffer> columns(columnsCnt);
>
> /*
>  columnsCnt- this will return the number of column say 5 in our example and
> there is no option to
>  retrieve the row count.
> */
>
>   for (SQLSMALLINT i = 0; i < columnsCnt; ++i)
>      SQLBindCol(stmt, i+1, SQL_CHAR, columns[i].buffer,
> ODBC_BUFFER_SIZE, &columns[i].reallen);
>
> /*
>  This columns[i].buffer allocated buffer for each columns.
>  */
>
>          while (true)
>          {
>                SQLRETURN ret = SQLFetch(stmt);
>                /*
>                SQLFetch(stmt) fetches the values one by one that is each
> row
> with 5 columns.
>                we are getting the issue during this while loops.
>                i.e it always fetches only one row at a time.
>               */
>
>                if (!SQL_SUCCEEDED(ret))
>                  break;
>            }
> I think that, there is no option to retrieve more than one row of data at a
> time.
>
> Please correct me if i am wrong and provide your suggestions.
>
> Thanks,
> Agneeswaran
>
>
>
> --
> View this message in context:
> http://apache-ignite-users.70518.x6.nabble.com/Performance-issue-on-Ignite-ODBC-API-tp5908p6026.html
> Sent from the Apache Ignite Users mailing list archive at Nabble.com.
>

Reply via email to