MySQL Forums
Forum List  »  Announcements

MySQL Connector/C++ 8.0.12 has been released
Posted by: Balasubramanian Kandasamy
Date: July 27, 2018 11:19AM


Dear MySQL users,

MySQL Connector/C++ 8.0.12 is the second GA release version of the MySQL
Connector/C++ 8.0 series.

Connector/C++ 8.0 can be used to access MySQL implementing Document
Store or in a traditional way, using SQL queries. It allows writing
both C++ and plain C applications using X DevAPI and X DevAPI for C.
It also supports the legacy API of Connector/C++ 1.1 based on JDBC4.

To learn more about how to write applications using X DevAPI, see "X
DevAPI User Guide"

   https://dev.mysql.com/doc/x-devapi-userguide/en/

See also "X DevAPI Reference" at

   https://dev.mysql.com/doc/dev/connector-cpp/devapi_ref.html

and "X DevAPI for C Reference" at

   https://dev.mysql.com/doc/dev/connector-cpp/xapi_ref.html

For generic information on using Connector/C++ 8.0, see

   https://dev.mysql.com/doc/dev/connector-cpp/

Note: For X DevAPI applications, Connector/C++ 8.0 requires
MySQL Server 5.7.12 or higher with X Plugin enabled. For applications
that use the legacy JDBC API, Connector/C++ 8.0 can use MySQL Server 5.5
or higher, and X Plugin is not required.

   https://dev.mysql.com/doc/refman/5.7/en/document-store.html

To download MySQL Connector/C++ 8.0.12, see the "Generally Available (GA)
Releases" tab at

   https://dev.mysql.com/downloads/connector/cpp/


Changes in MySQL Connector/C++ 8.0.12 (2018-07-27, General Availability)

     * Installation Notes

     * Packaging Notes

     * Security Notes

     * X DevAPI Notes

     * Bugs Fixed

Installation Notes


     * Because the Microsoft Visual C++ 2017 Redistributable
       installer deletes the Microsoft Visual C++ 2015
       Redistributable registry keys that identify its
       installation, standalone MySQL MSIs may fail to detect
       the Microsoft Visual C++ 2015 Redistributable if both it
       and the Microsoft Visual C++ 2017 Redistributable are
       installed. The solution is to repair the Microsoft Visual
       C++ 2017 Redistributable via the Windows Control Panel to
       recreate the registry keys needed for the runtime
       detection. Unlike the standalone MSIs, MySQL Installer
       for Windows contains a workaround for the detection
       problem.

Packaging Notes


     * An RPM package for installing ARM 64-bit (aarch64)
       binaries of Connector/C++ on Oracle Linux 7 is now
       available in the MySQL Yum Repository and for direct
       download.
       Known Limitation for this ARM release: You must enable
       the Oracle Linux 7 Software Collections Repository
       (ol7_software_collections) to install this package, and
       must also adjust the libstdc++7 path. See Yum's Platform
       Specific Notes
(http://dev.mysql.com/doc/refman/8.0/en/linux-installation-yum-repo.html#yum-install-platform-specifics)
       for additional details.

     * Installers for Connector/C++ are now available in these
       formats: MSI packages (Windows); RPM packages (Linux);
       DMG packages (macOS).

Security Notes


     * yaSSL is no longer included in Connector/C++ source
       distributions. wolfSSL may be used as a functionally
       equivalent alternative that has a GPLv2-compatible
       license. In addition, wolfSSL (like OpenSSL) supports the
       TLSv1.2 protocol, which yaSSL does not.
       To build Connector/C++ using wolfSSL, use the
       -DWITH_SSL=path_name CMake option, where path_name
       indicates the location of the wolfSSL sources. For more
       information, see Source Installation System Prerequisites
(http://dev.mysql.com/doc/connector-cpp/8.0/en/connector-cpp-installation-source-prerequisites.html), 
       and Connector/C++ Source-Configuration Options
(http://dev.mysql.com/doc/connector-cpp/8.0/en/connector-cpp-source-configuration-options.html).

X DevAPI Notes


     * Connector/C++ now supports NOWAIT and SKIP LOCKED lock
       contention modes to be used with lockExclusive() and
       lockShared() clauses of CRUD find/select operations (see
       Locking Read Concurrency with NOWAIT and SKIP LOCKED
(http://dev.mysql.com/doc/refman/8.0/en/innodb-locking-reads.html#innodb-locking-reads-nowait-skip-locked)), 
       and a default lock contention mode. The following list names
       the permitted constants. For each item, the first and
       second constants apply to X DevAPI and X DevAPI for C,
       respectively.

          + LockContention::DEFAULT, LOCK_CONTENTION_DEFAULT:
            Block the query until existing row locks are
            released.

          + LockContention::NOWAIT, LOCK_CONTENTION_NOWAIT:
            Return an error if the lock cannot be obtained
            immediately.

          + LockContention::SKIP_LOCKED,
            LOCK_CONTENTION_SKIP_LOCKED: Execute the query
            immediately, excluding from the query items that are
            locked.
       For X DevAPI and X DevAPI for C applications, lock mode
       methods accept these lock contention constants as a
       parameter. For X DevAPI applications, lock mode methods
       can be called without this parameter, as before; this is
       equivalent to passing a lock mode of DEFAULT.

     * Connector/C++ now supports the SHA256_MEMORY
       authentication mechanism for connections using the X
       Protocol. For X DevAPI applications, SessionOption::AUTH
       supports the new value AuthMethod::SHA256_MEMORY. For X
       DevAPI for C applications, the session option
       MYSQLX_OPT_AUTH supports the new value
       MYSQLX_AUTH_SHA256_MEMORY. These new values request using
       the sha256_memory authentication mechanism when creating
       a session.

     * For compliance with the Core DevAPI, these Connector/C++
       changes were made:

          + getAffectedItemsCount() was moved from Result to
            Result_common.

          + Collection.modify(condition).arrayDelete() was
            removed.

          + getAffectedRowsCount() was removed. Use
            getAffectedItemsCount() instead.

          + getWarningCount() was renamed to getWarningsCount().

Bugs Fixed


     * utf8mb4 character data was handled incorrectly. (Bug
       #28240202)

     * Session creation had a memory leak. (Bug #27917942)

     * When configuring to build Connector/C++ with the legacy
       connector, CMake did not account for the
       MYSQL_CONFIG_EXECUTABLE option. (Bug #27874173, Bug
       #90389)

     * Improper error handling for unknown hosts when creating a
       session could result in unexpected application exit. (Bug
       #27868302)

     * The mysqlx_row_fetch_one() X DevAPI for C function could
       fail to return for large result set exceeding the maximum
       packet size. Now such result sets produce an error. (Bug
       #27732224)

Enjoy and thanks for the support!

On Behalf of Oracle/MySQL Release Engineering Team,
Balasubramanian Kandasamy


Options: ReplyQuote


Subject
Views
Written By
Posted
MySQL Connector/C++ 8.0.12 has been released
2048
July 27, 2018 11:19AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.