[MDEV-19861] Add intfastructure to have ENUM columns in INFORMATION_SCHEMA Created: 2019-06-26  Updated: 2019-07-03  Resolved: 2019-06-26

Status: Closed
Project: MariaDB Server
Component/s: Information Schema
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-19940 Clean up INFORMATION_SCHEMA.INNODB_ t... Closed
is blocked by MDEV-19863 Add const to TYPELIB pointers Closed

 Description   

Marko asked for a simple way to have ENUM columns in I_S.

This task will introduce helper classes, so a ENUM will be declared as simply as follows:

static const LEX_CSTRING io_values[]=
{
  STRING_WITH_LEN("IO_NONE"),
  STRING_WITH_LEN("IO_READ"),
  STRING_WITH_LEN("IO_WRITE"),
  STRING_WITH_LEN("IO_PIN")
};
 
static TypelibBuffer<4> io_values_typelib(io_values);

A definition of a column using the above ENUM declaration will look about like this:

  Column("IO_FIX", Enum(&io_values_typelib), NULLABLE),

This task will change INFORMATION_SCHEMA.INNODB_BUFFER_PAGE.IO_FIX from VARCHAR(64) to ENUM.


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