On 11/05/2012 09:24 AM, CB wrote: > We're long time RT users and are in the process of upgrading from 3.6.3 to > 4.0.8 and are following the instructions on > http://www.bestpractical.com/rt/docs/4.0/UPGRADING.mysql.html and > http://www.bestpractical.com/rt/docs/4.0/README.html. I upgraded to 3.7.87, > ran the extra queries and continued the upgrade however it failed at the > step of upgrading to 3.9.1.
Be sure to read the other UPGRADING documentation as well, for all versions between 3.6.3 and 4.0.8. Your database contains rows in the ACL table which point to Principals that no longer exist. Grep for the [error] lines "ACE NNNN couldn't load it's principal object". This indicates that records were manually deleted from the database at some point, and done so incorrectly (as is almost always the case with manual deletes by folks not understanding the whole of the database). The code doesn't handle this error case and blows up. The ACL rows in question are: 21605 22605 22655 24605 24655 25655 25705 You may want to take a look and see what happened to the Principals referred to. To proceed with the upgrade, add the following line to etc/upgrade/3.9.1/content after the line reading "my $principal = $ace->PrincipalObj;": next unless $principal->id; After you've upgraded to 4.0.8, you'll want to run rt-validator to check the integrity of your database and clean it up. Thomas -------- We're hiring! http://bestpractical.com/jobs