- Fix(databricks#84): now library will not attempt to parse column names and will use ones provided by server
DBSQLClient.openSession
now takes a limited set of options (OpenSessionRequest
instead of Thrift'sTOpenSessionReq
)DBSQLClient.openSession
now uses the latest protocol version by default- Direct results feature is now available for all IOperation methods which support it. To enable direct results feature,
maxRows
option should be used - Direct results became enabled by default. If
maxRows
is omitted - it will default to100000
. To disable direct results, setmaxRows
tonull
FunctionNameRequest
type renamed toFunctionsRequest
IDBSQLConnectionOptions
type renamed toConnectionOptions
IFetchOptions
renamed toFetchOptions
DBSQLOperation.getSchema
will wait for operation completion, likeDBSQLOperation.fetchChunk
/DBSQLOperation.fetchAll
. It also supports the same progress reporting optionsrunAsync
option is now available for all operations that support it- Added logging functionality for logging on client side and added new optional logger param for DBSQLClient constructor
- Turned on Direct results feature by default
- Removed legacy Kerberos auth APIs
- Operations will wait for cluster to start instead of failing
- Added support for DirectResults, which speeds up data fetches by reducing the number of server roundtrips when possible
DBSQLOperation
interface simplified:HiveUtils
were removed and replaced with new methodsDBSQLOperation.fetchChunk
/DBSQLOperation.fetchAll
. New API implements all necessary waiting and data conversion routines internally- Better TypeScript support
- Thrift definitions updated to support additional Databricks features
- User-agent string updated; a part of user-agent string is configurable through
DBSQLClient
'sclientId
option - Connection now uses keep-alive (not configurable at this moment)
DBSQLClient
now prepends slash to path when neededDBSQLOperation
: default chunk size for data fetching increased from 100 to 100.000
DBSQLClient.utils
was permanently removed. Code which used utils.waitUntilReady
, utils.fetchAll
and utils.getResult
to get data should now be replaced with the single DBSQLOperation.fetchAll
method.
Progress reporting, previously supported by utils.waitUntilReady
, is now configurable via
DBSQLOperation.fetchChunk
/DBSQLOperation.fetchAll
options. DBSQLOperation.setMaxRows
also became
an option of methods mentioned above.
- Initial release