
mtdean at thirdcontact
Nov 21, 2009, 6:45 PM
Post #2 of 2
(282 views)
Permalink
|
|
Re: Lesson Learned from my Upgrade from Jaunty To Karmic...
[In reply to]
|
|
On 11/21/2009 09:30 PM, David Herman wrote: > I was running Jaunty with trunk for ever (really, forever -- at least > as long as Jaunty was out). > When I upgraded, I did the old, back up the database, reformat the > hard drive and install path. > > An interesting thing happened... For some obscene reason, my > mythconverg database chose to be case sensitve. That means your database schema is broken. MythTV /never/ had any case-sensitive columns in the database schema until 0.22. Now, in 0.22, there are a few columns that are case sensitive, and they're very unimportant columns. (And, definitely not any of the columns in the settings table.) > One may wonder what the big deal is, but all over the myth code, > people were not consistant in DBSchemaVer (as well as other settiings).. Uh, where? I can almost guarantee that for DBSchemaVer there's /never/ any place that capitalizes it incorrectly. I'm 99% positive that's true of all other settings, too. > So everytime I would bring up a frontend, it went and tried to > upgrade, but since it could not find the version, it flipped out and > started hacking away at my data. I ultimately did a PARTIAL recover > and that seemed to fix things (of course, I had to drop the database > first, rerun mythtv-setup, re-add my tuners, channels, etc...). I > still do not understand what happened to change the behavior of Mysql > during this process The partial restore (done properly, as documented at http://www.mythtv.org/wiki/Database_Backup_and_Restore#Partial_restore_of_a_backup ), would have fixed a broken schema. If your database is still case sensitive, you have bigger issues (i.e. broken MySQL--such as a MySQL without the utf8_general_ci collation installed--meaning MythTV will /not/ work properly). You need to fix that now or you will be corrupting data. > I am not trying to throw stones, so please don't take offense. I > realize people are spending time away from loved ones when they donate > their time to this project. I think this project is by far one of the > best collaborative efforts I have been a user of. > > I propose two things. 1) Don't mix case in any setting in the settings > table. We don't. If there are some cases where settings names aren't properly capitalized, they're typos that should be fixed, but it won't have any negative effects since they're all using utf8_general_ci collation. If you'd like to point out some typos, I'll fix them. Otherwise, I'll find them in my settings review that I'll be doing in a month or so. > 2) An effort be made to change every reference in code to lowercase > values for items in the settings table. No real need since they're not case-sensitive... And, IMHO, DBSchemaVer is /much/ easier to read (and fits with the MythTV coding policies, so shouldn't be hard for a Myth coder to remember) than dbschemaver or nopromptonexit or whatever. But you do need to fix whatever's wrong with your database. Broken schema or broken server/installation. Mike _______________________________________________ mythtv-users mailing list mythtv-users [at] mythtv http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-users
|