mxtommy / Kip

SignalK Instrument package
MIT License
72 stars 39 forks source link

KIP crashes from time to time #311

Open Techstyleuk opened 4 months ago

Techstyleuk commented 4 months ago

I have been running KIP on a new RPi 5 running Openplotter 4 Starting (12-29-2023), up to date. Signal K is version 2.5.0, Kip is 2.7. It is running in Chromium, and connected to the Signal K demo server.

I am running it 24/7 and each time I come back to it, perhaps every 6 hrs, Kip looks like this:

image
godind commented 4 months ago

Hi,

Thanks for the report. Could you share the browser console log? That might help troubleshooting.

Also can you share a screenshot of the scream you lean it on. It could be a memory leak issue with a specific widget.

I'll see if I can find a problem.

Techstyleuk commented 4 months ago

I think this is the console log entry associated:

image

I have not changed anything yet, so KIP is as per the demo:

image

this is page zero and was the one I was on

godind commented 4 months ago

This warning image is just a meta key for Apple devices so you can save KIP as an App. It's needed even if Google complains about it!

I suggest leaving the console log open so you'll see what's logged if the browser runs out of memory. I'll test on my end and see if I can reproduce the problem but it could be related to your setup.

No one has reported a similar issue, yet!

godind commented 4 months ago

Next Time it crashes can you check in the Signalk logs if you see any errors please. I ran for several hours with memory profiling but nothing unusual so far.

godind commented 4 months ago

Can you also update Chromium and share the version please?

Techstyleuk commented 4 months ago

David,

Sorry for the lack of feedback, I am currently traveling in Italy and will be back to home on Sunday

I will update you then

Jason Sent from my iPhone

On Feb 29, 2024, at 12:09 AM, David G @.***> wrote:

 ** WARNING! MESSAGE CAME FROM OUTSIDE HUSCO **

Can you also update Chromium and share the version please?

— Reply to this email directly, view it on GitHubhttps://github.com/mxtommy/Kip/issues/311#issuecomment-1970070664, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AS4DOE6SCFNJS6IUYQK37KDYV62LPAVCNFSM6AAAAABDZEGEX6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNZQGA3TANRWGQ. You are receiving this because you authored the thread.Message ID: @.***>

This e-mail and any attachments are confidential and protected by law, and any unauthorized use is strictly prohibited.

godind commented 3 months ago

Is the issue still present? If so leave KIP running with the console log open and share the latest errors.

Thanks!

Techstyleuk commented 3 months ago

Sorry for my lack of feedback, I had a few other issues so last weekend I did a new install and I have been watching it, but not closely. I did just see it crash but did not have the console open, I am now continuing to run with the console open. I am also monitoring the memory usage, and it looks a little strange - this is all after the crash: image I was not doing anything that would cause the system to just increase memory, or to drop like that.

Techstyleuk commented 3 months ago

I did reload KIP browser window when my memory was around 90%, as it wasn't responding and the Memory and CPU usage dropped dramatically: image

godind commented 3 months ago

Looks like there is a potential memory leak. I've ran KIP over night and not seen any leaks, yet!

Can you share the KIP versions of your last upgrade.

Also upgrade Chromium to the latest version.

In Chromium when it crashes, do you have other browser tabs or browser window open?

Techstyleuk commented 3 months ago

KIP is at 2.9.0, I upgraded yesterday afternoon.

Today I came home from work and it looks like this: image Chromium has crashed but is still on the taskbar, and there is still a black window there, but no tabs or anything. I cannot get the log without restarting it. when restarted it comes up normally. I am running 4 tabs - KIP, Gmail, Signalk, Pandora Music. judging by the graph below, I'd say it crashed at about 8:00am this morning: image Chromium version is: Version 120.0.6099.102 (Official Build) Built on Debian , running on Debian 12 (64-bit).

I am monitor the memory curves for a couple of hours then kill KIP and see if the curve flattens out

godind commented 3 months ago

This will be difficult to find but with some patience and collaboration I'll fix it.

Can you upload your config file here so I can reproduce a similar layout? You will find the file named 9.json under ~/.signalk/applicationData/users/"signed in user"/kip

Techstyleuk commented 3 months ago

my KIP layout is just the demo and using the demo server for data. I am running Openplotter 4, so Bookworm. The only Kip directory was at: ~/.signalk/node_modules/@mxtommy/kip and the only json file is packages.json

godind commented 3 months ago

Ok. So you are using local browser storage and not signed in to the server.

Running some tests on my end.

Techstyleuk commented 3 months ago

I was signed into the server but am I signed into KIP? not sure: image I killed the KIP window just after 8pm and the memory no longer escalates, so it looks like it is definitely KIP.
image

Techstyleuk commented 3 months ago

I noticed that when I went to KIP's Setting screen, the CPU usage and memory escalation stops: image I have since gone back to the earlier screen (page0) and the CPU and memory increase. I navigated to page 1 (a big dial with COGS) and the CPU drops off and the Memory flattens

godind commented 3 months ago

Nice find! So could be related to a specific widget.

Charts take up cpu and memory but should stay flat.

Techstyleuk commented 3 months ago

I just got home and it had crashed. I had already deleted the Wind display and the historic True wind graph. After waiting to see if the memory continued to rise, I deleted the "Apparent wind speed" widget (ref: the first picture on this thread). after this was deleted, the memory stayed low, then I added back in the steering widget, and the memory continued to be flat: image Therefore it appears to be associated with the Apparent wind speed widget

godind commented 3 months ago

Great find! I'll try it myself. I've tested a few core services (everything disabled, no Datasets and only one Blank widget) that worst does not appear to leak.

