[MDEV-20052] Add a MEM_ROOT pointer argument to Type_handler::make_xxx_field() Created: 2019-07-12  Updated: 2019-07-12  Resolved: 2019-07-12

Status: Closed
Project: MariaDB Server
Component/s: Data types
Fix Version/s: 10.5.0

Type: Task Priority: Major
Reporter: Alexander Barkov Assignee: Alexander Barkov
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Blocks
blocks MDEV-4912 Data type plugin API version 1 Closed
blocks MDEV-20016 Add MariaDB_DATA_TYPE_PLUGIN Closed

 Description   

The structure of THD is not available inside plugins. So a plugin cannot do:

  new (table->in_use->mem_root) Field_xxx(...)

Let's add a MEM_ROOT pointer parameter to these Type_handler methods:

  • make_conversion_table_field
  • make_table_field
  • make_and_init_table_field
  • make_schema_field

Plugins will create fields as follows:

  new (mem_rroot_arg) Field_xxx(...)

Note, we eventually should probably change the TABLE parameter to to make_xxx_field() to a subset of TABLE which is only necessary inside a plugin.


Generated at Thu Feb 08 08:56:21 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.