Bug #77367 | Error code1296 Got error 240 'Unknown error code' from NDBCLUSTER | ||
---|---|---|---|
Submitted: | 16 Jun 2015 2:58 | Modified: | 29 Jun 2015 2:07 |
Reporter: | Bugs System | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Cluster: Cluster (NDB) storage engine | Severity: | S1 (Critical) |
Version: | mysql-cluster-gpl-7.4.6-linux-glibc2.5-x | OS: | Linux (2.6.18-308.e15) |
Assigned to: | MySQL Verification Team | CPU Architecture: | Any |
Tags: | insert fail with 2 data nodes up. |
[16 Jun 2015 2:58]
Bugs System
[16 Jun 2015 3:02]
Bugs System
and in fact, in many other tables' Java Spring's trancsation, this error often happens about 3 tenths, after reexecuting these statements, these statements can succeed even starting both two data nodes.
[17 Jun 2015 6:34]
Bugs System
hi, everyone, It seems that I have found the reason: the mysql cluster doesn't make DB's procedure shareed by multi SQL node and multi users. And I have check mysql's offical document on "create procedure" statement syntax, it seems there is no storageengine syntax to make procedure public-shared as tables.
[17 Jun 2015 11:25]
MySQL Verification Team
Hi, I think you are mixing the terminology here a bit. Data node is the node running ndbd or ndbmtd. Management node is what's running ndb_mgmd and SQL node is where you are running mysqld. You said that if you are running more then one data node you have this problem. I believe you are mistaken and that you get this problem if you are running more then one SQL node. If this is true, that not working with more then one SQL then yes, it can happen. Thing is, as you already noticed, stored procedures are on one SQL node only so you have to manually create all stored procedures on all SQL nodes. This *only* affects calling the procedures. If you have 5 SQL nodes and SP only on one SQL node calling this procedure will work on only the node where it exist so on other sql nodes you will fail to call this procedure (as it is not there), but, when you call the procedure on the SQL node that has it it will work no matter how many SQL nodes you have running, and also data that stored procedure changes is visible from all other SQL nodes if data changed is in ndbcluster tables. kind regards Bogdan Kecman
[24 Jun 2015 9:07]
Bugs System
Dear pioneer Mr. Bogdan, Thank you for your reply, and recent days I am too busy to update this bug here, sorry for my delay reply. And sorry that I had mixed two problems here to make you misunderstood me. Of cource, I know the differences of data nodes and sql nodes and management noeds, and your answer on SP about sql nodes is correct I think. My faced problem is Java's trancsation will often reports illegal operation of error code 240 after I have stop 1 data node for a long time and restart the stop data node. So after I optimize some parameters according to MySQL cluster's great pioneers' document, it seems that I have solved the error 240. Because after I have optimized the parameters, yesterday and today I have tried to stop 1 data node(but for only a short time) and restart it, the error 240 doesn't appear again. It is better for me to try to stop 1 data node for a long time, for example over 7 hours and do bulk data operations while 1 data node stop. I will let you know the newest infomation several days latter after I tried. Thank you.
[29 Jun 2015 2:07]
Bugs System
It seems that one of the clusters' data node can not stop too long time, otherwise, even the stop data node restart up, and the data node status has not displayed as starting and so as normal running, when doing a java trancsation, the illegal operation error of 1296's 240 error will display to stop your business. But how long can a data node be stop to avoid the illegal operation 240 error? My Bogdan and other pioneers, can you tell me cause I couldn't find the answer on "how long can a data node be stop to avoid the illegal operation 240 error" .