Stamatis Zampetakis created CALCITE-4567: --------------------------------------------
Summary: Revise modification of CursorFactory in LocalService#toResponse Key: CALCITE-4567 URL: https://issues.apache.org/jira/browse/CALCITE-4567 Project: Calcite Issue Type: Improvement Components: avatica Reporter: Stamatis Zampetakis The {{LocalService#toResponse}} method is responsible for transforming a {{MetaResultSet}} to {{ResultSetResponse}} and in the process of doing this it may also change the {{CursorFactory}} that was passed in {{MetaResultSet}}. The reasons for changing the {{CursorFactory}} inside this method are not obvious and appear a bit arbitrary at the moment. It seems that changing the {{CursorFactory}} in this method is tightly connected to Calcite (as a client) and may not work for other clients. >From a high level perspective a {{CursorFactory}} is necessary to be able to >generate the appropriate Cursor. In principle the client who creates >{{MetaResultSet}} is supposed to know what cursor it needs and so I assume >that it should pass the correct {{CursorFactory}}. The goal of this issue is to revise the respective code in {{LocalService#toResponse}} to make the intentions clear. Changes here are potentially breaking and may require also changes in Calcite and other clients. -- This message was sent by Atlassian Jira (v8.3.4#803005)