Fixes: Describes the issues resolved since general availability.
The InValuesLimit connection property has been added to the driver. It determines the maximum number of values in an IN clause subquery to be materialized. If this value is exceeded, the driver processes the subquery as a JOIN clause. You can use this property if your query exceeds the maximum SOQL length set by Salesforce. Refer to InValuesLimit for details.*
The driver has been enhanced to support the JSON web token (JWT) grant in OAuth 2.0 authentication. The connection properties JWTCertAlias, JWTCertStore, JWTCertPassword, ClaimsIssuer, and ClaimsSubject have been added to the driver.*
Available: Driver version 6.0.0.002316
Proposed by the following DataDirect Idea: https://progresssoftware.aha.io/features/DDIDEAS-2764
The installer program has been enhanced to support Azul Zulu JRE 11. As a result of this change, the installer has ended support for some of the old operating systems. The installer supports the following operating systems after the enhancement:*
Any operating system on a machine using a JRE that is Java SE 8 or higher (LTS version), including Oracle JDK, OpenJDK, and IBM SDK (Java) distributions.
Windows 8.1 or higher
Windows Server 2012 RC2 or higher
Important: These changes do not affect the operating system requirements of the driver.
The driver has been enhanced to use proxy server
settings defined in the JVM system properties by default. If no proxy settings are defined in the connection string or data source, the driver will attempt to use the values of the http.proxyHost and http.proxyPort JVM system properties to connect
to the database.*
The driver has been enhanced to support the Salesforce Bulk API V2 for bulk load operations. This functionality can be enabled and configured using the new BulkLoadVersion and BulkLoadJobSize connection properties. Refer to BulkLoadVersion and BulkLoadJobSize for details.*
The ApplyToLabel connection property has been added to the driver. It determines whether the driver applies the toLabel() function to the picklist fields when executing queries. Refer to ApplyToLabel for details.*
The driver has been enhanced to include timestamp in the Spy and JDBC packet logs by default. If required, you can disable the timestamp logging by specifying the following at connection: For Spy logs, set spyAttributes=(log=(file)Spy.log;timestamp=no)
and for JDBC packet logs, set ddtdbg.ProtocolTraceShowTime=false.*
Interactive SQL for JDBC (JDBCISQL) is now installed with the product. JDBCISQL is a command-line interface that supports connecting your driver to a data source, executing SQL statements and retrieving results in a terminal. This
tool provides a method to quickly test your drivers in an environment that does not support GUIs.*
yes, no, on and off have been added as valid values for the connection properties that accept boolean values.*
The driver has been enhanced to support OAuth 2.0, which is an open protocol for token-based authentication. OAuth 2.0 allows you to authenticate without specifying a user ID or password, eliminating the risk of exposing them to
unauthorized access. Refer to Configuring OAuth 2.0 authentication for details.*
The driver has been enhanced to support the Salesforce Bulk API, including PK chunking, for bulk fetch operations. This functionality can be enabled and configured with the EnableBulkFetch, BulkFetchThreshold, EnablePKChunking, and PKChunkSize connection
properties. Refer to Connection Property Descriptions for details.
The driver has been enhanced to support multiple simultaneous sessions. The number of active sessions should not exceed the number permitted by your Salesforce account and can be limited by the setting of the WSPoolSize connection property. Refer to WSPoolSize for details.
The new WSPoolSize connection property allows you to specify the maximum number of sessions the driver uses. This allows the driver to have multiple Web service requests active simultaneously when multiple JDBC connections are open, thereby improving
throughput and performance. Refer to WSPoolSize for details.
The Refresh Map SQL extension has been added to the driver. REFRESH MAP discovers native objects that have been added to the native data store since connection or since the last refresh and maps the objects into your relational view of native data.
It also incorporates any configuration changes made to your relational view by reloading the schema map and associated files. Refer to Refresh Map (EXT) for details.
The driver has been enhanced to make SOAP API calls using only internal components. In earlier versions, the driver used an external library, the CXF library, to make these calls. Note that the product package no longer includes the CXF library as
The ConfigOptions connection option has been deprecated. As a result, the driver has been enhanced to support setting each of the configuration options supported by ConfigOptions as a standalone connection option. Although the driver will continue
to support ConfigOptions until the next major release of the driver, in anticipation of this change, we recommend updating your data sources and connection URL strings to set configuration options as standalone connection options.*
The driver has been updated to require a Java Virtual Machine (JVM) that is Java SE 8 or higher, including Oracle JDK, OpenJDK, and IBM SDK (Java) distributions. Refer to Requirements for details.*
The precision for the Integer data type has been changed from 10 to 9. Refer to getTypeInfo for details.*
The NUM_PREC_RADIX value for the Double data type has been changed from 10 to 2. Refer to getTypeInfo for details.*
The data source class com.ddtek.jdbcx.sforce.SForceDataSource40 has been deprecated. The data source class com.ddtek.jdbcx.sforce.SForceDataSource should be used for data source connections. The data source class com.ddtek.jdbcx.sforce.SForceDataSource
now supports all JDBC specifications. Refer to Data Source and Driver Classes for details.
In addition to the information listed here, refer to this compatibility FAQ for guidance on upgrading
from the Progress DataDirect for JDBC for Salesforce 5.1 driver to the 6.0 driver.
The driver’s SQL engine was upgraded for this release. Consequently, there are differences in how the driver handles some SQL queries. Refer to this SQL engine upgrade document for details.
The 6.0 driver pushes queries to Salesforce whenever possible. Queries that cannot be pushed to Salesforce with the 6.0 driver may be slower than comparable queries made with previous versions of the driver because data may be paged to disk while
completing an operation. If you experience slow performance, please contact Technical Support.
Bulk load operations are no longer restricted to 10,000 rows for evaluation installations of the driver.
The native CURRENCY and PERCENTAGE data types now map to the DECIMAL JDBC data type. In earlier releases, these data types mapped to the DOUBLE data type.
The DatabaseName property has been deprecated. The SchemaMap property should now be used to specify the fully qualified path of the configuration file where the map of the Salesforce data model is written. Refer to SchemaMap for details.
The CreateDB and RefreshSchema properties have been deprecated. The CreateMap property should now be used to specify whether the driver creates a new schema map when establishing the connection. Refer to CreateMap for details.
The RefreshDirtyCache property has been deprecated. Now, for every fetch operation, the driver refreshes the cached object to pick up changes made to tables and rows.
The following connection properties and configuration options now have new default settings.
The default value of the EnableBulkLoad connection property has been updated to true. By default, the bulk load protocol can be used for inserts, updates, and deletes based on the BulkLoadThreshold property.
The default value for the StmtCallLimit connection property has been updated to 100. By default, the driver can make a maximum of 100 Web service calls when executing any single SQL statement or metadata query.
The default value for the AuditColumns configuration option has been updated to all (AuditColumns=all). By default, the driver includes all audit columns and the master record id column in its table definitions.
The default value for the CustomSuffix configuration option has been updated to include (CustomSuffix=include). By default, the driver includes the "__c" suffix table and column names when mapping the Salesforce data model.
The default value for the MapSystemColumnName configuration option has been updated to 0 (MapSystemColumnNames=0). By default, the driver does not change the names of the Salesforce system columns when mapping the Salesforce data
Support for result set holdability has been added to the driver.
Added the RegisterStatementPoolMonitorMBean connection property. Note that the driver no longer registers the Statement Pool Monitor as a JMX MBean by default. You must set RegisterStatementPoolMonitorMBean to true to register the Statement
Pool Monitor and manage statement pooling with standard JMX API calls.*
No new features
No new features
Enhanced to throw warning when EnableBulkLoad fails
The new KeywordConflictSuffix keyword=value pair for the ConfigOptions property allows you to specify a string that the driver appends to any object or field name that conflicts with a SQL engine keyword. For example, if you specify KeywordConflictSuffix=TAB,
the driver maps the Case object in Salesforce to CASETAB.
The new RefreshSchema connection property specifies whether the driver automatically refreshes the remote object mapping and other information contained in a remote schema the first time a user connects to an embedded database.