Opened 2 years ago

#4722 new defect

CacheEx Push (mode 2) high CPU usage on Windows

Reported by: sat45 Owned by:
Priority: minor Component: Cache-EX
Severity: medium Keywords:
Cc: Sensitive: no

Description

Revision

11505 (build on Cygwin x64_86)

Issue Description

Reader set to CacheEx 2 Mode (CACHE PUSH) is creating high CPU usage (100%) issue on Windows. Also oscam process is consuming RAM very fast.

Replies from affected reader are getting slower and slower:

[2019-03-02 16:36:32] - 16:36:32 25C79304 c      (ecm) pcu2 (113C-0000.[0100-000068-5C00-64]-00000000000000000000000000000000): timeout (5352 ms) - 10719V SID 0x113c
[2019-03-02 16:36:32] - 16:36:32 25C79304 c      (ecm) pcu2 (113C-0000.[0100-000068-5C00-64]-00000000000000000000000000000000): timeout (8859 ms) - 10719V SID 0x113c
[2019-03-02 16:36:38] - 16:36:38 25C79304 c      (ecm) pcu2 (113C-0000.[0100-000068-5C00-64]-00000000000000000000000000000000): timeout (5882 ms) by tv2 - 10719V SID 0x113c
[2019-03-02 16:36:50] - 16:36:50 25C79304 c      (ecm) pcu2 (113C-0000.[0B01---88]-00000000000000000000000000000000): timeout (12350 ms) - 10719V SID 0x113c
[2019-03-02 16:37:19] - 16:37:19 25C79304 c      (ecm) pcu2 (113C-0000.[0B01---88]-00000000000000000000000000000000): timeout (28522 ms) - 10719V SID 0x113c
[2019-03-02 16:37:31] - 16:37:31 25C79304 c      (ecm) pcu2 (113C-0000.[0B01---88]-00000000000000000000000000000000): timeout (12222 ms) - 10719V SID 0x113c
[2019-03-02 16:37:31] - 16:37:31 25C79304 c      (ecm) pcu2 (113C-0000.[1813---64]-7F5ECBA8C02A0BF5B2405143D4970C77): cache3 (199 ms) by tv3 - 10719V SID 0x113c
[2019-03-02 16:38:05] - 16:38:05 25C79304 c      (ecm) pcu2 (113C-0000.[1813---64]-00000000000000000000000000000000): timeout (28015 ms) - 10719V SID 0x113c
[2019-03-02 16:40:46] - 16:40:46 25C79304 c      (ecm) pcu2 (113C-0000.[0100-000068-5C00-64]-00000000000000000000000000000000): timeout (161392 ms) - 10719V SID 0x113c

Finally after some time oscam will partially hang (eg webif still works, but no answer from readers) or problematic reader will crash, eg.

[2019-03-02 16:40:46] - 16:40:46 4DCFC318 p   (camd35) packet is too small (received 0 bytes, expected 1024 bytes)

After reader will be restarted - again for a little while everything will be fine, but reader will be getting slower and slower when CacheEx will be filled with more and more data.

Also not sure should I add this here or create separate ticket, but it seems that CacheEx data is magazined without any limit? Or maybe this is some memory leak? On Windows memory usage with CacheEx mode 2 (PUSH) is growing without limit, oscam.exe has reached 2 GB RAM after 1 hour of work.

When the issue occurs

When using CacheEx mode 2 (CACHE PUSH) on Windows.

How the issue is reproducable

By setting up Windows enviroment and CacheEx reader with mode 2. It can be spotted faster if CacheEx is bigger.

Possible workarounds

Basically none beside restarting oscam eg. every 30 mins.
Also adding ident to readers can limit CacheEx data volume and some cache configuration helps to avoid waiting for replies from hanged reader.

[cache]
max_time				  = 5000
max_cache_time				  = 5000
wait_time				  = 5000
wait_until_ctimeout			  = 0

But this only will hide the root cause of this problem.

Of course using oscam on Linux is pretty good workaround for this ;) But that's not the point ;)

I'm able to build oscam with Cygwin (x64) and also I'm willing to test this, I can make some code changes locally, I would like to ask some advanced programmer for help and point what changes could improve CacheEx on Windows.

Change History (0)

Note: See TracTickets for help on using tickets.