Suggs: hack to create suggestions

Discussion in 'TiVo Series 1 - UK' started by mikerr, Sep 11, 2008.

  1. nickf

    nickf New Member

    113
    0
    Oct 12, 2001
    Suffolk, UK

    Advertisements

    Has anyone got cron to start suggs successfully? I've tried scheduling it - it seems to start the process, but the log file just gets blanked, and nothing is written to it, so I have no idea what it's doing!
     
  2. nickf

    nickf New Member

    113
    0
    Oct 12, 2001
    Suffolk, UK
    suggs has died on me - and I still had the telnet session open. The error in the session started with:
    Now errTmActiveLockConflict occasionally happens in TiVoWeb when it times out due to other activity on the box (ie recording). Does this help in debugging? Can it be caught and retried?
     
  3. Rob Randall

    Rob Randall New Member

    103
    0
    Nov 28, 2002
    Coventry, UK
    Version 1.01 already seems to be doing this - at least for me it is :) If a programme has episode data then suggs is scheduling multiples of the same series but only if the particular episode is not already in the NPL. So I am seeing multiple copies of Simpsons, Futurama, Time Team, etc in my suggestions, but not the same episodes.
     
  4. Nov 2, 2008 #184 of 259
    -MC-

    -MC- New Member

    113
    0
    Dec 9, 2005
    London
    Since changing the config file on endpad to a simple global s1 e3, I've had a run of 9 days using v0.94, but i'ts finally packed up now :(. interestingly the last log entry is 3 minutes before the daily call :confused: If only I knew how to fix it !
     
  5. Nov 2, 2008 #185 of 259
    Rob Randall

    Rob Randall New Member

    103
    0
    Nov 28, 2002
    Coventry, UK

    Advertisements

    I changed my startup command for suggs 1.01 to this
    Code:
    /var/hack/suggs.tcl -threshold 1 -console > /var/log/suggs.log 2>&1 &
    so that stderr messages go to the log file too.

    Suggs stopped running early this morning, these were the last entries in the log
    Code:
    Sunday 05:08:42: Checking for free space
    Sunday 05:09:02: Scanning todo list
    no such object: {CONFLICT err=errTmActiveLockConflict}
        while executing
    "dbobj $programId get Title"
        ("uplevel" body line 10)
        invoked from within
    "uplevel $body"
        invoked from within
    "transaction {uplevel $body}"
        (procedure "RetryTransaction" line 6)
        invoked from within
    "RetryTransaction {
    				set obj [db $db openid $fsid]
    				set selectionType [dbobj $obj get SelectionType]
    
    				regexp {([0-9]*)/(.*)} [dbobj $obj gett..."
        ("uplevel" body line 7)
        invoked from within
    "uplevel $body"
        invoked from within
    "ForeachMfsFile fsid name type "/Recording/Active" "" {
    
    	if {$type == "tyDb"}  {
    		after 50
    		if { [regexp {^4} $name] || [regexp {^3} $name] } { 
    			..."
        (procedure "refresh-todolist" line 4)
        invoked from within
    "refresh-todolist "
        (file "./suggs.tcl" line 529)
    
    
    My last successful daily call was 01:35pm, 2-Nov-08 so could have had no effect.
     
  6. Nov 2, 2008 #186 of 259
    -MC-

    -MC- New Member

    113
    0
    Dec 9, 2005
    London
    So it looks like the timing of mine stopping was just coincidence

    I see nickf has the same error as you -

    sorry I dont know much about hacking but doesn't that just mean that the database was busy at the time and so crashed the program -

    I see this in the logs of irblast, but that retrys until its successful ie -


    Starting irblast 1.2.1...
    Wednesday 20:32:09 : Opening Log file /var/log/irblast.log
    retrying after errTmActiveLockConflict ...
    Got IR codes for {BSkyB - England} IRcode: 20017
    Starting main loop...
    Key 0 Clear Clear to disable
    Key 1 Clear Clear to reenable
    Key 8 Clear Clear or 'touch /tmp/blastquit' to quit.



    .
     
  7. Nov 2, 2008 #187 of 259
    mikerr

    mikerr TiVoCentral.co.uk

    2,599
    0
    Jun 2, 2005
    Lancashire, UK
    It is a database busy message, which can be caught,
    but sometimes it also causes a transaction to fail totally, and you get the no such object error.

    V1.02 is uploaded, and continues running after these errors.
     
  8. Nov 2, 2008 #188 of 259
    -MC-

    -MC- New Member

    113
    0
    Dec 9, 2005
    London
    Thats great mikerr, I'll give it a go :up:
     
  9. Nov 2, 2008 #189 of 259
    nickf

    nickf New Member

    113
    0
    Oct 12, 2001
    Suffolk, UK
    Yup sounds good, I'll test it out. Although 1.01 had been running fine since Friday night (interestingly I haven't watched much on TiVo - I wonder if you get more errTmActiveLockConflict when you're actively using TiVo).

    Couple of requests / suggestions - can we have an option to output more detail to the log? I tend to edit and set debug to true, and uncomment all the logging contained in if {$debug} calls.

    Also - the readme and bugs list in the distribution are a little out of date, would be good for checking what's changed if they were updated :)

    Thanks again for working on this Mike.
     
  10. Nov 3, 2008 #190 of 259
    Rob Randall

    Rob Randall New Member

    103
    0
    Nov 28, 2002
    Coventry, UK
    Thanks mikerr :)
     
  11. Nov 3, 2008 #191 of 259
    nickf

    nickf New Member

    113
    0
    Oct 12, 2001
    Suffolk, UK
    I was still getting slight stuttering on playback every 30 mins when the schedule is processed. I think this is because we need a slight pause in the foreach prog $allprogs { loop (line 646), so I've added a after 100 at the start of that (currently it only pauses within the if { $recordThis } { loop, ie if really is going to schedule the suggestion).

    I've just tried this, and first time through (ie 30 mins after starting), it didn't seem to stutter at all...
     
  12. Nov 3, 2008 #192 of 259
    mikerr

    mikerr TiVoCentral.co.uk

    2,599
    0
    Jun 2, 2005
    Lancashire, UK
    Delays really should be added just before a RetryTransaction
    as stuttering is caused by tivo not getting enough cpu/database time (transactions lock tivo out of the database).

    Try increasing the existing delay value from 100 to 500.
     
  13. Nov 4, 2008 #193 of 259
    Rob Randall

    Rob Randall New Member

    103
    0
    Nov 28, 2002
    Coventry, UK
    1.02 seems to like scheduling suggestions that were on earlier today i.e. they are in the past. It doesn't seem to be causing any problems except there are many entries in tverr like the following -
    Code:
    Nov  4 01:11:23 (none) Scheduler[162]: Scheduled Recording ends before it starts
    Nov  4 01:11:24 (none) Scheduler[162]: Scheduled recording expires before it starts
    Nov  4 01:11:24 (none) last message repeated 17 times
    Nov  4 01:11:27 (none) Scheduler[162]: Scheduled Recording ends before it starts
    Nov  4 01:11:27 (none) Scheduler[162]: Scheduled recording expires before it starts
    Nov  4 01:11:27 (none) last message repeated 17 times
     
  14. Nov 4, 2008 #194 of 259
    -MC-

    -MC- New Member

    113
    0
    Dec 9, 2005
    London
    First errTmActiveLockConflict since running v1.02,

    but i see its gone to Tuesday 10:38:25: Waiting for 30 mins instead of retrying again - is that right ?



    Tuesday 10:07:19: Waiting for 30 mins
    Tuesday 10:37:19: Checking for free space
    Tuesday 10:37:25: Error... no such object: {CONFLICT err=}
    while executing
    "dbobj $program get Title"
    ("uplevel" body line 15)
    invoked from within
    "uplevel $body"
    invoked from within
    "transaction {uplevel $body}"
    (procedure "RetryTransaction" line 6)
    invoked from within
    "RetryTransaction {
    set recording [db $db openid $fsid]
    set state [dbobj $recording get State]
    set seltype ..."
    ("uplevel" body line 3)
    invoked from within
    "uplevel $body"
    invoked from within
    "ForeachMfsFile fsid name type "/Recording/DiskUsed/10" "" {
    after 50
    RetryTransaction {
    set recording [db $db openid $fsid]
    s..."
    (procedure "get_freespace" line 9)
    invoked from within
    "get_freespace 2"
    Tuesday 10:37:25: ... retrying in a minute
    Tuesday 10:38:25: Waiting for 30 mins
     
  15. Nov 4, 2008 #195 of 259
    mikerr

    mikerr TiVoCentral.co.uk

    2,599
    0
    Jun 2, 2005
    Lancashire, UK
    That's ok - the point is that it continues running for the next loop in 30 mins. So it'll run without crashing now.
     
  16. Nov 4, 2008 #196 of 259
    nickf

    nickf New Member

    113
    0
    Oct 12, 2001
    Suffolk, UK
    Yes I noticed this - looks like it builds the list of what to schedule at the first run after midnight, then keeps trying to schedule these showings for the rest of the day, even when we've passed them. It confused me but it seemed to do no harm. (Mike, might be an idea to print the date in the SCHEDULE logging line - I tried but couldn't get it to format into a Julian date)
     
  17. Nov 4, 2008 #197 of 259
    simbeav

    simbeav New Member

    57
    0
    Mar 14, 2005
    Has anybody else been having problems with blocklists with the last couple of versions of SUGGS ?
    My blockgenre is still working, but I'm getting inundated with Time Team's again.
    Is anybody else using blocklists and are they working ? Or have I broken my blocklist somehow ?
     
  18. Nov 6, 2008 #198 of 259
    mesaka

    mesaka travelling member

    133
    0
    Sep 27, 2002
    Hi

    Does anyone happen to have a version of 0.94 that I could have? That was running pretty well for me. However, I deleted it (doh!) and with 1.02 the stuttering is so bad I have had to disable the hack.
     
  19. Nov 6, 2008 #199 of 259
    carl newman

    carl newman New Member

    32
    0
    Aug 7, 2004
    Cambridgeshire
    Here you go..... i'm currently using this version and think its great! Thanks Mikerr
     

    Attached Files:

  20. Nov 7, 2008 #200 of 259
    mesaka

    mesaka travelling member

    133
    0
    Sep 27, 2002
    Thanks!
     

Share This Page

spam firewall

Advertisements