Opened 18 years ago

Closed 16 years ago

#4812 closed task (invalid)

mythweather tables assume innodb is configured for mysql

Reported by: rbonafied@… Owned by:
Priority: minor Milestone: unknown
Component: Plugin - MythWeather Version: 0.21-fixes
Severity: low Keywords:
Cc: Ticket locked: no

Description

I recently upgraded my friend's system to the 0.21-fixes (16181) branch from an older svn revision. After confirming the myth schema upgrades were complete, I started the backend and launched mythweb. Mythweb errored out with a bunch of messages of 'missing weatherscreens' table.

Upon further investigation, it appeared that mysql had the tables in it's catelog, but selecting from them returned 'table weatherscreens' does not exist. Additionally, mysqlrepair showed them in the catelog but with errors that the table didn't exist.

After several tries at removing the phantom tables, I succeeded by moving the flat files out of the mysql directory that represented the tables. Then I removed the settings entry for mythweather in the hopes that myth would see the tables missing and re-create them the right way. Myth did re-create the tables, however they were still phantom (unusable).

Looking at the table creation code in mythweather/dbcheck.cpp I saw it made a hardcoded reference to TYPE=InnoDB . Once I removed this reference, the tables were created and usable.
My mysql server is not configured to use InnoDB.

Change History (7)

comment:1 by stuartm, 18 years ago

Milestone: 0.210.22
Severity: mediumlow

I doubt this will get fixed before 0.21 unless someone submits a patch. The mythweather tables must be Innodb as they use foreign key constraints. These would need to be replaced with code to update/insert/delete child entries in all the relevant places. No-one even noticed that it had been written to use InnoDB until recently which is why it didn't get fixed much earlier.

comment:2 by anonymous, 18 years ago

I've just encountered this problem on my MyISAM mysql system. I created the tables by hand without the innoDB specifier and just ran mythweather which was then able to grab sources and displays weather data.

comment:3 by stuartm, 17 years ago

Owner: changed from stuartm to Isaac Richards
Status: newassigned

comment:4 by stuartm, 17 years ago

Owner: Isaac Richards removed
Status: assignednew

comment:5 by stuartm, 16 years ago

Milestone: 0.22unknown
Type: defecttask

comment:6 by stuartm, 16 years ago

Component: mythweatherPlugin - MythWeather

comment:7 by Dibblah, 16 years ago

Resolution: invalid
Status: newclosed

Two years and no patch. Closing since innoDB is very rarely not available.

Note: See TracTickets for help on using tickets.