Bug #4158
segfault loading epgdata
100%
Description
I've run into an issue where tvheadend will crash when loading epg data from xmltv grabber. I did not have this issue in previous builds. The only way I can get tvheadend to start again without a segfault is to delete the contents of .hts/tvheadend/epggrab/xmltv/channels/ and rebuild the epg links. Then it will work until the epg grab job runs again sometimes the next day, some times in a few days.
Files
History
Updated by Joe User almost 8 years ago
Maybe posting the files you delete and the xml file being imported will help...
Updated by Jaroslav Kysela almost 8 years ago
Provide the backtrace - https://tvheadend.org/projects/tvheadend/wiki/Debugging .
Updated by Greg H almost 8 years ago
- File gdb.txt gdb.txt added
- File xmltv.xml xmltv.xml added
- File epgdb.v2 epgdb.v2 added
- File xmltv.zip xmltv.zip added
I had the crash again this morning when the epg grabber ran. I finally got gdb installed on my Synology DS415+ that I ran tvheadend on and ran the backtrace. It would crash when trying to load the xmltv file. I deleted xmltv.xml (I attached a copy before deleting) and was able to start tvheadend. The log shows the following which was expected but it does not crash and I still have the 3 days of epg data that was previously loaded.
2017-01-03 21:19:18.001 spawn: Executing "/usr/bin/tv_grab_file" 2017-01-03 21:19:18.006 spawn: cat: /usr/local/zap2xml/xmltv.xml: No such file or directory 2017-01-03 21:19:18.007 xmltv: /usr/bin/tv_grab_file: no output detected 2017-01-03 21:19:18.007 xmltv: /usr/bin/tv_grab_file: grab returned no data
I am using zap2xml and had issues using zap2it and tvguide.
xmltv.zip is the contents of epggrab/xmltv
Updated by Greg H almost 8 years ago
Did some more investigating and deleting the epggrab/xmltv channels did not prevent the crash, I removed all of the program data from teh xmltv.xml file and it still crashed. I removed all of the channels in teh xmltv.xml file and it would parse it and not crash. I put the epggrab data back and ran the epggraber with the xmltv.xml file empty and it did not crash. I added back in some channels and it did not crash. I noticed that the channels have multiple display names
<channel id="I21.442.tvguide.com"> <display-name>21 CSPAN</display-name> <display-name>21</display-name> <display-name>CSPAN</display-name> <display-name>Cable Satellite Public Affairs Network</display-name> </channel>
I removed the last entry from all of the channels and it loaded and did not crash. I then put all the program data back and it loaded without a crash. I noticed that there are some special characters in the names of some of the channels and am wondering if that is the culprit.
Updated by Greg H almost 8 years ago
I figured out what is causing the crash. There are two channels in the xmltv.xml file that have a blank display-name tag. When they are there it causes the crash, if I remove them the epggrab works fine.
<channel id="I935.10559.tvguide.com"> <display-name>935 D-HDTV</display-name> <display-name>935</display-name> <display-name>D-HDTV</display-name> <display-name></display-name> </channel>
Updated by Jaroslav Kysela almost 8 years ago
- Status changed from New to Fixed
- % Done changed from 0 to 100
Applied in changeset commit:tvheadend|8c845c12bd618337678e08cbba9b5e615714277c.