Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature]: When synchronizing nodes, include synchronizing capabilities at the same time. #22

Open
n2mh opened this issue Dec 2, 2023 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@n2mh
Copy link

n2mh commented Dec 2, 2023

Contact Details

vendor@n2mh.net

Enhancement Type

Other

What is your idea or what can be improved?

If I get the gist of discussion in other issues, there may be some better synchronization protocol between nodes in the works. If that is so, please include the ability to synchronize capabilities between Meshchat nodes. In particular, what I have in mind has to do with a parameter to set the maximum number of messages in storage on a Meshchat node. For example, I'm thinking that if one node is configured for 100 messages max, and another node is set to 500 messages max, as soon as the 100 msg node purges messages, they would be immediately restored by the 500 msg node. This behavior should not be allowed. This leads me to think that some mechanism is needed to prevent this behavior. Perhaps something at node synchronism time?

Obviously, the sysop of a node should have the last word about how many messages should be stored on his node, not some other node who thinks that messages are missing on another node and "helpfully" restores them.

@n2mh n2mh added the enhancement New feature or request label Dec 2, 2023
@hickey
Copy link
Owner

hickey commented Dec 2, 2023

Interesting thought. I have a new config API being exposed on the next version that is there to provide the front-end code with configuration values (so they don't have to be hard coded in the Javascript code). This is how things like max messages would be exposed and could be read by meshchatsync also.

I believe (but I would have to confirm by looking at the code) that meshchatsync purges the additional messages as it is writing the message DB so the node would not have a larger message DB even for a moment. Thus trying to avoid any file system issues.

The main thing that is being looked at for the message sync is to transfer only messages that are new/changed. Currently the entire message DB on a node is transferred which a complete waste of bandwidth. But I think it will be a couple of releases before it is fully in place and functioning. Part of the trick will be keeping backwards compatibility for the sync process. So once nodes start getting to the release with the new sync protocol, this would become a bit moot, but might be useful in the mean time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants