Closed Bug 171429 Opened 22 years ago Closed 22 years ago

Error when upgrading to new RT build

Categories

(Bugzilla :: Attachments & Requests, defect)

2.17
defect
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: gerv, Assigned: myk)

References

Details

I just CVS updated, ran checksetup.pl, and got the following error:

Creating table flags ...
Creating table flagexclusions ...
Creating table flaginclusions ...
Creating table flagtypes ...
Converting attachment statuses to flags...
DBD::mysql::db do failed: Access denied for user: 'bugs@localhost' to database
'bugs' at ./checksetup.pl line 3385.
DBD::mysql::db do failed: Access denied for user: 'bugs@localhost' to database
'bugs' at ./checksetup.pl line 3386.
done.
Reminder: Bugzilla now requires version 8.7 or later of sendmail.

The two lines referenced are:
    $dbh->do("DROP TABLE attachstatuses");
    $dbh->do("DROP TABLE attachstatusdefs");

Is it possible that the default setup we encourage for Bugzilla does not give
the bugs user permission to drop tables? I can provide details of my MySQL
permissions config if someone tells me the commands to run.

Gerv
Running checksetup a second time gives:

Converting attachment statuses to flags...
Can't use an undefined value as an ARRAY reference at ./checksetup.pl line 3303.

Presumably it thinks the conversion hasn't been done, and then dies when it
tries to get a fieldid from the fielddefs table.

Gerv
Well, the error the second time is because we can't use transactions arround
each block. Hope you had a backup.... Mind you, since we ignore errors in
checksetup (yuck), failing todrop the table shouldn't have caused any problems,
if you drop it mnanually yourself, now.

Its possible your bugs user doens't have DROP permission, although tables have
been dropped in teh past, so I would have expected it to be there, or other errors.

The docs say:

   mysql> GRANT SELECT,INSERT,UPDATE,DELETE,INDEX,
   ALTER,CREATE,DROP,REFERENCES ON bugs.* TO bugs@localhost IDENTIFIED BY
   '<bugs_password>';
   mysql> FLUSH PRIVILEGES;

which does include drop...
Blocks: rt-clean-up
Ok, so the docs recommend granting drop permissions and tables have been dropped
before.  Is this still a bug?
I read through checksetup.pl carefully, and I can't see any other instances of
entire tables being dropped. Fields, yes, but not tables.

How would I ask my MySQL exactly what permissions my bugs user has?

Gerv
Theres a DROP TABLE longdescs in there, from 2000-11-27

SHOW GRANTS FOR bugs@localhost

will show you the options you have - you may not need the |@localhost|,
depending on your local setup.

This bug is INVALID
Status: NEW → RESOLVED
Closed: 22 years ago
Resolution: --- → INVALID
> Theres a DROP TABLE longdescs in there, from 2000-11-27

Yes, but I'd only have ever run that if DB came from before then.

> SHOW GRANTS FOR bugs@localhost

I was indeed missing DROP. Maybe the Bastille hardening script removed it, or
something.

INVALID it is.

Gerv
QA Contact: matty_is_a_geek → default-qa
You need to log in before you can comment on or make changes to this bug.