← Back to team overview

openstack team mailing list archive

Re: nova.projects table problems

 


----- Original Message -----
> From: "Michael Still" <michael.still@xxxxxxxxxxxxx>
> To: openstack@xxxxxxxxxxxxxxxxxxx
> Sent: Thursday, May 31, 2012 8:03:37 PM
> Subject: Re: [Openstack] nova.projects table problems
> 
> On 01/06/12 09:54, Michael Still wrote:
> > Has anyone else experienced something like this? Its happened to me
> > twice now (on the same machine) and I have no idea what is causing
> > it:
> > 
> > mysql> show tables like 'projects';
> > +---------------------------+
> > | Tables_in_nova (projects) |
> > +---------------------------+
> > | projects                  |
> > +---------------------------+
> > 1 row in set (0.00 sec)
> > 
> > mysql> describe projects;
> > ERROR 1146 (42S02): Table 'nova.projects' doesn't exist
> > 
> > mysql> repair table projects;
> > +---------------+--------+----------+-------------------------------------+
> > | Table         | Op     | Msg_type | Msg_text
> > |                            |
> > +---------------+--------+----------+-------------------------------------+
> > | nova.projects | repair | Error    | Table 'nova.projects' doesn't
> > | exist |
> > | nova.projects | repair | status   | Operation failed
> > |                    |
> > +---------------+--------+----------+-------------------------------------+
> > 2 rows in set (0.00 sec)
> > 
> > I'm a bit confused.
> 
> This turns out to be
> https://bugs.launchpad.net/ubuntu/+source/nova/+bug/975085 /
> https://bugs.launchpad.net/nova/+bug/993663 I think.


Hi Micheal,

Yes. I think this is the same issue we fixed in 993663. The dns_domains was in a very bad state during the Essex release cycle because we essentially had a latin1 table with an fkey to a utf8 projects table. MySQL doesn't even allow you to do such a thing with a fresh schema (something I noticed when I did the database compaction for Folsom).

See the comments in this Folsom migration which should fix the issue:

  https://github.com/openstack/nova/blob/master/nova/db/sqlalchemy/migrate_repo/versions/096_recreate_dns_domains.py#L27

You could hotfix any existing systems by creating a SQL script to do something similar (drop and recreate the dns_domains table as UTF8 with a shorter 'domain' column.).

Also, I'm going to work up a patch so we can backport this to Essex without adding a new migration (something we typically don't do for stable releases). I hope to have this done soon.

Dan

> 
> Mikal
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~openstack
> Post to     : openstack@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~openstack
> More help   : https://help.launchpad.net/ListHelp
> 


References