You are here

Services not being deleted

13 posts / 0 new
Last post
KC5LIO
Services not being deleted

Running 3.18.9.0 on a NSM2 XM
--------------------------------------------
I set up a service and didn't like the name of it so I renamed it and saved the changes a few times.  On my local mesh status page everything looked fine and it showed the service with the last name I used.  I then went to a neighbor's mesh status page and discovered that every name I used was listed under my advertised services.  I then completely deleted all services and saved the changes but when I refreshed and examined the neighbor's (tun) mesh status page they were still displayed.  Apparently what was showing up correctly on my local mesh status page was fine but what was being sent out over the mesh was not being deleted internally.  After several attempts to reset the services page and clear the internal memory by rebooting the node I finally gave up, pressed and held the reset button to bring the node back to ground zero.  I rebuilt it all from the ground up, this time carefully entering my services.  Now my local mesh status and my neighbor's mesh status agree and only list my active services.

Now I am new to AREDN so I very well could be overlooking something but this appears to be a bug.  It appears that when you delete a service it is not being deleted from the internal memory that is sent out over the mesh.  The local node will look fine but remote nodes will still see the deleted services.

If there is a way to clear memory of deleted services without a total reset I would be interested in knowing how to do it.

AB4YY
The solution is actually real

The solution is actually real easy...  Just cut power to the node you were setting up the services on then in about 10 minutes, re-apply power and the old removed services will no longer show up on other nodes.  I don't know of any exact power-off time but 10 minutes had worked for me.

73 - Mike ab4yy

KC5LIO
Thanks for that information. 

Thanks for that information.  So it is apparently a bug that needs to be fixed.

K5DLQ
K5DLQ's picture
not technically a bug.  that

not technically a bug.  that is how OLSR (the routing protocol) works.

KC5LIO
Hmmm, could you explain that

Hmmm, could you explain that a little more?  It seems to me that when the only way to clear a deleted service is kill the power for 10 minutes or take the device to a ground zero reset, it is a bug.  Why isn't that deleted service removed from internal memory so that it isn't advertised to other nodes?

AJ6GZ
Cached

I believe it's actually cached in the opposite node.  Same goes for if you rename your node you will see it listed as new.node.name/old.node.name for about 24 hours.
 

KC5LIO
When it first occurred I

When it first occurred I thought the same thing so I waited over 24 hours.  When I went back to look at the mesh from my neighbor's node I discovered the list of deleted services was still there.  It became obvious that my node was still advertising those deleted services on the mesh even though they did not appear on my local mesh status page.

Once I did the total reset and reprogrammed my node, the list of deleted services on the neighbor node immediately vanished.  The neighbor node was displaying what it was being sent.

K6AH
K6AH's picture
Write a bug report...

Write a bug report and we'll have a look at it.  https://github.com/aredn/aredn_ar71xx/issues

Andre
 

KC5LIO
Done.

Done.
---
Since I am new to all this... Do all bugs require a formal submission?  I thought the forum was the place to make the developers aware.

K6AH
K6AH's picture
Developers generally don't

Developers generally don't write bug reports... the reporting party does.  That way we get the description directly from the person who witnessed the behavior and nothing is lost in the translation.  It's easy enough to write a concise report... as you have done.
 

K5DLQ
K5DLQ's picture
from my recollection, OLSR

from my recollection, OLSR uses a timeout to clear the cache on all nodes of a service that is no longer advertising itself.  As long as a node is alive on the mesh, the caches will not clear.  If the node is off the mesh for a period of about 10 mins (ie. not advertising itself to all other nodes), then, other nodes realize that the node (and all of it's services) has gone offline and removes all entries for that node (including services).

Thank you for formally entering an issue on this on github, as, that does start the process of classifying/discussing the topic by the developers.

 

KC5LIO
You are welcome and thanks

You are welcome and thanks for the reply.  I understand what you are saying, even so as an old programmer I would think that when a remote node receives a status update its own memory should be immediately updated.  I can see where you might want a cache because of nodes going off-line momentarily but when you receive a live, active, update then the old information should be replaced with the new updated information and the cache timer restarted.

K5DLQ
K5DLQ's picture
agreed, but, I don't think

agreed, but, I don't think the OLSR project ever put in functionality to "instantly" delete/propagate a cache purge function.  It's something that we can discuss and explore.

Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer