Bug #95093 Feature request: change defaults in innodb_memcache.containers
Description:
Currently table innodb_memcache.containers looks like this:
----
CREATE TABLE `containers` (
`name` varchar(50) COLLATE utf8_unicode_ci NOT NULL,
`db_schema` varchar(250) COLLATE utf8_unicode_ci NOT NULL,
`db_table` varchar(250) COLLATE utf8_unicode_ci NOT NULL,
`key_columns` varchar(250) COLLATE utf8_unicode_ci NOT NULL,
`value_columns` varchar(250) COLLATE utf8_unicode_ci DEFAULT NULL,
`flags` varchar(250) COLLATE utf8_unicode_ci NOT NULL DEFAULT '0',
`cas_column` varchar(250) COLLATE utf8_unicode_ci DEFAULT NULL,
`expire_time_column` varchar(250) COLLATE utf8_unicode_ci DEFAULT NULL,
`unique_idx_name_on_key` varchar(250) COLLATE utf8_unicode_ci NOT NULL,
PRIMARY KEY (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
---
The problem is that cas_column and expire_time_column have default value NULL. However NULL is not valid value for these columns.
Let suppose I have a table
---
CREATE TABLE `abc` (
`name` varchar(250) COLLATE utf8_unicode_ci NOT NULL,
`counter` varchar(250) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
--
And I want to work with it via memcached.
It's not easy to find how to configure this table in innodb_memcache.containers because most exmamples in the documentation assume that your table has 3 extra columns for cas, flags and expire.
So, the most logical first step for the developer is to try something like this:
----
INSERT INTO innodb_memcache.containers SET
name='tmp',db_schema='test',db_table='abc',key_columns='name', value_columns='counter',unique_idx_name_on_key='PRIMARY';
----
It will create a row in innodb_memcache.containers with cas_column=NULL and expire_time_column=NULL and memcached protocol for this table_id will not work
Documentation doesn't have explicit example for this case.
Would it be possible to change default value for cas_column and expire_time_column to '0' as we already have it for the flags column?
Or maybe you can allow NULL value and make the same behaviour for NULL value as for '0'?
Thanks
How to repeat:
not available
It is a feature request
Portions of this website are copyright © 2001, 2002 The PHP Group
Page generated in 0.038 sec. using MySQL 8.4.7-u6-cloud
Timestamp references displayed by the system are UTC.
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.