orientechnologies / orientdb

OrientDB is the most versatile DBMS supporting Graph, Document, Reactive, Full-Text and Geospatial models in one Multi-Model product. OrientDB can run distributed (Multi-Master), supports SQL, ACID Transactions, Full-Text indexing and Reactive Queries.
https://orientdb.dev
Apache License 2.0
4.75k stars 871 forks source link

Not enough nodes online to execute the operation. Available nodes:[europe1], quorum:2 #10348

Open a-drop-of-tears opened 3 weeks ago

a-drop-of-tears commented 3 weeks ago

OrientDB Version: 3.2.29

Java Version: "21.0.5" 2024-10-15 LTS

OS: Linux c7-cpeb-20220509-1.novalocal 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

Expected behavior

I expect this to be the case:
This is the JSON file containing the default configuration for distributed databases. The first time a database run in distributed version this file is copied in the database's folder with name distributed-config.json. Every time the cluster shape changes the database specific file is changed. To restore distributed database settings, remove the file distributed-config.json from the database folder, and the default-distributed-db-config.json file will be used.

Actual behavior

But it's not:
Modify the node names of the Orientdb cluster and delete the default-didistributed-db-config.json file in the database corresponding to the databases. After restarting Orientdb, the newly generated default-didistributed-db-config.json file still contains the old node names, resulting in the inability to write data。 com.orientechnologies.orient.server.distributed.ODistributedException: Not enough nodes online to execute the operation. Available nodes:[europe1], quorum:2

And if the file is deleted without modifying a new node name, the file will not be regenerated And the role of the node cannot be modified again image

Actually, I only have one node, I just changed the name

tglman commented 3 weeks ago

Hi,

have you tried to remove the nodes with ha remove server <node_name> ?

a-drop-of-tears commented 3 weeks ago

The method you mentioned is indeed feasible, but why can't the new version delete the file and reset it? Moreover, if it is not the enterprise version, it is not possible to modify the role of the node through SQL. @tglman

tglman commented 1 week ago

Hi,

The agent.jar is now open source, so you can simple add it to the release, you can find the download links on the on the release pages of github.

editing the file inside the database folder should work, I will double check if there are issues with this cases.

a-drop-of-tears commented 1 week ago

Hi, How should I use it @tglman

tglman commented 22 hours ago

@a-drop-of-tears,

The agent.jar that you find in the release page can be add in the /plugins folder of the base distribution starting the server with this jar will display the "enterprise mode" and will enable commands like HA and also other UI features in the admin sections of studio.