Ticket #2877 (closed patch: fixed)
Opened 6 years ago
Last modified 6 years ago
Attempt to use guide data when recovering recordings
| Reported by: | mikal@… | Owned by: | awithers |
|---|---|---|---|
| Priority: | minor | Milestone: | unknown |
| Component: | mythtv | Version: | 0.20 |
| Severity: | medium | Keywords: | |
| Cc: | Ticket locked: | yes |
Description
While recovering an accidentally deleted MySQL database, I needed to modify myth.rebuilddatabase.pl to use guide data if possible to recover the title, subtitle and description of shows I didn't have the SQL for any more. Here's the patch:
Index: myth.rebuilddatabase.pl =================================================================== --- myth.rebuilddatabase.pl (revision 11681) +++ myth.rebuilddatabase.pl (working copy) @@ -185,6 +185,7 @@
'norename'=>\$norename );
+print "db = dbi:mysql:database=$database:host=$dbhost user = $user pass = $pass\n";
my $dbh = DBI->connect("dbi:mysql:database=$database:host=$dbhost",
"$user","$pass") or die "Cannot connect to database ($!)\n";
@@ -314,6 +315,7 @@
# have enough to look for an past recording? if ($ssecond) {
+ print "Checking for a recording...\n";
$starttime = "$syear$smonth$sday$shour$sminute$ssecond";
my $guess = "select title, subtitle, description from oldrecorded where chanid=(?) and starttime=(?)";
@@ -333,6 +335,24 @@
print "End time: $emonth/$eday/$eyear - $ehour:$eminute:$esecond\n";
}
+ # what about checking for guide data? + if($guess_description =~ /Recovered file/) { + print "Checking for guide data...\n"; + my $guess = "select title, subtitle, description from program where chanid='$channel'". + " and starttime='$syear-$smonth-$sday $shour:$sminute:$ssecond'"; + print "$guess\n"; + $sth = $dbh->prepare($guess); + $sth->execute() + or die "Could not execute ($guess)\n"; + + if (my @row = $sth->fetchrow_array) { + $guess_title = $row[0]; + $guess_subtitle = $row[1]; + $guess_description = $row[2]; + print "Using guide data informaton for defaults\n"; + } + } +
my $newtitle = $guess_title; my $newsubtitle = $guess_subtitle; my $newdescription = $guess_description;
