I have a small flow with two HTTP request nodes and a few others. If I double click to edit the one and then click outside of the edit window, then that http request node somehow changes into a copy of the 2nd http request node. If I click cancel instead, then the 1st http request node stays the same. See the screen captures.
What version of NR and Node.js?
What version of the dashboard (use palette manager to find out)
What platform are you running on?
Can you export your flow and provide it.
I could not reproduce it on a simple test on my machine.
Can you reproduce this problem only with http-request nodes? To me this seems like a more general bug in the flow editor. I would 'expect' closing the config screen by clicking next to it, should have the same behaviour as explicit clicking the 'cancel' button (i.e. both actions arriving in the oneditcancel)?
And I'm not sure why you mention 'memory leak' in the title. Memory leaking means that some memory is not freed correctly (after using it), so it cannot be used anymore for other purposes. But that isn't the case here: instead of restoring node A to its original state (after cancelling the config screen), it seems that another node B gets the original state from node A somehow …
Could you perhaps add some more steps that people can use to reproduce the problem? E.g. did you first edit that other http-request node perhaps, before you opened the config screen of the second http-request node?
I'd also ask what browser and OS is the node-red editor (client side) running on as this is possibility a client side issue.
Additionally, I'd look in the browser dev tools (F12) specifically the console log for any errors. Post screenshots.
Thanks guys for your questions, I'll try to answer them when I'm back from the weekend holidays.
Node Red 0.20.7 is running on Ubuntu 18.04.2 LTS (GNU/Linux 4.15.17-3-pve x86_64) in a Proxmox container. Node v8.10.0.
I am editing in Chrome version 74.0.3729.169 (Official Build) (64-bit) on Windows 7 64bit. I tried to look at the Console tab in DevTools (F12) but nothing shows there when the problem happens.
Internet Explorer v 11 on the same computer does not exhibit this problem.
I exported the flow, deleted it, then created a new flow and imported the json and the problem is still there. I also closed my chrome tab and restarted chrome with no success. After rebooting my computer, the problem seems to have gone away. Although, when I double click to edit a node and click outside of the edit window, the node does not change but Node Red still shows the blue dot indicating that changes need to be deployed. If I instead click cancel on the edit window, no blue dot.
You are right, calling it a memory leak was not accurate. Buffer overrun is what I was thinking.
Something that might have caused this issue, I did copy-paste node A -> node B before editing node B and now it was node A that was being overwritten with node B's config.
You are right, I see that too. Clicking outside the edit window after changing something in the node appears to trigger Done. Whether that is what should happen in that situation I don't know.