After upgrading from 5.0.15 to 5.0.16, I noticed that I could not start the mysql server. mysqld was reporting I had a syntax error in innodb_data_file_path. I noticed that the new /etc/init.d/mysql preparsed my my.cnf and escaped a bunch of characters (one of them being a colon). Thus, my innodb_data_file_path was being sent to mysqld as: innodata1\:1G\:autoextend and was failing. The colons should not be escaped. I modified the mysql startup script to include : in the negated character class (lines 90,128, and 134). Now it starts fine. Can someone create an official patch for this? Thanks. Reproducible: Always Steps to Reproduce: 1. Upgrade to mysql-5.0.16. 2. Start the server with innodb enabled and have a my.cnf with a line such as innodb_data_file_path=innodata1:1G:autoextend 3. Watch it fail to start and check mysqld.err. Actual Results: Failed to start. Error message in mysqld.err as follows: 051123 1:30:42 [ERROR] InnoDB: syntax error in innodb_data_file_path 051123 1:30:42 [ERROR] Default storage engine (InnoDB) is not available 051123 1:30:42 [ERROR] Aborting Expected Results: Server should have started successfully. As mentioned above, I believe to patch this bug /etc/init.d/mysql needs to be changed so that on lines 90, 129, and 134, a colon is added to the negated character class in the regex so that the colons are not escaped.
(In reply to comment #0) Have you tried the new ebuild mysql-5.0.16-r1 which was released shortly after the initial 5.0.16. It at leased updated something in /etc/init.d/mysql, have tried that init file here, at it seems to work ok
This is fixed in >=mysql-5.0.16-r1; however, please wait an hour or two, emerge sync and upgrade to mysql-5.0.16-r2 (which fixes Bug 113352 as well).
*** Bug 113403 has been marked as a duplicate of this bug. ***