Opened 12 years ago

Closed 12 years ago

#10482 closed Patch - Feature (Fixed)

Marking episode first/last showings performance

Reported by: sfkoch@… Owned by: gigem
Priority: minor Milestone: 0.26
Component: MythTV - Mythfilldatabase Version: 0.24.2
Severity: medium Keywords:
Cc: Ticket locked: no

Description

Mythfilldatabase's "Marking episode first showings" and "Marking episode last showings" steps take a combined 21+ minutes on my backend server. After attempting MySQL and filesystem tuning with no success, I cut the updates down to 5 seconds by modifying mythfilldatabase's queries to update in bulk rather than row-by-row.

Excerpts from mythfilldatabase output:

2012-03-20 13:02:56.902 Marking episode first showings.
2012-03-20 13:13:45.289     Found 34235
2012-03-20 13:13:45.289 Marking episode last showings.
2012-03-20 13:24:32.696     Found 34235

2012-03-20 14:21:44.732 Marking episode first showings.
2012-03-20 14:21:47.397     Found 65336
2012-03-20 14:21:47.397 Marking episode last showings.
2012-03-20 14:21:50.457     Found 64918

Besides the performance improvement, the "Found" number is changed to the actual number of programs marked instead of the number of unique programs. The number marked is higher than the unique count because of duplicate channels (non-HD and HD variants, Comcast in the middle of a massive renumbering).

I will submit a git pull request shortly.

Attachments (1)

mark_episode_showings.patch (7.2 KB) - added by sfkoch@… 12 years ago.
Patch to improve episode marking performance

Download all attachments as: .zip

Change History (5)

Changed 12 years ago by sfkoch@…

Attachment: mark_episode_showings.patch added

Patch to improve episode marking performance

comment:1 Changed 12 years ago by sfkoch@…

Ok, I'm a git noob. Here's a patch file instead.

comment:2 Changed 12 years ago by gigem

Owner: changed from stuartm to gigem
Status: newaccepted

comment:3 Changed 12 years ago by gigem

Milestone: unknown0.26

comment:4 Changed 12 years ago by beirdo

Resolution: Fixed
Status: acceptedclosed
Note: See TracTickets for help on using tickets.