←  [EN] Enduser support

Forums

»

OP 7.2, 2 crashs yesterday

's foto Raybobo 16 jan 2020

Hello,

Vu+Duo2, OP 7.2, Dec. 2019, 31.

 

Yesterday, two crash, but found only 1 log, not sure about which crash is.

 

First crash, when moving some channels in channel list by option 6 of the menu. Already noticed, that after 5 or 6 individual moves, green screen and restart.

 

Then the second crash, I was just browsing record list, nothing else.

 

I join the crashlog.

 

Thanks to all the team, good job. 

Bijgevoegde Bestanden


Veranderd door Raybobo, 16 januari 2020 - 09:34
Citeren

's foto Frenske 16 jan 2020

You forgot, at least at this moment, the crashlog. :)

Do you use a ready made channellist, and if you confirm, which list do you use?

Citeren

's foto WanWizard 16 jan 2020

PC: 004ae8e8
    00000000 00000001 01a86628 00000081
    7fe3e518 00000000 00000000 76e79000
    7efefefe a424242e 00000001 25252525
    81010100 616d6b63 325f6b72 31393130
    7fe3e518 7fe3e530 7fe3e564 01995028
    73453839 7fe3e510 7fe3e528 7fe3e55c
    00000002 76d893b0 fbad2484 00000000
    0076b3b0 7fe3e4d0 7fe3e544 004ae8bc
Backtrace:
/usr/bin/enigma2(_Z17handleFatalSignaliP9siginfo_tPv) [0x46068C]
/usr/bin/enigma2(_ZN8eBouquet12flushChangesEv) [0x4AE8EA]
/usr/bin/enigma2(n/a) [0x5C68D8]
/usr/lib/libpython2.7.so.1.0(PyEval_EvalFrameEx) [0x773284D0]
-------FATAL SIGNAL

Looks like a crash while passing data from Python to C. EPG corruption perhaps?

Citeren

's foto littlesat 16 jan 2020

Using fallback tuner with EPG import from fallback tuner box... With this feature ON I was able to verify exactly these kind of crashes.... As you are also using 'normal' EPG you can disable this feature and the issue is most likely solved.

Citeren

's foto Frenske 16 jan 2020

I noticed this odd behavior in one of the previous channellist from Hans.

Citeren

's foto Raybobo 17 jan 2020

Do you use a ready made channellist, and if you confirm, which list do you use?

Yes, I do, from a script, but I have created my favorites list with E-Channelizer.

 

 

 

Using fallback tuner with EPG import from fallback tuner box... With this feature ON I was able to verify exactly these kind of crashes.... As you are also using 'normal' EPG you can disable this feature and the issue is most likely solved.

I don't know about this, but I will check it, if I find where it is, and I will disable it.

 

Thanks for the answer, I will give feedback.

Citeren

's foto Raybobo 18 jan 2020

 

 

Using fallback tuner with EPG import from fallback tuner box... With this feature ON I was able to verify exactly these kind of crashes.... As you are also using 'normal' EPG you can disable this feature and the issue is most likely solved.

Hello again,

Where can I find this? The only option I found was in EPG, and I have disabled all options, is that right?

Thanks

Citeren

's foto littlesat 18 jan 2020

It is in fallbacktuner setup... but when you did not use or enabled it then this is not the issue... however it could also be another tuner in your home that uses fallbacktuner... it can cause these kind of crashes on a server box as load/save epg.dat is not threaded prove.
Citeren

's foto WanWizard 18 jan 2020

@Littlesat,

 

As a "workaround": It should not be too difficult to create an IsEPGReaderActive() method in C, which can be queried from Python? This allows you to postpone the action until it is safe to do so?

 

I don't think it can ever be made thread-safe, as long as data access isn't, and that is very complex when using a memory store. It will be immediately fixed when switching to a SQL backend, and those are by design multi-threaded.

Citeren

's foto Raybobo 19 jan 2020

Waouh, it's becoming too hard for me to understand!  :D

Citeren

's foto littlesat 19 jan 2020

Postpone will not work.... unless you poll that function each X times and also poll the server box via via.... it has to be made thread prove or you need to add triggers somehow. It is not that simple.....
You can also stop the readers... so the load/save thing...
Then fully restart the readers.... Then you do not need triggers.. But some data will be read twice (so what!) to ensure there is no gap in data. That was a solution I was thinking off..But I need help from a cpp guro here due to cpp is not my comfort zone and in addition the epgcache stuff in e2 is like spaghetti.
I also have the idea that with the latest changes to the epg cache stuff (the type added) is worsened...
Veranderd door littlesat, 19 januari 2020 - 09:17
Citeren

's foto WanWizard 19 jan 2020

You don't need a poll, you need a time triggered callback:

def somefunction:

    if isReaderActive:
        call somefunction again after 5 seconds
    else:
        process

Enigma is full of delayed callbacks...

Citeren

's foto littlesat 19 jan 2020

That will not work... eg when the server box needs to create an epg.dat to be transferred to the client box the client box need to have a trigger when the server box is ready.

And try again after x seconds ~= polling...

Then better interrupt the epg reader that is active and restart after the save to solve reading gaps.
Veranderd door littlesat, 19 januari 2020 - 18:24
Citeren

's foto WanWizard 19 jan 2020

Ah, ok, I was thinking about the import, not the export.

Citeren

's foto littlesat 19 jan 2020

The issue is on both sides and that makes it even more complicated... usually when you load it the readers are not started yet and when you save the readers are de-actifated just before you do the save... but when the save is started through the webif (I could not find a different trigger) then you have the threading issue when a reader is (still)’running...(even the xml reader!).
As the load with fallback tuner is started just after the first server is started after the reboot of e2 you quickly get issues on the client box... aka openatv solved it by first load the epg en then start the first service which slow down the start of e2’upto the first picture.
Veranderd door littlesat, 19 januari 2020 - 18:55
Citeren

's foto Raybobo 20 jan 2020

Again, sorry, but for me....
What can I do on my side to help? Because after having read your posts, I'm lost,...

 

Thanks

Citeren

's foto littlesat 20 jan 2020

When the issue is epg.dat related you need to disable epg import from your client boxes and/or disable all plugins that uses epg.dat and ensure a request to create an epg.dat is not triggered via openwebif.
Citeren

's foto littlesat 20 jan 2020

When the issue is epg.dat related you need to disable epg import from your client boxes and/or disable all plugins that uses epg.dat and ensure a request to create an epg.dat is not triggered via openwebif.
Citeren

's foto Raybobo 21 jan 2020

 

 

 

      When the issue is epg.dat related you need to disable epg import from your client boxes and/or disable all plugins that uses epg.dat and ensure a request to create an epg.dat is not triggered via openwebif.            

Ok, I have some problems to know what I have to do and where... Sorry, but I have no client boxes and how can I disable plugins using epg.dat, I don't know wich are these?

And openwebif, I have it only on my Windows10, that is not connected most part of the time.

 

Thanks again for the help, these things are new for me.

Citeren

's foto littlesat 21 jan 2020

Then the epg.dat stuff and fallback tuner stuff is not related... then the settings might be a point of interrest.
Veranderd door littlesat, 21 januari 2020 - 08:01
Citeren