Version 1.7.1.12 Crashing for My Lineup

An evolving, supported alternative to Rovi
Forum rules
★ Download the latest EPG123 here: http://epg123.garyan2.net <> Setup guide here: http://epg123.garyan2.net/downloads/epg123_Guide.pdf
Post Reply
rimmel

Posts: 79
Joined: Tue Aug 27, 2013 10:36 pm
Location:

HTPC Specs: Show details

Version 1.7.1.12 Crashing for My Lineup

#1

Post by rimmel » Fri Sep 16, 2022 7:15 am

I upgraded my cable lineup from 1.7.1.7 to 1.7.1.12 and epg123 crashes. See trace log fragment below. This has happened four consecutive times. Reverting back to 1.7.1.7 and epg123 runs to completion.

Code: Select all

[9/15/2022 11:14:07 PM] Entering GetAllScheduleEntryMd5s() for 21 days on 640 stations.
[9/15/2022 11:14:09 PM] [ INFO] Successfully retrieved Md5s for  59 stations' daily schedules. (0:00:00:01.5288000)
[9/15/2022 11:14:10 PM] [ INFO] Successfully retrieved  59 stations' daily schedules.          (0:00:00:01.1076000)
[9/15/2022 11:14:12 PM] [ INFO] Successfully retrieved Md5s for  59 stations' daily schedules. (0:00:00:00.8736000)
[9/15/2022 11:14:13 PM] [ INFO] Successfully retrieved  59 stations' daily schedules.          (0:00:00:01.5544000)
[9/15/2022 11:14:15 PM] [ INFO] Successfully retrieved Md5s for  59 stations' daily schedules. (0:00:00:01.1700000)
[9/15/2022 11:14:16 PM] [ INFO] Successfully retrieved  59 stations' daily schedules.          (0:00:00:01.0764000)
[9/15/2022 11:14:18 PM] [ INFO] Successfully retrieved Md5s for  59 stations' daily schedules. (0:00:00:00.7800000)
[9/15/2022 11:14:19 PM] [ INFO] Successfully retrieved  59 stations' daily schedules.          (0:00:00:01.6068000)
[9/15/2022 11:14:21 PM] [ INFO] Successfully retrieved Md5s for  59 stations' daily schedules. (0:00:00:00.8580001)
[9/15/2022 11:14:22 PM] [ INFO] Successfully retrieved  59 stations' daily schedules.          (0:00:00:01.6068000)
[9/15/2022 11:14:25 PM] [ INFO] Successfully retrieved Md5s for  59 stations' daily schedules. (0:00:00:01.5494000)
[9/15/2022 11:14:26 PM] [ INFO] Successfully retrieved  59 stations' daily schedules.          (0:00:00:01.6380000)
[9/15/2022 11:14:28 PM] [ INFO] Successfully retrieved Md5s for  59 stations' daily schedules. (0:00:00:00.8112000)
[9/15/2022 11:14:28 PM] [ INFO] Successfully retrieved  59 stations' daily schedules.          (0:00:00:00.4680000)
[9/15/2022 11:14:29 PM] [ INFO] HTTP POST request exception thrown. Messages: One or more errors occurred. Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'System.Collections.Generic.Dictionary`2[System.String,epg123.SchedulesDirect.ScheduleMd5Response]' because the type requires a JSON object (e.g. {"name":"value"}) to deserialize correctly.
To fix this error either change the JSON to a JSON object (e.g. {"name":"value"}) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List<T> that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array.
Path '95922', line 1, position 38911. 
[9/15/2022 11:14:29 PM] [ERROR] Did not receive a response from Schedules Direct for Md5s of  59 stations' daily schedules. (0:00:00:01.0296000)
[9/15/2022 11:14:29 PM] [ERROR] Problem occurred during GetMd5ScheduleEntries(). Exiting.
[9/15/2022 11:14:29 PM] [ERROR] Failed to create MXF file. Exiting.

User avatar
garyan2

Posts: 6865
Joined: Fri Nov 27, 2015 7:23 pm
Location:

HTPC Specs: Show details

#2

Post by garyan2 » Fri Sep 16, 2022 3:42 pm

I was worried about that. The problem is sometimes SD will send a malformed response that the deserializer will choke on. When I retargeted epg123 to framework 4.5 for v1.7.1.8, using the new http methods available didn't lend itself to correcting the response prior to trying to deserialize.

So prior to 1.7.1.8 epg123 would correct the malformed response and avoid the exception, basically through brute force. I don't have anything there in 1.7.1.8 and above for this specific problem. Could you let me know what your lineup is so I can try to find a way to get the same protection? Hopefully the problem will still be there when I test out any new code.

Sent from my SM-G781U1 using Tapatalk

- Gary
Keeping WMC alive beyond January 2020. https://garyan2.github.io

rimmel

Posts: 79
Joined: Tue Aug 27, 2013 10:36 pm
Location:

HTPC Specs: Show details

#3

Post by rimmel » Fri Sep 16, 2022 7:55 pm

I have two lineups one cable and one OTA. The cable lineup in question here has an ID of "USA-WA46544-X" and is named "Comcast Spokane/Inland Northwest - Digital". Do you need my SD login ID and password?

User avatar
garyan2