I'll try with only the linear gauge widget.

godind commented 3 months ago

Sorry, reading again I'm not sure about one point:

In the picture, per yellow line sections, I'm not sure what widget was present or removed? You talk about Wind Steering, Data Chart (historical data) and linear gauge (Apparent Wind), right?

Techstyleuk commented 3 months ago

I started removing stuff and the Historic data chart was removed first, then the Wind Steering dial and neither stopped the condition. I then removed the Linear Gauge (Apparent wind) and this flattened the memory usage: image after that, I started adding gauges back to make sure the issue didn't come back.

godind commented 3 months ago

Ok. So you did not add back Apparent Wind Speed widget and you did not confirm the leak comes back when it is present ?

I will test.

Techstyleuk commented 3 months ago

I ran out of time last night, I will try that tonight.

Techstyleuk commented 3 months ago

Just got home and I am not sure it is fixed. My Kip screen is frozen, and I had to reload it. The graphs looked like this: image so it looks like it crashed, perhaps, at 8am.

godind commented 3 months ago

Are you running in KIP fulll screen mode using the KIP fullscreen menu option?

Techstyleuk commented 3 months ago

No, I run KIP in a browser window, occupying the right half of the screen, with OCPN on the left half of the screen

godind commented 3 months ago

Just checking! I made a version with a few clean up for you to test. I am still not able to put a finger right on the problem. But I still have a few leads to investigate.

Can you install a beta version on your system to test please? To install using a command shell: cd ~/.signalk npm install @mxtommy/kip@beta

Once completed, hit the Restart link in the Signal K Admin site. Once restarted, in the Signal K Admin site's Appstore / Installed menu, you should see KIP 2.9.1-beta1 listed.

Run KIP and see if it's any better.

Thank you!

Techstyleuk commented 3 months ago

it is running the Beta version as of now, I can run it overnight and then check it. is there a quick way to reload to the default set of widgets if we want to use that?

godind commented 3 months ago

Yes. Go in Configuration / Settings, then Storage tab. At the bottom you will see a button labeled Load Demo

Techstyleuk commented 3 months ago

OK, it is reset to demo and this is how the screen is set up: image

Techstyleuk commented 3 months ago

limited time in the morning, but after 8 hrs it is still running, but there still appears to be a memory leak: image

godind commented 3 months ago

Same here!

Techstyleuk commented 3 months ago

OK, at 6pm, this is what it looked like and KIP is frozen: image I will delete the linear gauge widget and check again in a few hours

godind commented 3 months ago

I guess it will crash again. On your next test, can you disable notifications and let it run? Go in Configuration / Settings - General and toggle Disable All Notifications option. You should see the notification menu button change icon with a disable sign.

Reload the page to clear memory and let run overnight.

godind commented 3 months ago

It's been stable on my end for a while.

Techstyleuk commented 3 months ago

OK, so I reset to default layout (as last night) but disabled all notifications. I will let you know how it goes - thanks for all the help and your work on KIP!!

Techstyleuk commented 3 months ago

this was this morning. KIP is still working and hasn't frozen yet: image

godind commented 3 months ago

Ok. I'll look deeper into notifications.

Techstyleuk commented 3 months ago

with Notifications turned off, KIP Crashed around 8am yesterday. image I'm deleting the linear gauge and then running it

godind commented 3 months ago

I've been at it all week. Not easy to find as it takes many hours before crashing.

I'll try with only one blank widget and everything else's turned off.

godind commented 3 months ago

I've ran KIP using Firefox for 48h with no problem and memory stays flat at 50%. The problem is Firefox have a bug with the radial gauge :(

I could not reproduce the problem with Safari either. That makes me think it might be related to how Chromium handles memory... I'll dig this some more...

Techstyleuk commented 3 months ago

Similar results in Firefox. after running for 24hrs, memory is 45% and flat with all widgets in the default layout running

Aitonos commented 3 months ago

I have been using KIP for long time and I have always found this issue.

In Openplotter 3, it will remain solid as a rock if the browser is left minimized (but data is still flowing as the MIN/MAX keeps being updated). But if the browser or the app (Both versions) are being maximized / showing the window, then it will collapse after some time ( hard to say or measure not a clear pattern) independently of whatever you do ( I have tried it with even 1 numerical widget).

I tried this with clean installation of OP 3 , and same issue.

I have tried with Mobile, tablet, Firefox, Opera, Chromium, etc and it always happens.

I learnt to live with this issue as it's a minor payoff compared for the good thing that Kip is!

Techstyleuk commented 3 months ago

@Aitonos, interesting, I have never seen KIP crash before in the 2 years I have been running Openplotter 2 and I always run the screen like this: image Never minimized, always half and half.
with Chromium, I was seeing crashes every 8 hours. I have been running for 48 hours (split screen) and the data for the last 24 is below: image there is some drift upwards of Memory, but much slower

godind commented 3 months ago

Well that might be a good clue! Could be due to some threads going to sleep when browser is minimized, screen saver or power management comes on... worth looking into.

Techstyleuk commented 3 months ago

it finally crashed this evening after over 3 days of running on Firefox: image

Techstyleuk commented 3 months ago

I tried again with Chromium and it had failed in less than 24 hours and the Memory profile is clearly different, with Firefox looking very step like and Chromium building constantly: image

godind commented 3 months ago

@Techstyleuk You don't have the radial gauge spinning issue with Firefox?

Techstyleuk commented 3 months ago

@godind if you are referring to https://github.com/mxtommy/Kip/issues/222 then no, I have never seen that in Chromium or Firefox

godind commented 3 months ago

@Techstyleuk strange. I have it on my Debian 10 VM running Firefox