Ravens PHP Scripts: Forums
 

 

View next topic
View previous topic
Post new topic   Reply to topic    Ravens PHP Scripts And Web Hosting Forum Index -> RN v2.20.00 - All Issues
Author Message
Dawg
RavenNuke(tm) Development Team



Joined: Nov 07, 2003
Posts: 928

PostPosted: Wed Mar 05, 2008 5:40 am Reply with quote

Greetings All,
I played around with the new release the other night and when I went to install the core tables I kept getting error messages of "Specified key was too long; max key length is 1000 bytes". It did not say what table was causeing the problem and everything else seemed to work.....so I rocked on with it.

This morning I upgraded an existing Dbase (A Test One) and hit the same error.

It comes back witht eh following errors...
Code:
CREATE TABLE IF NOT EXISTS `nuke_seo_config` (`config_type` varchar(255) NOT NULL, `config_name` varchar(255) NOT NULL, `config_value` text NOT NULL, PRIMARY KEY (`config_type`,`config_name`) ) FAILED.    MySQL reported: Specified key was too long; max key length is 1000 bytes

INSERT INTO `nuke_seo_config` VALUES ('Feeds', 'use_fb', '1'); FAILED.    MySQL reported: Table 'XXX_XXXXXXX.nuke_seo_config' doesn't exist
INSERT INTO `nuke_seo_config` VALUES ('Feeds', 'feedburner_url', 'http://feeds.feedburner.com'); FAILED.    MySQL reported: Table 'XXX_XXXXXXX.nuke_seo_config' doesn't exist
INSERT INTO `nuke_seo_config` VALUES ('Feeds', 'version_check', '0'); FAILED.    MySQL reported: Table 'XXX_XXXXXXX.nuke_seo_config' doesn't exist
INSERT INTO `nuke_seo_config` VALUES ('Feeds', 'version_newest', '1.1.1'); FAILED.    MySQL reported: Table 'XXX_XXXXXXX.nuke_seo_config' doesn't exist
INSERT INTO `nuke_seo_config` VALUES ('Feeds', 'version_number', '1.1.1'); FAILED.    MySQL reported: Table 'XXX_XXXXXXX.nuke_seo_config' doesn't exist
INSERT INTO `nuke_seo_config` VALUES ('Feeds', 'version_url', 'http://nukeseo.com/modules.php?name=Downloads'); FAILED.    MySQL reported: Table 'XXX_XXXXXXX.nuke_seo_config' doesn't exist
INSERT INTO `nuke_seo_config` VALUES ('Feeds', 'version_notes', ''); FAILED.    MySQL reported: Table 'XXX_XXXXXXX.nuke_seo_config' doesn't exist
INSERT INTO `nuke_seo_config` VALUES ('Feeds', 'show_circgraph', '1'); FAILED.    MySQL reported: Table 'XXX_XXXXXXX.nuke_seo_config' doesn't exist
INSERT INTO `nuke_seo_config` VALUES ('Feeds', 'show_feedcount', '1'); FAILED.    MySQL reported: Table 'XXX_XXXXXXX.nuke_seo_config' doesn't exist
INSERT INTO `nuke_seo_config` VALUES ('Feeds', 'feedcount_body', 'A6A6A6'); FAILED.    MySQL reported: Table 'XXX_XXXXXXX.nuke_seo_config' doesn't exist
INSERT INTO `nuke_seo_config` VALUES ('Feeds', 'feedcount_text', '000000'); FAILED.    MySQL reported: Table 'XXX_XXXXXXX.nuke_seo_config' doesn't exist
CREATE TABLE IF NOT EXISTS `nuke_seo_disabled_modules` (`title` varchar(255) NOT NULL, `seo_module` varchar(255) NOT NULL, PRIMARY KEY (`title`,`seo_module`)) FAILED.    MySQL reported: Specified key was too long; max key length is 1000 bytes


I know you guys like to be rock solid so I thought I would I would report it.

Server Specs....
php 5.1.6-3.7.fc6
mysql 5.0.27-1.fc6

Do I have something set wrong at the server level?

Dawg
 
View user's profile Send private message
kguske
Site Admin



Joined: Jun 04, 2004
Posts: 6432

PostPosted: Wed Mar 05, 2008 5:53 am Reply with quote

Wow - that doesn't make sense. The keys, even take together, of config_type (255) and config_name (255), are well below the max length.

Does the table get created if you click on nukeFEED on the admin page?

Are you able to execute that SQL statement in phpMyAdmin?

_________________
I search, therefore I exist...
nukeSEO - nukeFEED - nukePIE - nukeSPAM - nukeWYSIWYG
 
View user's profile Send private message
Dawg







PostPosted: Wed Mar 05, 2008 6:06 am Reply with quote

Nuke Feed Opened when I clicked on it.

I have not tried the SQL Statement....but I will...

This is on a brand new server with a well honed install. (from a major provider) Which is why I was thinking server settings....

I will get back to you on the SQL statement...

Dawg
 
fkelly
Former Moderator in Good Standing



Joined: Aug 30, 2005
Posts: 3312
Location: near Albany NY