Posts: 6865
Joined: Fri Nov 27, 2015 7:23 pm
Location:

HTPC Specs: Show details

#4

Post by garyan2 » Fri Sep 16, 2022 8:08 pm

No. Dont need any of that. I'll just add that lineup to my account and check out the responses from SD. There will probably be a single station causing the problem.

Sent from my SM-G781U1 using Tapatalk

- Gary
Keeping WMC alive beyond January 2020. https://garyan2.github.io

User avatar
garyan2

Posts: 6865
Joined: Fri Nov 27, 2015 7:23 pm
Location:

HTPC Specs: Show details

#5

Post by garyan2 » Sat Sep 17, 2022 12:46 am

Well, unfortunately the error in the return message from SD is no longer there. I can still work on finding the best solution... just won't be able to test it out.
- Gary
Keeping WMC alive beyond January 2020. https://garyan2.github.io

rimmel

Posts: 79
Joined: Tue Aug 27, 2013 10:36 pm
Location:

HTPC Specs: Show details

#6

Post by rimmel » Thu Sep 29, 2022 11:36 pm

I just got another malformed JSON object on my cable lineup if you like to test your new code for this!

Hagrinas

Posts: 11
Joined: Tue Feb 14, 2012 12:44 am
Location:

HTPC Specs: Show details

#7

Post by Hagrinas » Fri Sep 30, 2022 12:36 am

I'm getting the following with version 1.7.1.12. Is this working on earlier versions, and if so, which should I try?

[9/29/2022 5:16:20 PM] Entering BuildLineupServices() for 1 lineups.
[9/29/2022 5:16:20 PM] [ INFO] Successfully retrieved the station mapping for lineup USA-OTA-94587.
[9/29/2022 5:16:20 PM] Exiting BuildLineupServices(). SUCCESS.
[9/29/2022 5:16:20 PM] Entering GetAllScheduleEntryMd5s() for 21 days on 216 stations.
[9/29/2022 5:16:21 PM] [ INFO] HTTP POST request exception thrown. Messages: One or more errors occurred. Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'System.Collections.Generic.Dictionary`2[System.String,epg123.SchedulesDirect.ScheduleMd5Response]' because the type requires a JSON object (e.g. {"name":"value"}) to deserialize correctly.
To fix this error either change the JSON to a JSON object (e.g. {"name":"value"}) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List<T> that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array.
Path '49937', line 1, position 74071.
[9/29/2022 5:16:21 PM] [ERROR] Did not receive a response from Schedules Direct for Md5s of 59 stations' daily schedules. (0:00:00:01.2185954)
[9/29/2022 5:16:21 PM] [ERROR] Problem occurred during GetMd5ScheduleEntries(). Exiting.
[9/29/2022 5:16:21 PM] [ERROR] Failed to create MXF file. Exiting.
[9/29/2022 5:16:21 PM] [ INFO] epg123 update execution time was 00:00:03.5799998.

At that point, if I mouseover the icon in the tray, I see "2/13 Building schedules..." and it stays that way. It's a new installation so there's no prior data.

Everything worked fine on another machine with an existing installation when it ran at 3 am, so I ran it now and saw the same problem. However, it went on to the next steps, and ended with a "completed successfully" so I'd have no way of knowing that anything failed, had I not seen the problem on a new install on another computer. Obviously I'd like to see the problem fixed, but it should let the user know if it fails.

User avatar
garyan2

Posts: 6865
Joined: Fri Nov 27, 2015 7:23 pm
Location:

HTPC Specs: Show details

#8

Post by garyan2 » Fri Sep 30, 2022 3:52 am

Versions prior to 1.7.1.8 will correct for the malformed responses.

EPG123 will indicate a fail for this depending on where it happens in the process. If it cannot retrieve your lineups, or cannot get the Md5 schedules for your channels, it will fail and abort.

Everything else will allow the update to continue to completion using as much data successfully downloaded, or from cache, as possible. There should be warnings in your log file for missing data, but it will complete with maybe some missing data. Since WMC contains all the previous guide listings, even missing data during the update, it is possible that your guide will still be 100% correct. Obviously this is not the case for a clean/fresh install without a cache or existing guide data.
- Gary
Keeping WMC alive beyond January 2020. https://garyan2.github.io

Hagrinas

Posts: 11
Joined: Tue Feb 14, 2012 12:44 am
Location:

HTPC Specs: Show details

#9

Post by Hagrinas » Fri Sep 30, 2022 7:17 pm

garyan2 wrote:
Fri Sep 30, 2022 3:52 am
Versions prior to 1.7.1.8 will correct for the malformed responses.

EPG123 will indicate a fail for this depending on where it happens in the process. If it cannot retrieve your lineups, or cannot get the Md5 schedules for your channels, it will fail and abort.

Everything else will allow the update to continue to completion using as much data successfully downloaded, or from cache, as possible. There should be warnings in your log file for missing data, but it will complete with maybe some missing data. Since WMC contains all the previous guide listings, even missing data during the update, it is possible that your guide will still be 100% correct. Obviously this is not the case for a clean/fresh install without a cache or existing guide data.
Thanks. Guide data was almost correct except for some generic descriptions where the feed would have had specific ones. Rolling back fixed it.

Post Reply