WL#4394: Changes in the storage engine API versioning for InnoDB
Affects: Server-9.x — Status: Un-Assigned — Priority: Medium
Currently the version of the storage engine API is created from the server version - and it means that a storage engine plugin can only be loaded in the exactly the same minor server version that is was built for. It's inconvenient for storage engine vendors who don't have the resources to build a new plugin binary for every MySQL release. Additionally, certain storage engine plugins may use only a subset of the API, and vendors don't want changes in the unused parts of the API affect the load-ability of the plugin. We'll fix it as follows: 1. we will start using icheck to control all changes to the storage engine API (WL#4380). 2.by studying the generated .ic file we will get a fairly good idea of what structures and classes the SE API currently consists of 3. Then we will define what subset of the SE API is currently used by InnoDB 4. If it will happen to be notably smaller than the "full" SE API (as defined by .ic file) we will implement a workaround so that InnoDB plugin version could be loaded in the server with mismatching SE API version.
Copyright (c) 2000, 2018, Oracle Corporation and/or its affiliates. All rights reserved.