error message misleading

error message misleading

am 23.10.2002 17:25:16 von Monte Ohrt

Hi,

I'm not sure if this is a bug or not, but this statement gives an error
in 4.0.5, whereas in 3.x it did not complain:

How-To-Repeat:

CREATE TABLE user_group (
user_name varchar(250) NOT NULL default '',
user_group varchar(250) NOT NULL default '',
PRIMARY KEY (user_name,user_group)
) TYPE=MyISAM;

ERROR 1005: Can't create table './FOO/user_group.frm' (errno: 140)


I'm sure it has to do with putting a primary key on two varchar(250)
columns. If I shorten the column definitions so the total key length is
<= 255, all is well. It probably _should_ complain, but maybe the error
could be a little more helpful? At first glance, it looks like a file
permission problem.

--
Monte Ohrt


------------------------------------------------------------ ---------
Before posting, please check:
http://www.mysql.com/manual.php (the manual)
http://lists.mysql.com/ (the list archive)

To request this thread, e-mail bugs-thread12832@lists.mysql.com
To unsubscribe, e-mail

Re: error message misleading

am 24.10.2002 00:20:21 von Sergei Golubchik

Hi!

On Oct 23, Monte Ohrt wrote:
> Hi,
>
> I'm not sure if this is a bug or not, but this statement gives an error
> in 4.0.5, whereas in 3.x it did not complain:
>
> How-To-Repeat:
>
> CREATE TABLE user_group (
> user_name varchar(250) NOT NULL default '',
> user_group varchar(250) NOT NULL default '',
> PRIMARY KEY (user_name,user_group)
> ) TYPE=MyISAM;
>
> ERROR 1005: Can't create table './FOO/user_group.frm' (errno: 140)
>
>
> I'm sure it has to do with putting a primary key on two varchar(250)
> columns. If I shorten the column definitions so the total key length is
> <= 255, all is well. It probably _should_ complain, but maybe the error
> could be a little more helpful? At first glance, it looks like a file
> permission problem.

At the second glance, it's different:

% perror 140
140 = Wrong create options

This situtation happens when key length just a little bit less than 501.
Otherwise it either works, or issues an error "too long key".

Anyway, this is now fixed, and MyISAM can happily create 500 byte keys.
Thank you for spotting this.

Regards,
Sergei

--
MySQL Development Team
__ ___ ___ ____ __
/ |/ /_ __/ __/ __ \/ / Sergei Golubchik
/ /|_/ / // /\ \/ /_/ / /__ MySQL AB, http://www.mysql.com/
/_/ /_/\_, /___/\___\_\___/ Osnabrueck, Germany
<___/

------------------------------------------------------------ ---------
Before posting, please check:
http://www.mysql.com/manual.php (the manual)
http://lists.mysql.com/ (the list archive)

To request this thread, e-mail bugs-thread12840@lists.mysql.com
To unsubscribe, e-mail