Release Notes
JDBC Release Notes
All JDBC drivers are located the Ocient Maven repository.
Internal updates only.
Internal updates only.
Bugs
- [DB-28722]: Fixed the issue where the client closed the result set before sending the KILL_QUERY request.
- [DB-28325]: Fixed an underlying SLF4JLogger error that prevented the driver from importing.
- [DB-24984]: Fixed HTTP client configuration to accept standard cookie specifications.
- New Features
- Enabled support of fetching cached queries using the JDBC 3.1.1 driver with version 22.1 and older versions of the .
- Fixed connection failures by adding sequence numbers to metadata responses on the client side for legacy databases without sequence number support.
- New Features
- Improved maximum throughput between client and server, specifically for transferring large and sorted result sets.
- Deprecated com.ocient.jdbc.XGConnection#redirect. The redirect method in the com.ocient.jdbc.XGConnection class is now deprecated and is slated for removal in future releases. For applications that require a connection to a specific SQL Node, Ocient recommends to use the force=true connection property.
- New Features
- Improved scalability for high-volume concurrent database connections for applications such as and Superset.
- Improved latency for bulk data transfers.
- New Features
- Fixed requirement to restart the application after cluster upgrade.
- New Features
- Improved performance by pooling database connections used for sideband channels.
- Added MAX_THREADS_PER_RESULTSET connection property.
- New Features
- Added ability to periodically log metrics to a file.
- Added METRICS ON <alphanumeric> CLI command.
- New Features
- Added PERFORMANCE NETWORK CLI command.
- Added PERFORMANCE DATABASE CLI command.
- Deprecate PERFORMANCE ON CLI command.
- New Features
- Removed OpenJump system dependency
- New Features
- Added support for DELETE FROM
- New Features
- Fixed IndexOutOfBoundsException in server redirect
- New Features
- Log stack trace of XGStatement#sendAndReceive() read errors
- New Features
- Allow extract to /dev/null
- New Features
- Strip trailing statement delimiter from queries
- New Features
- Include jdbc.sql.Driver service in META-INF
- New Features
- Add support for REFRESH MLMODEL command, which allows updating of a Machine Learning model without changing the ML model properties
- [DB-22501] Never resubmit queries that have been sent to the server
- Add support for EXPORT MLMODEL command
- Load JDBC version from build properties file at runtime
- Set Service Class
- Allow connection property override
- Address CVE-2022-33980 and CVE-2022-24823
- Print hex instead of address of byte array in XGTuple#toString
- Re-enabled ability to override a connection property
- Fix query timeouts which were not being honored
- Handle non-resolvable database DNS names received from the database
- Made JDBC Connection properties case-insensitive using a new class CaselessProperties
- Converted the rest of the connection properties to the ConnectionProperty enum
- Implement XGPreparedStatement#setObject(Index, Timestamp, Calendar)
- Add "statementPooling" driver property. Set to "OFF" to disable statement caching
- Add GET JDBC COMMIT INFO command
- Add /version, /commit, /info, and /pid metrics endpoints
- Ensure backwards compatibility with JRE8
- Add CLI support for `EXPORT PIPELINE'
- Add START PIPELINE and STOP PIPELINE for updates
- Made SHOW command work as a SELECT outside of just the CLI
- Made SHOW command a select command rather than an update command
- BENCHMARK command consumes result set for consistency w/ manual input
- New Features
- Add support for SHOW command, which allows easy querying of the information schema.
- New Features
- [DB-20912] Add support for one-time password (OTP) based SSO flows
- [DB-20912] Add OAuth2 Authorization Code w/ PKCE Single Sign-On Flow
- [DB-20912] Add OAuth2 Device Authorization Grant Single Sign-On Flow for input constrained environments
- New Features
- Add BENCHMARK NSAMPLES COMMAND which will run COMMAND NSAMPLES times and produce a timing report in the CLI output.
- Add PRINTUUID [ON | OFF] which will print the query UUID to the CLI output.
- New Features
- [DB-21078] Add s3_upload_part_size and s3_upload_part_parallelism extract configuration properties.
- New Features
- [DB-21078] Add REST endpoint to expose query and data extract performance metrics
- [DB-21078] Add ms precision to JDBC log entries
- New Features
- [DB-21251] Allow extract property override via "JDBC_EXTRACT_*" prefixed environment variable
- New Features
- Allow aliases on nested queries in extract SQL statements (DB-21075)
- New Features
- Escape escape characters in quoted field for non-comma delimited extracts
- New Features
- Add support for using CANCEL TASK to cancel a task instead of treating it like a CANCEL command
- New Features
- Resolve CVE-2022-24823; update netty-common version (4.1.77.Final)
- Resolve CVE-2021-43797; update netty-codec-http version (4.1.71.Final)
- New Features
- Replace skip_header with header_mode in CSV extract options.
- Add CLI configuration file, ~/.ocient-cli-configuration, and idle timeout option cliIdleTimeoutMinutes
- New Features
- Add escape_unquoted_values, input_escaped, and quote_all_fields in CSV extract options.
- Add a new custom TSV writer that handles all non-comma delimiter cases.
- New Features
- Add compression_block_size, compression_level, and num_compression_threads Data extract properties.
- New Features
- Allow non-query commands to print results when performance mode is turned on for easier debugging.
- New Features
- Add UTF-8 character translation to Data extract tool.
- New Features
- Prevent shell expansion of ! when reading user input from CLI
- New Features
- Bumped protocol version for quiesce
- Modified length checks to check if higher order bit is set, signalling a message from the server
- New Features
- Added SQL states for EXECUTE_PLAN_AUTH_FAILURE and EXECUTE_INLINE_PLAN_AUTH_FAILURE
- New Features
- Reconnect and rerun if writing into socket fails when sending request
- Reconnect and rerun if when sending request, shows -1 length
- Added checks for -1 length on response for server signalling a quiescing connection close
- Copy secondary interfaces and secondary index when returning a cached connection
- New Features
- Added CLI support for SET ADJUSTFACTOR, ADJUSTTIME
- Added new columns in system queries: sys.queries: initial_priority, initial_effective_priority, effective_priority, priority_adjust_factor, priority_adjust_time sys.completed_queries: initial_priority, initial_effective_priority, final_effective_priority, priority_adjust_factor, priority_adjust_time
- New Features
- Added redirect support for execute export, explain pipeline, check data
- New Features
- Secondary result set threads will start fetching immediately after the first result set thread gets a ping.
- New Features
- Make force external consistent with other connection parameters
- New Features
- Fix invalid argument message to not refer to ODBC client
- New Features
- Add more logging to multithreaded result set fetch.
- New Features
- Insert statements supported
- New Features
- Data extract tool released.
- Deactive connection caching for calls to createConnection
- New Features
- Fix connection pooling handling with regards to setting schema incorrectly.
- New Features
- Swallow runtime error as well when trying to set socket options.
- New Features
- Wrap invalid socket options in try catch block and swallow exceptions. For compatability with Java versions that are older.
- New Features
- Change driver to not rely on the pom/MANIFEST for the driver version. Move the version into JDBCDriver
- New Features
- Changed connections to utilize keep alive probes in order to detect dead connections.
- New Features
- Upgrade Jline version to 3.21
- New Features
- Improve result set fetching performance
- New Features
- Fix handling of expired token being used to start a session
- New Features
- Updated auth related SQLState error codes
- Fix handling of result set close during result set caching
- New Features
- Force redirect support for testing purposes.
- Removed duplicate code from CLI
- New Features
- Implemented refresh sessions support.
- Implement get server session ID.
- New Features
- ExecutePlan and ExecuteInlinePlan bugfixes
- New Features
- Add token signature and issuer fingerprint fields to sso token handshake.
- Add explicit SSO flags to handshake GCM.
- Pass networkTimeout to new connection upon copy.
- New Features
- Add support for explicit SSO handshakes
- Revert executeQuery redirection change
- New Features
- CLI source command stops on error
- Support "output next query append"
- Add statement command "get jdbc version"
- New Features
- Add sso handshake support
- Refactor duplicated code in handshakes for saving secondary interfaces
- New Features
- Add validation on the driver side for set parameter settings.
- Pass up invalid set parameter command errors.
- New Features
- Fix the way connection resets parameters when reset is true.
- Fix an issue where redirect was not properly using mapped secondary interfaces
- New Features
- Fix sending parameters on reset. maxrow, maxtempdisk, maxtime, parallelism, priority now gets reset properly.
- Map list all queries to select * from sys.queries
- Improve logging
- Statements with closed connections will not get returned to the cache
- New Features
- Fixed poorly structured if statement in CLI source command.
- Remove more stack trace printing and add more logs.
- New Features
- Move the duplicated regex code in CLI.java and XGStatement.java into a new file.
- Implement a generic regex for syntax checking the set family of sql commands.
- Fix a bug in resetting commands using lower cases. "set maxrow reset;" does not work. Needs to be capitalized.
- New Features
- Default clientVersion to 0.00 if the driver provides a null clientVersion to XGConnection.
- New Features
- Have setSchema handle unquoted caps sql. "SET SCHEMA MADISON" will set schema to "madison".
- New Features
- Change SET CONCURRENCY command to SET PARALLELISM
- Change "concurrency" driver property to "parallelism"
- New Features
- Add openJump extensions to jdbc jar.
- Fix source command for plan execute inline.
- New Features
- Fix new hashcode for null elements.
- New Features
- Update list all queries metadata to match that of select * from sys.queries
- Add more connection level settings to hashCode.
- New Features
- Improve source command capabilities and performance
- New Features
- Save command history across sessions
- New Features
- Include the currently set schema to the connection hashcode.
- New Features
- Fix another issue with timeoutMillis. The timeout will now work correctly with zero ping buffers.
- New Features
- For dBeaver compatability, not setting a user in driver properties will cause the driver to default to empty string.
- New Features
- Fix timeoutMillis by correctly inheriting timeoutMillis from properties.
- Clear warnings before running executeQuery and executeUpdate.
- New Features
- Added command to SET PSO SEED for the random number generator used in PSO
- Remove chatty number of rows log.
- Add remoteIp and service class to list all queries.
- Add sleep_in_optimizer command for testing.
- New Features
- Fix the parsing for execute() to properly route to executeStatement()
- New Features
- Improve cache and statement pooling support for redirection.
- Fix timestamp and time with negative nanos.
- New Features
- Added 10 different colors for GIS types in KML
- Added non-GIS types to description of each GIS object in KML
- Moved KML feature from CLI to driver
- New Features
- Use daemon threads for background caching tasks. This allows the program to exit without finishing these tasks.
- New Features
- Add versions packaging to pom.xml.
- Updated dependencies to latest version using versions plugin.
- Change TLS to unverified by default.
- New Features
- Add OBJECT_NOT_FOUND_WARN warning.
- Add OBJECT_ALREADY_EXISTS_WARN warning.
- Fix some misleading log messages.
- New Features
- Add a log for if reconnect() fails to close a socket.
- Driver sends over unique session ID to server.
- Fix a misleading log in client handshake.
- New Features
- Fix spotbugs and narrow spotbugs filter.
- New Features
- Added getters to GIS types
- New Features
- Output next query also prints all gis types into a kml file
- New Features
- Fix empty point for STPoint class
- New Features
- Better build integration with xgsrc
- Upgraded protobuf to version 3.14
- New Features
- Handling for cache limit warning.
- New Features
- Add support for EXPLAIN DEBUG, and make EXPLAIN format JSON by default
- New Features
- Add support for QUARANTINE
- Fix CLI command force external on
- New Features
- Queries that exceed the row limit set by XGConnection::setMaxRows now silently omit excess rows. The previous behavior would result in query failure.
- New Features
- Add support for POINT EMPTY
- Fix CLI performance on/off affecting timing setting.
- New Features
- Add support for CHECK DATA to CLI
- Fix bug where defaultSchema was not working.
- New Features
- Add major and minor version to client handshake.
- Add logging to set param functions.
- New Features
- Improve performance of writing query results to a file.
- New Features
- Add driver method to cancel all cache return threads.
- Add CLI functionality to limit max history size.
- New Features
- Add support for st_linestring and st_polygon
- New Features
- Enable spotbugs analysis
- Increase tracing to millisecond granularity
- New Features
- Switch to using AES/GCM/NoPadding encryption
- New Features
- Fix some broken custom xgMetadata calls.
- New Features
- Added support for TUPLE columns as a SQL Struct type
- New Features
- Fix more OWASP bugs
- New Features
- Added CLI support for EXPORT VIEW
- New Features
- Update the request type for EXPLAIN PIPELINE
- New Features
- Fixed a bunch of OWASP bugs.
- New Features
- Add CLI support for SET MAXROWS, PRIORITY, CONCURRENCY, MAXTIME, and MAXTEMPDISK
- New Features
- Fix a compiler error with CLUSTER_NOT_FOUND error
- New Features
- Add CLUSTER_NOT_FOUND error
- New Features
- Add spotbugs
- Add support for EXPLAIN PIPELINE to CLI
- New Features
- Add SqlStates for LUP decomposition
- Add additional cache logging.
- Fix incorrect schema generated when first statements are created.
- New Features
- Remove unecessary calls to fetchServerVersion
- Fix schema for pooled connections and statement.
- New Features
- Pooling improvements
- New Features
- Allow changing session variable defaults via connection properties and make session variable overrides local to statement objects.
- New Features
- Performance optimizations and restructuring
- New Features
- The JDBC driver now does connection and statement pooling that is automatic and transparent to the caller.
- New Features
- Add support for clearBatch()
- New Features
- Add support for session overrides of service class limits
- SET MAXROWS {N}
- SET MAXTIME {N}
- SET PRIORITY {N}
- SET CONCURRENCY {N}
- New Features
- Fix race condition between adding fetch threads to array and iterating. Also removed some duplicated code.
- New Features
- Remove deprecated plan proto
- New Features
- Fix describe view truncate in CLI.
- New Features
- Fixed cols2Types mapping in RS returned by LIST ALL COMPLETED QUERIES.
- New Features
- Add spaces to syntax parsing.
- New Features
- Completed queries update.
- New Features
- Properly handle nullability for the LIST ALL COMPLETED QUERIES command.
- New Features
- Don’t print stack trace when select queries complete exceptionally.
- New Features
- Added support for LIST ALL COMPLETED QUERIES command.
- New Features
- Fix reconnect and resending logic.
- New Features
- DESCRIBE TABLE now consistently uses SMALLINT and BIGINT to describe inner types of arrays
- New Features
- remove another unnecessary driver version fetch.
- add jar version to log
- New Features
- fix fetch version redirect loop.
- New Features
- make SQLException codes unique.
- New Features
- kill and cancel now throws syntax errors.
- New Features
- CLI now recognizes a DDL statement for INVALIDATE STATS.
- New Features
- fix another spot where all the slq nodes can be brought down.
- New Features
- exportTranslation will close the result set.
- New Features
- executeQuery will not rerun query after reconnect.
- New Features
- Add token fields and username to localQueries protobuf
- New Features
- Multiple result set threads support is complete
- New Features
- Experimental support for multiple result set threads
- New Features
- Minor fix of SQLStates
- setParms() does no work when there are no parameters
- New Features
- Improve performance for large SQL statements
- New Features
- Bug fix for driver not reconnecting when a previous result set is still open.
- New Features
- Move export translation into result set.
- New Features
- Support granting and revoking both privileges and role membership.
- New Features
- Explain, listTables, listViews, getSchema, describeTable, describeView, explainPlan, listAllQueries, and exportTable.
- New Features
- Move some custom functionalities into the driver including: get/set schema, list (system) tables, list views, describe table/views, list indexes, execute/explain plan, cancel/kill query, list all queries, export table, set max rows, set pso.
- New Features
- Ability to set max output rows from the CLI
- New Features
- SSL support.
- New Features
- Timestamp and Time now have nanosecond precision
- New Features
- JDBC driver can now handle hostnames sent back in interface list
- New Features
- Capture initial connection IP and use as last resort for reconnect()
- New Features
- Implement new time/date/timestamp subclasses to circumvent bugs in the standard versions
- New Features
- Add support for load balancing with secondary SQL interfaces
- New Features
- Add support for Export Translation to CLI
- New Features
- Fix misbehavior with 'plan execute inline' using the CLI
- New Features
- Deprecated the HDFS connection table, which was consolidated into the external connection table
- New Features
- Creating an MLModel on no data is now an error, not a warning
- New Features
- Allow one connection to be shared by multiple threads, as long as each thread uses its own Statement object
- New Features
- Improve trace log formatting, including adding thread id
- New Features
- Add support for weeks interval type
- New Features
- Support for getTableTypes()
- New Features
- Protobuf message changes for Add Column feature
- New Features
- Add new error code: Value too large, which indicates that a column value is larger than internal limits
- New Features
- Add calendar support
- Bug Fixes
- Properly handle case-insensitivity of column names on result sets
- New Features
- Add tracing support
- Bug Fixes
- DB-11119 - JDBC multi-host support was not implemented correctly
- Bug Fixes
- DB-10687 - Fix for Kill/Cancel query
- Bug Fixes
- DB-9928 - Fixes for SQL Array type
- New Features
- Protocol support for the NULLS FIRST in the ORDER BY clause
- New Features
- Binary support for the serialization of the following data types: ST_POINT, UUID, IP and IPV4
- Implementation of the Array SQL type
- Bug Fixes
- DB-10155 - Broadcast kill query and cancel query requests to all sql nodes.
- New Features
- DB-10137 - Implement JDBC cancel query. Now it is possible to kill query in dbeaver.
- DB-10120 - JDBC driver support list of sql nodes to connect to
- DB-10119 - Support for multiple IPs under the same DNS address
Updated 08 Jul 2024
Did this page help you?