- Added the Default column to the sys_procedureparameters table.
- Added the AdImages view for querying ad images associated with an ad account.
- Changed the API version default of the Version property from 14.0 to 15.0.
- Added the CreateAdInsightsReport stored procedure for the generation of custom ad insights reports.
- Added retry method, governed by new RetryLevel connection property, for avoiding data limit API errors for ad insights requests. For Target-less queries executed at the ad account level, the driver will now attempt to retry initial data requests that encounter errors about requesting insights over too many rows by attempting to retry the request at a lower level of ad object. The deepest level of ad object to which the driver might retry is determined by the Level query parameter and RetryLevel connection property, in order of precedence.
- Added the IsPath column to the sys_procedureparameters table.
- We now support handling the keyword "COLLATE" as standard function name as well.
- The method GetJDBCMinorVersion() and GetJDBCMajorVersion() return 4.2 as the supported JDBC major / minor version.
- Removed support for JRE 1.6. JRE 1.8 and above is now required.
- The method DatabaseMetaData.getTypeInfo() now returns all the data types the driver supports. Previously it was returning only a portion of the data types. The returns types include: tinyint, smallint, int, bigint, float, double, numeric, decimal, bit, date, datetime, time, varchar, binary, uuid.
- Correct the return value of method DatabaseMetaData.supportsOuterJoins(), it used to return the wrong value.
- Added the following fields for AdCreatives: EffectiveInstagramMediaId, EffectiveInstagramStoryId, SourceInstagramMediaId.
- Updated the maximum pagesize to be unrestricted for all tables. Previously Facebook would throw exceptions if the pagesize was exceeded, but this seems to have been removed.
- The default API version is updated to 12.0.
- Added the TargetingDevicePlatforms, TargetingPublisherPlatforms, and TargetingInstagramPositions to the drivers.
- Added extra columns for Dimension, Hierarchy and OLAPType to sys_tablecolumns for OLAP properties.
- Removed IS_READONLY, IS_KEY, NUMERIC_PRECISION, DECIMAL_DIGITS from DatabaseMetadata.GetColumns() as they are not part of the JDBC Specification. This information is still available via other metadata calls.
- Added support for the STRING_SPLIT table-valued function in the CROSS APPLY clause.
- Added the KeySeq column to the sys_foreignkeys table.
- Added the new sys_primarykeys system table.
- Updated the Literal Function Names for relative date/datetime functions. Previously relative date/datetime functions resolved to a different value when used in the projection vs te predicate. Ie: SELECT LAST_MONTH() AS lm, Col FROM Table WHERE Col > LAST_MONTH(). Formerly the two LAST_MONTH() methods would resolve to different datetimes. Now they will match.
- As a replacement for the previous behavior, the relative date/datetime functions in the criteria may have an 'L' appended to them. Ie: WHERE col > L_LAST_MONTH(). This will continue to resolve to the same values that previously were calculated in the criteria. Note that the "L_" prefix will only work in the predicate - it not available for the projection.
- Added the TCP Logging Module for the logging information happening on the TCP wire protocol. The transport bytes that are incoming and ongoing will be logged at verbosity=5.
- The default API version is updated to 11.0.
- Facebook has removed access from apps to return comment ids when the user does not also have permissions to moderate the comments. This may mean in some cases comments will stop returning with our driver when they were working previously.
- The user_likes and user_posts permissions (no longer used by default with the embedded driver) now have much more difficult requirements to access them from Facebook.
- Nearly all unique page type columns for the Pages table were deprecated by Facebook. For example, Parking columns, GeneralInfo, Attire, Restaurant Services columns, Awards, etc. These will all start returning null as Facebook transitions to the New Page Experience. These columns will be removed in the 2022 release of the driver.
- Added support for handling client side formulas during insert / update. For example: UPDATE Table SET Col1 = Concat(Col1, " - ", Col2) WHERE Col2 LIKE 'A%'
- Updated how display sizes are determined for varchar primary key and foreign key columns so they will match the reported length of the column.
- Non-conditional updates between two columns is now available to all drivers. For example: UPDATE Table SET Col1=Col2
- Reduced the length to 255 for varchar primary key and foreign key columns.
- Updated implicit and metadata caching to improve performance and support for multiple connections. Old metadata caches are not compatible - you would need to generate new metadata caches if you are currently using CacheMetadata.
- Updated index naming convention to avoid duplicates
- Updated and standardized Getting Started connection help.
- Added the Advanced Features section to the help of all drivers.
- Categorized connection property listings in the help for all editions.
- Kerberos authentication is updated to use TCP by default, but will fall back to UDP if a TCP connection cannot be established
- Updated the default Version to 10.0.
- On the AdsInsights and AdInsightsActions tables, the date_preset input available input value of "lifetime" is changed to "maximum" to comply with Facebook API changes. The more relevant impact is that as of API version 10.0, apps may only retrieve up to 37 months prior data. In the past, older insight data was available.
- The Permissions connnection property is deprecated and replaced with Scope to match other drivers.