Quantcast
Channel: MySQL Forums - NDB clusters
Viewing all articles
Browse latest Browse all 1560

Memcached API large row auto_increment size (no replies)

$
0
0
I have the new memcache ndb api to cluster running successfully (everything on version 7.2.4), and will be using the large field extra table to store large rows. This is working remarkably well, expiring is working, delete is working, large rows are working, great!


My question is about the unsigned int(10) for the key table's ext_id and extra data table's id column. this seems to be very limited in how long it will be able to sustain new rows.

I attempted creating the tables with bigint(20) unsigned, but received the following errors from memcached when I tried to use it: (this is after a clean restart on the new tables)

setIntValue() failed for column ext_id - unsupported column type.
setIntValue() failed for column id - unsupported column type.

when the auto_increment on ext_id reaches the limit, what is the procedure to let the system continue?



config:


mysql> select * from containers where name='production'\G
*************************** 1. row ***************************
name: production
db_schema: memcache
db_table: production
key_columns: mkey
value_columns: string_value
flags: flags
increment_column: NULL
cas_column: cas_value
expire_time_column: expire_time
large_values_table: memcache.production_extra

mysql> select * from key_prefixes where container='production'\G
*************************** 1. row ***************************
server_role_id: 0
key_prefix:
cluster_id: 0
policy: ndb-only
container: production

mysql> select * from cache_policies where policy_name='ndb-only'\G
*************************** 1. row ***************************
policy_name: ndb-only
get_policy: ndb_only
set_policy: ndb_only
delete_policy: ndb_only
flush_from_db: true


CREATE TABLE `production` (
`mkey` varchar(250) NOT NULL,
`cas_value` bigint(20) unsigned DEFAULT NULL,
`string_value` varbinary(2000) DEFAULT NULL,
`ext_id` int(10) unsigned DEFAULT NULL,
`ext_size` int(10) unsigned DEFAULT NULL,
`flags` int(10) unsigned DEFAULT NULL,
`expire_time` timestamp NULL DEFAULT NULL,
PRIMARY KEY (`mkey`) USING HASH,
KEY `expire_time` (`expire_time`)
) ENGINE=ndbcluster DEFAULT CHARSET=latin1

CREATE TABLE `production_extra` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`part` smallint(6) NOT NULL,
`content` varbinary(13950) NOT NULL,
PRIMARY KEY (`id`,`part`)
) ENGINE=ndbcluster AUTO_INCREMENT=125371 DEFAULT CHARSET=latin1

Viewing all articles
Browse latest Browse all 1560

Trending Articles