Na versão 1.7.16, o driver ODBC do Easysoft SQL Server mudou de usar um cursor de cliente para um cursor de servidor quando o comportamento de um aplicativo sugeriu que ele precisava apenas de um subconjunto de dados em um resultado de consulta. Com um cursor de cliente, o banco de dados envia o conjunto de resultados completo em uma única resposta ao driver ao responder a uma consulta. O comportamento 1.7.16+ também imita como o SQL Native Client da Microsoft se comporta a esse respeito.
Uma substituição para esse comportamento foi adicionada na versão 1.8.10 porque se o aplicativo realmente quiser o conjunto de resultados inteiro, o uso de um cursor de servidor tem implicações de desempenho, pois os cursores de servidor são mais lentos. Outra consequência da mudança na versão 1.7.16 é um problema que nos foi relatado por um cliente que estava usando o Cognos no Linux com SQL Server. Ao tentar consultar uma tabela com índices columnstore clusterizados, o cliente recebeu o erro:
"Cursors are not supported on a table which has a clustered columnstore index"
pois os cursores do servidor não são suportados ao usar este recurso. A solução alternativa era reverter para o comportamento anterior para cursores adicionando esta linha à fonte de dados ODBC em
/etc/odbc.ini
:[SQLSERVER_SAMPLE] . . . OVERRIDE=65536