Bug #67056 memcached segfault with Cluster NoSQL with data mapping to a non-NDB table
| Submitted: | 2 Oct 2012 14:54 | Modified: | 14 Aug 2019 19:25 |
|---|---|---|---|
| Reporter: | Ligaya Turmelle | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Cluster: Memcached | Severity: | S2 (Serious) |
| Version: | memcached with 7.2 Cluster | OS: | Linux (Linux lig-ubuntu-vm 2.6.32-40-generic #87-Unbuntu SMP Tue Mar 6 00:56:56 UTC 2012 x86_64 GNU/Linux) |
| Assigned to: | MySQL Verification Team | CPU Architecture: | Any |
[25 Oct 2013 20:10]
John Duncan
Starting in 7.2.11 you see this: Invalid table "sakila.rental" Invalid table "sakila.rental" Invalid table "sakila.rental" Invalid table "sakila.rental" Invalid table "sakila.rental" Invalid table "sakila.rental" Invalid table "sakila.rental" Invalid table "sakila.rental" Scheduler: starting for 1 cluster; c0,f0,g1,t1 done [0.669 sec]. Pipeline 0 attached to S scheduler. And then, % memclient memcache > get cust_pr1 NOT_FOUND So I believe the segfault is gone.
[14 Aug 2019 19:25]
MySQL Verification Team
Thank you for your bug report. This issue has already been fixed in the latest released version of that product, which you can download at http://www.mysql.com/downloads/
Portions of this website are copyright © 2001, 2002 The PHP Group
Page generated in 0.039 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.
Description: When trying to map to a non-NDB table with the NoSQL interface (Cluster) - the memcached segfaults. Log: lig@lig-ubuntu-vm:~$ ./mysql/mysqlc/bin/memcached -E /home/lig/mysql/mysqlc/lib/ndb_engine.so -e "connectstring=localhost:1186; role=db-only" -vvv -c 20 -p 11212 -U 11212 26-Sep-2012 08:57:01 EDT NDB Memcache 5.5.19-ndb-7.2.4 started [NDB 7.2.4; MySQL 5.5.19] Contacting primary management server (localhost:1186) ... Connected to "localhost:1186" as node id 51. Retrieved 5 key prefixes for server role "db-only". The default behavior is that: GET uses NDB only SET uses NDB only DELETE uses NDB only. The 4 explicitly defined key prefixes are "b:" (demo_table_large), "cust_pr" (rental), "film_pr" (rental) and "t:" (demo_table_tabs) Server started with 4 threads. Priming the pump ... Invalid table "sakila.rental" Error: unable to create a query plan for key prefix "cust_pr" Segmentation fault How to repeat: (Originally found trying to do Andrew Morgan's Tutorial - Scalable, persistent, HA NoSQL Memcache storage using MySQL Cluster - and playing around with things.) using the sakila DB trying to interact with the rental table using data mapping. did not alter rental to a NDB table Queries for the mapping: INSERT INTO ndbmemcache.containers VALUES ('rnt_film', 'sakila', 'rental', 'rental_id', 'inventory_id', 0, NULL, NULL, NULL, NULL); INSERT INTO ndbmemcache.containers VALUES ('rnt_cust', 'sakila', 'rental', 'rental_id', 'customer_id', 0, NULL, NULL, NULL, NULL); INSERT INTO ndbmemcache.key_prefixes VALUES (1, 'film_pr', 0, 'ndb-only', 'rnt_film'); INSERT INTO ndbmemcache.key_prefixes VALUES (1, 'cust_pr', 0, 'ndb-only', 'rnt_cust'); Start up the second memcached to get the new settings loaded. See the memcached logs. Suggested fix: An error of some sort hinting what the problem may be.