Opened 14 years ago

Closed 14 years ago

#821 closed defect (fixed)

autoexpire doesn't delete short-recordings immediately during LiveTV

Reported by: Geoffrey Hausheer Owned by: danielk
Priority: minor Milestone: 0.19
Component: mythtv Version: head
Severity: medium Keywords: livetv
Cc: Ticket locked: no

Description

The autoexpire code which is supposed to remove short recordings isn't working for me.

mysql> select starttime, endtime from recorded where recgroup = "LiveTV";
+---------------------+---------------------+
| starttime           | endtime             |
+---------------------+---------------------+
| 2005-12-16 11:31:32 | 2005-12-16 12:00:00 |
| 2005-12-16 11:31:33 | 2005-12-16 11:32:00 |
| 2005-12-16 11:31:09 | 2005-12-16 12:00:00 |
| 2005-12-16 11:30:55 | 2005-12-16 12:00:00 |
| 2005-12-16 11:30:54 | 2005-12-16 12:00:00 |
| 2005-12-16 11:30:36 | 2005-12-16 12:00:00 |
| 2005-12-16 11:30:37 | 2005-12-16 12:00:00 |

obviously I was channel surfing, as the starttimes change quickly, but the endtime is still set to the program end time.

This results in autoExpire doing nothing with these since this check always fails: endtime < DATE_ADD(starttime, INTERVAL '2' MINUTE)

However, you'll see there is one file which has an endtime of 11:32:00 which is probably correct, and this one got deleted appropriately. Not sure why none of the rest worked correctly. This is based on latest SVN8291

Change History (7)

comment:1 Changed 14 years ago by Geoffrey Hausheer

Keywords: livetv added

I probably should have emtioned in the title that this is related to LiveTV ,not regular recordings.

comment:2 Changed 14 years ago by Geoffrey Hausheer

Summary: autoexpire doesn't delete short-recordings immediatelyautoexpire doesn't delete short-recordings immediately during LiveTV

comment:3 Changed 14 years ago by danielk

Resolution: fixed
Status: newclosed

(In [8306]) Fixes #821.

FinishRecording?() was not being called on some recordings in LiveTV. This commit fixes all the normal cases, but there may still error cases that are not caught.

comment:4 Changed 14 years ago by Geoffrey Hausheer

Resolution: fixed
Status: closedreopened

I am still seeing this issue pretty frequently as of 8391. Is there some data I can provide that'll help track it down?

comment:5 Changed 14 years ago by cpinkham

(In [8468]) References #821. Attempt to fix the issue with some short LiveTV recordings not having their end times updated which causes them to not be expired properly. Also, fix one place where we assign curRecording to a newly allocated ProgramInfo? but didn't delete the old one if one was allocated.

comment:6 Changed 14 years ago by danielk

Milestone: 0.19
Owner: changed from Isaac Richards to danielk
Status: reopenednew

comment:7 Changed 14 years ago by danielk

Resolution: fixed
Status: newclosed

(In [8567]) Fixes #821.

When flipping through channels quickly enough that the recorder doesn't have time to start up, the recorder is never shut down and so the recording's end time is never set. This sets the end time for these rump 'recordings'.

Also if the recording is less than 30 seconds long the recording end time was often being set as before the recording start time by the rounding rutines in FinishedRecording?(). This adds a check for this and sets the end time so that the recording is at least 1 second long in the DB in these cases.

Note: See TracTickets for help on using tickets.