What's new in this release?
- Last Updated: October 28, 2020
- 7 minute read
- DataDirect Connectors
- ODBC
- MongoDB 8.0
- Documentation
Support and certification
Visit the following web pages for the latest support and certification information.
Changes Since 8.0.1 GA
- Enhancements
-
The drivers using base version B0649 and later have been enhanced to include timestamp in the internal packet logs by default. If you want to disable the timestamp logging in packet logs, set
PacketLoggingOptions=1. The internal packet logging is not enabled by default. To enable it, setEnablePacketLogging=1. - The new SchemaFilter config option allows you to specify the database and collections pairs for which you want the driver to fetch metadata. Using this option can provide can significantly improve connection times by limiting the collections for which metadata is fetched to only those that are required by your application. See SchemaFilter (config option) for details.
- The driver and schema tool have been enhanced to allow you to limit
sampling to only new collections when refreshing the schema map. This
provides for quicker processing times if you only want to map new
collections or if existing collections are unchanged. You can specify
the sampling behavior using the following methods:
- The Schema Tool: At connection, the Schema Tool prompts you to select the sampling behavior for the session. See Starting the Schema Tool on UNIX/Linux or Starting the Schema Tool on Windows for details.
- The Refresh Map SQL extension: When executing
the Refresh Map SQL extension, you can specify the
NEWoptions in the statement to limit sampling to only new collections. See Refresh Map (EXT) for details.
- The driver has been enhanced to support the native Decimal128 data type, which maps to the SQL_DECIMAL ODBC type by default. See Data types for details.
-
The Driver Manager for UNIX/Linux has been enhanced to support setting the Unicode encoding type for applications on a per connection basis. By passing a value for the SQL_ATTR_APP_UNICODE_TYPE attribute using SQLSetConnectAttr, your application can specify the encoding at connection. This allows your application to pass both UTF-8 and UTF-16 encoded strings with a single environment handle.
The valid values for the SQL_ATTR_APP_UNICODE_TYPE attribute are SQL_DD_CP_UTF8 and SQL_DD_CP_UTF16. The default value is SQL_DD_CP_UTF8.
Refer to Driver Manager and Unicode encoding on UNIX/Linux in Progress DataDirect for ODBC Drivers Reference for details.
This enhancement is available in build 08.02.0449 of the driver manager.
- The CAST_TO_NATIVE function escape has been introduced to select or insert a value of a specific native type. This can be particularly useful when MongoDB has inconsistent native types for a given field. Currently, CAST_TO_NATIVE can only be used with the ObjectID type in SELECT statement filters and literal INSERT values. See Default mapping of columns with inconsistent native data types and CAST_TO_NATIVE function escape for details.
-
- Changed Behavior
-
Java SE 7 has reached the end of its product life cycle and will no longer receive generally available security updates. As a result, the drivers will no longer support JVMs that are version Java SE 7 or earlier. Support for
distributed versions of Java SE 7 and earlier will also end, including IBM SDK (Java Edition).
- The following Windows platforms have reached the end of
their product lifecycle and are no longer supported by the driver:
- Windows 8.0 (versions 8.1 and higher are still supported)
- Windows Vista (all versions)
- Windows XP (all versions)
- Windows Server 2003 (all versions)
-
Changes For 8.0.1 GA
- Driver Enhancements
- The driver has been enhanced to resolve naming conflicts that can occur
when exposing native objects using unquoted, uppercase identifiers (the
default behavior). To avoid conflicts, the driver appends an underscore
separator and integer (for example,
_1) to identifiers that differ only by case. See Naming conflicts and Using identifiers for details. -
In addition, you can further define the default length for VARCHAR columns by tuning the new MaxVarcharSize and MinVarcharSize config options. These options allow you to specify maximum and minimum size limits for the default length generated by the DefaultVarcharSize config option. When tuned for your data, MaxVarcharSize and MinVarcharSize can improve memory efficiency and avoid the undesired truncation of VARCHAR values.
See DefaultVarcharSize (config option), MaxVarcharSize (config option) and MinVarcharSize (config option) for details.
- The new KeywordConflictSuffix config option allows you to specify the suffix that is appended to object and field names that conflict with SQL engine keywords. See KeywordConflictSuffix (config option) for details.
- The driver includes a new Tableau data source file (Windows only) that provides improved functionality when accessing your MongoDB data with Tableau. See Accessing Data in Tableau (Windows only) for details.
- The driver uses the MongoDB aggregation framework to improve performance in the execution of SQL queries using LIMIT, ORDER BY, or TOP clauses.
- The following new SQL extensions have been added to the
driver:
- Refresh Map: 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 definition and associated files. See Refresh Map (EXT) for details.
- Reload Map: RELOAD MAP reloads the schema definition and associated files, allowing you to update your relational view of native data while the driver is connected to the data store. See Reload Map (EXT) for details.
- The driver has been enhanced to improve the handling of large result sets and reduce the likelihood of out-of-memory errors through the configuration of the Fetch Size connection option and the introduction of the Result Memory Size connection option. See Fetch Size and Result Memory Size for additional information.
- The driver has been enhanced to further ensure data integrity when mapping inconsistent data types to a relational schema. See Default mapping of columns with inconsistent native data types for details.
- The driver has been enhanced to resolve naming conflicts that can occur
when exposing native objects using unquoted, uppercase identifiers (the
default behavior). To avoid conflicts, the driver appends an underscore
separator and integer (for example,
Changes for 8.0.0 GA
- Driver Enhancements
- When first connecting to a MongoDB server, the driver automatically creates a normalized schema of the data and generates a SchemaDefinition for housing and sharing the normalized schema. See Normalizing native data and Schema Definition multiplying the value specified by the size of the largest value for detected in that column. This results in a default length that is proportionate to the size of the data within the column, which can improve the memory efficiency within the driver and application. The default value for this option has been updated to
- Native MongoDB data is fully normalized during the normalization process, regardless of the depth of nested arrays, documents, and objects. See Normalizing native data and Generating a normalized view for details.
- The driver uses the MongoDB aggregation framework to improve performance in the execution of SQL queries using aggregates, GROUP BY clauses, or HAVING clauses.
- The SQL Engine Mode connection option now supports Auto mode. When this setting is enabled, the driver automatically determines whether the SQL engine runs in server or direct mode based on availability. See SQL Engine Mode for details.
- The new Min Long Varchar Size connection option allows you to fetch SQL_LONGVARCHAR columns whose size is smaller than the minimum imposed by some third-party applications, such as SQL Server Linked Server. See Min Long Varchar Size for details.
- The new Varchar Threshold connection option allows you to fetch columns that would otherwise exceed the upper limit of the SQL_VARCHAR type for some third-party applications, such as SQL Server Linked Server. See Varchar Threshold for details.
- The driver and Driver Manager have been enhanced to support UTF-8 encoding
in the odbc.ini and odbcinst.ini files.
Refer to Character encoding in the odbc.ini and odbcinst.ini files in Progress DataDirect for ODBC Drivers Reference for details.
- Schema Tool Enhancements
- The new Restart Wizard feature allows you to reset the relational view of your data from the Table Wizard menu. See Restarting the wizard for details.
- The new Update Schema feature allows you to map all new native objects to your schema definition with a single click. See Mapping newly detected objects for details.
- Support for selecting multiple objects in the Table Wizard for improved object management when customizing your schema.
- Changed Behavior
- The driver no longer supports in-memory tables (also referred to as "local tables").
- The driver’s SQL engine was upgraded for this release. Consequently, there are differences in how the driver handles some SQL queries. Visit the Progress DataDirect SQL Engine Upgrade Web page page for more information.
- The Normalization Depth option is no longer available in the Schema Tool because native MongoDB data is now fully normalized, regardless of depth, during the normalization process. See Normalizing native data for details.
- The 8.0.x version of the driver and Schema Tool does not support schema definitions created with previous versions of the product. Therefore, you should reproduce your 7.1.x schema definitions with the current release of the driver or Schema Tool.
- The 8.0 driver pushes down SQL queries to MongoDB whenever possible. Queries that cannot be pushed down to MongoDB in the 8.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: https://www.progress.com/support-and-services. Our team will quickly address any performance issues you may encounter.
- The default value for the SQL Engine Mode connection
option has been updated:
- For Windows users, the default is 0 (Auto).
- For UNIX/Linux users, the default is 2 (Direct).
See SQL Engine Mode for details.
- The default value for the Server Port Number connection
option has been updated:
For the 32-bit driver, the default is 19932.
For the 64-bit driver, the default is 19931.
- The default value for the Schema Definition connection
option has been updated:
For Windows users, the default is:
application_data_folder\Local\Progress\DataDirect\MongoDB Schema\host_name.config
For UNIX/Linux users, the default is:
~/progress/datadirect/mongodb_schema/host_name.config
See Schema Definition for details.