Thomas Tauber-Marshall has uploaded a new patch set (#4). Change subject: Initial structure for the C++ hiveserver2 client. ......................................................................
Initial structure for the C++ hiveserver2 client. The basic model: clients connect to the hiveserver2 server using HS2Service::Connect. Sessions can then be started with HS2Service::OpenSession, and operations can be run on the session with functions like HS2Session::ExecuteStatement. The operation handle provides functions for checking the operation status and retrieving results. PIMPL-ing is used to hide Thrift from the header files, and a ThriftRPC struct containing the Thrift client object is passed from the service into the session and operations to give them access to RPC calls. Currently, only fetching column oriented results is supported. Fetched results are stored in a ColumnarRowSet, and columns of a given types can be accessed via their index. Column objects expose pointers to the raw data returned by Thrift to give clients access without unnecessary copying. There is also a Status class that is used to indicate when RPCs are unsuccessful, and a sample usage file to demonstrate how a client can use the interface. Change-Id: I7be82d5897ad6093116915b17924674c4ae508a0 --- M CMakeLists.txt A src/hs2client/columnar-row-set.h A src/hs2client/hs2client.cc A src/hs2client/hs2service.h A src/hs2client/hs2session.h A src/hs2client/operation.h A src/hs2client/sample-usage.cc A src/hs2client/status.cc A src/hs2client/status.h 9 files changed, 1,042 insertions(+), 0 deletions(-) git pull ssh://gerrit.cloudera.org:29418/hs2client refs/changes/45/2645/4 -- To view, visit http://gerrit.cloudera.org:8080/2645 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: I7be82d5897ad6093116915b17924674c4ae508a0 Gerrit-PatchSet: 4 Gerrit-Project: hs2client Gerrit-Branch: master Gerrit-Owner: Thomas Tauber-Marshall <[email protected]> Gerrit-Reviewer: Marcel Kornacker <[email protected]> Gerrit-Reviewer: Matthew Jacobs <[email protected]> Gerrit-Reviewer: Thomas Tauber-Marshall <[email protected]> Gerrit-Reviewer: Wes McKinney <[email protected]>
