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

AFS maintenance tools / utilities #12

Open
sylvlecl opened this issue Oct 30, 2018 · 3 comments
Open

AFS maintenance tools / utilities #12

sylvlecl opened this issue Oct 30, 2018 · 3 comments

Comments

@sylvlecl
Copy link
Contributor

A tool would be needed to check AppStorage data consistency, and to fix it in case of problems.

Such a problem is orphan nodes. In some circumstances, it may happen that some node has an invalid parent identifier (identifier of a node which has been deleted). At the moment, we don't have proper tools to detect and fix it.

That problem has happened in a real life situation where a service using the remote implementation of AFS has not been restarted while the database was cleaned up. That led to the service using an obsolete identifier for the root node (root id is kept on client side in the AppFileSystem class).

@geofjamg
Copy link
Member

geofjamg commented Dec 7, 2018

What do you mean by database cleanup?

@mathbagu mathbagu transferred this issue from powsybl/powsybl-core Jan 2, 2020
@sylvlecl
Copy link
Contributor Author

sylvlecl commented Oct 22, 2020

Answering 2 years later :) : the database had been plainly deleted. For sure this particular situation will not happen in a managed production environment, but other situations may occur

@sylvlecl
Copy link
Contributor Author

Another issue observed in production environment, on Cassandra AFS implementation :

  • when listing children of node "/parent", we get a [ "child1" ] list
  • when retrieving the node info for "child1", we get a "node not found"

So it seems that cassandra tables are not consistent anymore, without being able to identify what has caused this.

Note that diagnostic and repair tools will be specific to an AFS implementation, so we may need to think of something very generic in the API.

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

No branches or pull requests

2 participants