PostPosted: Wed Mar 05, 2008 9:27 am Reply with quote

I'd bet that the database was created with the utf8 character set. Try creating it with one of the latin character sets and you should be good to go. I believe mysql is allocating three bytes to each character in the key with utf8 or something like that. Sorry I can't be more precise but I was able to replicate the problem locally creating a database with utf8 and then make the problem go away by recreating it with a latin character set. Phpmyadmin lets you pick a character set when you create a database.
 
View user's profile Send private message Visit poster's website
Dawg







PostPosted: Wed Mar 05, 2008 9:33 am Reply with quote

BINGO....We have a winner.

This Dbase was pulled from one of my existing sites and then had the upgrade run on it. Can I go in and change the entire Dbase to another without screwing it up?

Dawg
 
fkelly







PostPosted: Wed Mar 05, 2008 9:49 am Reply with quote

I don't know off the top Dawg. Back it up or create a test one and do that and let us know. Or if someone else knows the answer please post it here.

I don't know why but we seem to be suddenly encountering this problem more often.
 
kguske







PostPosted: Wed Mar 05, 2008 11:28 am Reply with quote

I will look into change the creation function to address that. Thanks
 
sting
Involved
Involved



Joined: Sep 23, 2003
Posts: 456
Location: Somewhere out there...

PostPosted: Wed Mar 05, 2008 2:29 pm Reply with quote

Interesting - I just ran into this today on a fresh install. Changed the collation from utf8 to latin1_bin and it loaded fine.

So are you going to have to specify that in the install script to bypass?

-sting

_________________
You see - I told you I wasn't paranoid. They were really out to get me. 
View user's profile Send private message Visit poster's website AIM Address Yahoo Messenger MSN Messenger ICQ Number
fkelly







PostPosted: Wed Mar 05, 2008 4:46 pm Reply with quote

Someone will need to look at this, Kguske may be on it already. I was thinking about it during a flight and we probably should look at what key is more than 1000 characters. I can't see any point in having a database with a key that long and my guess is that it is just a leftover from some earlier version of Nuke. While switching to a latin character set may make the symptoms go away we probably should look further at the underlying cause.
 
fkelly







PostPosted: Wed Mar 05, 2008 5:25 pm Reply with quote

Could be in nuke_seo_config where we concatenate two keys that are each varchar(255). If, with UTF8, mysql uses 3 bytes for each character (I think I read this in Google) then (255+255)*3 could exceed the 1000 character limit. If this is true then the solution might be to change the key structure. But Kguske would know more about this.

Some interesting reading in the MYSQL manual about collation sequences and character sets. A lot of it is over my head but we would want to make sure we set the databases up to minimize conversions between sequences or character sets at the server level. I'm not sure exactly how, Raven and others would know if this is an issue worth addressing.
 
kguske







PostPosted: Wed Mar 05, 2008 7:57 pm Reply with quote

fkelly is correct - the 2 keys together exceed 1000 under UTF8. I haven't had a chance to look into this in detail yet, but I may change the size of the key fields, force a non-UTF collation on creation...there are a few options to consider.
 
kguske







PostPosted: Wed Mar 05, 2008 8:12 pm Reply with quote

Since this looks like the problem of the day... here's a simple solution.
 
Dawg







PostPosted: Wed Mar 05, 2008 11:19 pm Reply with quote

Well Hot Digg'Dawg...I found something useful! WOOT WOOT!

I always worry when I post stuff like this that I am doing something stupid to casue the problem.

Hey...That is 2 in a row!
 
kguske







PostPosted: Thu Mar 06, 2008 6:10 pm Reply with quote

Thanks, Dawg. Did you confirm the solution works?
 
Dawg







PostPosted: Fri Mar 07, 2008 6:18 am Reply with quote

I will find out this morning. I will let you know. Thanks for the help!

Dawg
 
Dawg







PostPosted: Fri Mar 07, 2008 8:18 am Reply with quote

Now I come back with a Dup key....
INSERT INTO $prefix.`_seo_config` VALUES ('Feeds', 'use_fb', '1');
MySQL Error # 4 = Duplicate entry 'Feeds-use_fb' for key 1
 
fresh
Regular
Regular



Joined: Mar 12, 2008
Posts: 74

PostPosted: Thu Mar 13, 2008 11:41 am Reply with quote

Yeah i get this same msg now after correcting 2 codes

The exact error message that your MySQL server reported is:
MySQL Error # 4 = Duplicate entry 'Feeds-use_fb' for key 1
 
View user's profile Send private message
kguske







PostPosted: Thu Mar 13, 2008 3:35 pm Reply with quote

Then I'd suggest dropping (or renaming) the nuke_seo_config table.
 
Display posts from previous:       
Post new topic   Reply to topic    Ravens PHP Scripts And Web Hosting Forum Index -> RN v2.20.00 - All Issues

View next topic
View previous topic
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You can attach files in this forum
You can download files in this forum


Powered by phpBB © 2001-2007 phpBB Group
All times are GMT - 6 Hours
 
Forums ©