Hello Guest, if you are reading this it means you have not registered yet. Please take a second, Click here to register, and in a few simple steps you will be able to enjoy our community and use our OpenViX support section.

View Entry Info: Exception No such file or directory: '/tmp/was_rectimer_wakeup'

Category:
Possible Bug
What ViX Image build number are you using?
Please provide your ViX Team image build number. Menu > Information > About > Build number > ENTER THIS NUMBER e.g. 4.2.028
5.0.023
Have you tried a flash WITHOUT settings restore?
Have you tried this? PLEASE SELECT YES OR NO.
No
Have you tried a flash WITH settings restore?
Have you tried this? PLEASE SELECT YES OR NO.
No
Attachments
Page 1 of 3 123 LastLast
Results 1 to 15 of 33

Thread: Exception No such file or directory: '/tmp/was_rectimer_wakeup'

  1. #1

    Title
    Junior Member
    Join Date
    Oct 2014
    Posts
    20
    Thanks
    3
    Thanked 1 Time in 1 Post

    Exception No such file or directory: '/tmp/was_rectimer_wakeup'

    Hello, today a popup with an exception appeared:

    Text No such file or directory: '/tmp/was_rectimer_wakeup'


    Log attached.

    Regards
    asktrevis
    Attached Files Attached Files

  2. #2

    Title
    Forum Supporter
    Donated Member
    Join Date
    Jun 2014
    Posts
    1,321
    Thanks
    612
    Thanked 418 Times in 270 Posts
    Looks like an unhandled error:
    Code:
    Fehler: [Failure instance: Traceback: <type 'exceptions.OSError'>: [Errno 2] No such file or directory: '/tmp/was_rectimer_wakeup'
    I'm no expert but RecordTimer.py uses:
    Code:
    if os.path.exists("/tmp/was_rectimer_wakeup")
    but that command only returns true if path exists - ie "/tmp/" rather than actual file as it then proceeds to try to open it but "/tmp" will always return true as path will always be there (I believe). Wouldn't it be better to see if file itself exists before trying to open it?

    Similar thing in mytest.py as well. Not checked in anything else.
    Last edited by bbbuk; 06-08-17 at 22:26.

  3. #3
    birdman's Avatar
    Title
    Moderator
    Join Date
    Sep 2014
    Location
    Hitchin, UK
    Posts
    7,780
    Thanks
    237
    Thanked 1,658 Times in 1,306 Posts
    Quote Originally Posted by bbbuk View Post
    I'm no expert but RecordTimer.py uses:
    Code:
    if os.path.exists("/tmp/was_rectimer_wakeup")
    but that command only returns true if path exists - ie "/tmp/" rather than actual file....
    What makes you believe that?
    A path in Linux (and Unix) terms is a path to a file-system object - any object. So:
    Code:
    [parent]: ls /var/log/boot.log*
    /var/log/boot.log
    [parent]: python
    Python 2.7.12 (default, Nov 19 2016, 06:48:10) 
    [GCC 5.4.0 20160609] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import os
    >>> print os.path.exists("/var/log/boot.log")
    True
    >>> print os.path.exists("/var/log/boot.logx")
    False
    >>> 
    [parent]:
    i.e. it's a perfectly valid test for "is there such a file". (Well, almost - it would also return True if there were a directory of that name, but that's not the issue here).
    Last edited by birdman; 07-08-17 at 01:43.
    MiracleBox Prem Twin HD - 2@DVB-T2 + Xtrend et8000 - 5(incl. 2 different USBs)@DVB-T2[terrestrial - UK Freeview HD, Sandy Heath] - LAN/USB-stick/HDD

  4. #4
    birdman's Avatar
    Title
    Moderator
    Join Date
    Sep 2014
    Location
    Hitchin, UK
    Posts
    7,780
    Thanks
    237
    Thanked 1,658 Times in 1,306 Posts
    Well, the code in question is:
    Code:
        if os.path.exists("/tmp/was_rectimer_wakeup") and not wasRecTimerWakeup:
                wasRecTimerWakeup = int(open("/tmp/was_rectimer_wakeup", "r").read()) and True or False
                os.remove("/tmp/was_rectimer_wakeup")
    and the only way I can see the the second and/or third lines can fail if the first line passes is if two threads are running through here at the same time.

    Looking at the log a recording is starting up:
    Code:
    <   230.587> [eDVBServiceRecord] Recording to /media/hdd/movie/20170806 0725 - KiKA HD - Matzes Monster.ts...
    <   230.588> [eDVBServiceRecord] start recording...
    The odd thing is that just before that we have:
    Code:
    <   230.172> [RecordTimer] activating state 2
    <   230.176> [RecordTimer] activating state 2
    That is switching to StateRunning, which is when that file check takes place. But it is being done twice (I've checked with my own logs- it should only get reported once).

    So for some (unknown) reason you had two threads running through this code at the same time, and a race condition ensued. Both happened to pass the test but then when one of them deleted the file the other one reported that it wasn't there as an error.

    The issue is why were two timers being moved to StateRunning at the same time?
    MiracleBox Prem Twin HD - 2@DVB-T2 + Xtrend et8000 - 5(incl. 2 different USBs)@DVB-T2[terrestrial - UK Freeview HD, Sandy Heath] - LAN/USB-stick/HDD

  5. #5

    Title
    Junior Member
    Join Date
    Oct 2014
    Posts
    20
    Thanks
    3
    Thanked 1 Time in 1 Post
    Ok. I suspect that I've started enigma2 twice by command Line that day. Sorry for that.

    Thanks.

  6. #6
    ccs's Avatar
    Title
    ViX Beta Tester
    Join Date
    Sep 2014
    Posts
    5,836
    Thanks
    554
    Thanked 1,277 Times in 1,089 Posts
    Saw one of these tonight, skipping thru' the graphical epg day by day at the time, looking for a programme on bbc4.

  7. #7
    birdman's Avatar
    Title
    Moderator
    Join Date
    Sep 2014
    Location
    Hitchin, UK
    Posts
    7,780
    Thanks
    237
    Thanked 1,658 Times in 1,306 Posts
    Quote Originally Posted by ccs View Post
    Saw one of these tonight, skipping thru' the graphical epg day by day at the time, looking for a programme on bbc4.
    If you look at that log you'll see that there was an error in the ubifs file-system at start-up, which is odd , and an error.
    Given that /tmp/was_rectimer_wakeup is in memory, it's not directly related - but something on your box's file-system would appear to not be correct.
    MiracleBox Prem Twin HD - 2@DVB-T2 + Xtrend et8000 - 5(incl. 2 different USBs)@DVB-T2[terrestrial - UK Freeview HD, Sandy Heath] - LAN/USB-stick/HDD

  8. #8
    birdman's Avatar
    Title
    Moderator
    Join Date
    Sep 2014
    Location
    Hitchin, UK
    Posts
    7,780
    Thanks
    237
    Thanked 1,658 Times in 1,306 Posts
    It is possible to re-write the code so that it won't crash.

    Code:
            if not wasRecTimerWakeup:
                    try:
                            wasRecTimerWakeup = int(open("/tmp/was_rectimer_wakeup", "r").read()) and True or False
                            os.remove("/tmp/was_rectimer_wakeup")
                    except:
                            pass
    MiracleBox Prem Twin HD - 2@DVB-T2 + Xtrend et8000 - 5(incl. 2 different USBs)@DVB-T2[terrestrial - UK Freeview HD, Sandy Heath] - LAN/USB-stick/HDD

  9. #9
    ccs's Avatar
    Title
    ViX Beta Tester
    Join Date
    Sep 2014
    Posts
    5,836
    Thanks
    554
    Thanked 1,277 Times in 1,089 Posts
    Quote Originally Posted by birdman View Post
    If you look at that log you'll see that there was an error in the ubifs file-system at start-up, which is odd , and an error.
    Given that /tmp/was_rectimer_wakeup is in memory, it's not directly related - but something on your box's file-system would appear to not be correct.
    I know, I mentioned it ages ago, and it doesn't cause any issues (that I've noticed).

    Not much I can do about it I guess?

  10. #10
    birdman's Avatar
    Title
    Moderator
    Join Date
    Sep 2014
    Location
    Hitchin, UK
    Posts
    7,780
    Thanks
    237
    Thanked 1,658 Times in 1,306 Posts
    Quote Originally Posted by ccs View Post
    Not much I can do about it I guess?
    You could reflash with a recent image.
    It sounds (to me...so guessing) as though the nvram has developed a new bad spot?
    MiracleBox Prem Twin HD - 2@DVB-T2 + Xtrend et8000 - 5(incl. 2 different USBs)@DVB-T2[terrestrial - UK Freeview HD, Sandy Heath] - LAN/USB-stick/HDD

  11. #11
    ccs's Avatar
    Title
    ViX Beta Tester
    Join Date
    Sep 2014
    Posts
    5,836
    Thanks
    554
    Thanked 1,277 Times in 1,089 Posts
    Quote Originally Posted by birdman View Post
    You could reflash with a recent image.
    It sounds (to me...so guessing) as though the nvram has developed a new bad spot?
    I couch flashed 5.2.011 on the day it was released, could a usb flash be more effective, there have always been 4 bad "spots" reported when flashing since the day I got the box?

  12. #12
    twol's Avatar
    Title
    Moderator
    Join Date
    Apr 2012
    Posts
    8,412
    Thanks
    997
    Thanked 2,894 Times in 2,247 Posts
    If it hasn‘t changed (from 4) I wouldn’t think thats the issue.
    I trust ofgwrite (online flash) more than the one-off‘firmware produced by the receivers manufacturer
    Gigablue Quad 4K & UE 4K
    .........FBC Tuners:
    ------------------> GT-Sat unicable LNB to 1.5M dish(28.2E)
    ------------------> Gigablue unicable LNB to 80 cm dish(19.2E)
    .......................> FBC & DVB-S2X into 90cm dish (27.5W) Opticum robust Unicable LNB
    AX HD61, Edision Osmio 4K+, Zgemma H9Combo, Octagon SF8008 , gbtrio4k, h9se using unicable ports
    Zgemma H9 C/S into Giga4K

  13. The Following User Says Thank You to twol For This Useful Post:

    ccs (14-11-18)

  14. #13
    ccs's Avatar
    Title
    ViX Beta Tester
    Join Date
    Sep 2014
    Posts
    5,836
    Thanks
    554
    Thanked 1,277 Times in 1,089 Posts
    I've just created an image backup, and there were no errors, although there was one at boot time (a different inode to the crash log yesterday).

  15. #14
    ccs's Avatar
    Title
    ViX Beta Tester
    Join Date
    Sep 2014
    Posts
    5,836
    Thanks
    554
    Thanked 1,277 Times in 1,089 Posts
    I had another one of these today.

    Code:
    <   229.017> Traceback (most recent call last):
    <   229.017>   File "/usr/lib/enigma2/python/timer.py", line 239, in calcNextActivation
    <   229.017>   File "/usr/lib/enigma2/python/timer.py", line 314, in processActivation
    <   229.018>   File "/usr/lib/enigma2/python/RecordTimer.py", line 957, in doActivate
    <   229.018>   File "/usr/lib/enigma2/python/RecordTimer.py", line 542, in activate
    <   229.018> OSError: [Errno 2] No such file or directory: '/tmp/was_rectimer_wakeup'
    <   229.018> [ePyObject] (CallObject(<bound method RecordTimer.calcNextActivation of <RecordTimer.RecordTimer instance at 0x7253ba58>>,()) failed)
    The crash log looks clean, the only subtle difference in the last 9 months is that the timer (correctly) woke up around 6 hours earler than usual.

  16. #15
    birdman's Avatar
    Title
    Moderator
    Join Date
    Sep 2014
    Location
    Hitchin, UK
    Posts
    7,780
    Thanks
    237
    Thanked 1,658 Times in 1,306 Posts
    Quote Originally Posted by ccs View Post
    I had another one of these today.
    Do you have the full debug log?
    If so, were there two "[RecordTimer] activating state 2" entries in quick succession for a timer (see #4).
    MiracleBox Prem Twin HD - 2@DVB-T2 + Xtrend et8000 - 5(incl. 2 different USBs)@DVB-T2[terrestrial - UK Freeview HD, Sandy Heath] - LAN/USB-stick/HDD

Page 1 of 3 123 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
This website uses cookies
We use cookies to store session information to facilitate remembering your login information, to allow you to save website preferences, to personalise content and ads, to provide social media features and to analyse our traffic. We also share information about your use of our site with our social media, advertising and analytics partners.