Options

[Vertica][Support] (50270) Setting a buffer that has not been fully used, or setting it with an inva

I'm seeing terrible performance via the vertica ODBC driver (64bit linux using unixODBC driver manager). So I set LogLevel to 7 in my vertica.ini file, which revealed a lot of the following error message: Aug 23 11:43:35 TRACE -134412352 StatementStateCursor::SQLGetData&colon; +++++ enter +++++ Aug 23 11:43:35 ERROR -134412352 Statement::SQLGetData&colon; [Vertica][Support] (50270) Setting a buffer that has not been fully used, or setting it with an invalid buffer. I'm using the Qt 5.1 qsql_odbc plugin. Adn stepping into that plugin I can see the error is occurring at the SQLGetData() mehtod (as indicated in the vertica log). For reference here is the qsql_odbc.cpp code that's making the call. I don't see anything here that seems relevant to the error. I suspect the error is caused by a sequence of events that happens outside this function. But here it is anyway: static QString qGetStringData(SQLHANDLE hStmt, int column, int colSize, bool unicode = false) { QString fieldVal; SQLRETURN r = SQL_ERROR; SQLLEN lengthIndicator = 0; // NB! colSize must be a multiple of 2 for unicode enabled DBs if (colSize <= 0) { colSize = 256; } else if (colSize > 65536) { // limit buffer size to 64 KB colSize = 65536; } else { colSize++; // make sure there is room for more than the 0 termination } if(unicode) { r = SQLGetData(hStmt, column+1, SQL_C_TCHAR, NULL, 0, &lengthIndicator); ... Can anyone give me some idea what might be causing this error? The queries seem to be working, but performance is terrible. Thanks, STC

Leave a Comment

BoldItalicStrikethroughOrdered listUnordered list
Emoji
Image
Align leftAlign centerAlign rightToggle HTML viewToggle full pageToggle lights
Drop image/file