Long term solution:
Switch to XtraDB (InnoDB), and use Percona's online alter.
If you do switch engines, take note of issues:
http://kb.askmonty.org/en/converting-tables-from-myisam-to-innodb/
> -----Original Message-----
> From: Reindl Harald [mailto:h.reindl@stripped]
> Sent: Monday, June 04, 2012 5:42 AM
> To: mysql@stripped
> Subject: Re: i am running mysqlrepair on 80G myisam table.
>
>
>
> Am 04.06.2012 14:35, schrieb Joey L:
> > i am running mysqlrepair on 80G myisam table.
> > It is taking forever to repair - i am getting a lot of "Waiting for
> > table" messeges when i execute "show full processlist"
> >
> > 613 | p_040912 | localhost | p_040912 | Query | 24 | Waiting
> > for table | SELECT `oldurl`, `newurl
> >
> > Can anyone help for this ? is there anything i can tweak in the
> my.cnf
> > file that avoids this issue - it is taking forever !!!
>
> no - a repair always locks a table
>
> how would you avoid this technically?
> the whole table is re-created and mysql can not deal with queries at
> this time
>
> additionally MyISAM does ALWAYS full table locks
>