OK
so we are running a 4 node cluster. I re-installed orient db 1.7.7 as
requested Luca. Then ran up the cluster - no probs.
The cluster is 4 AWS ubuntu nodes. I created a test database on node 04 and
this distributed to the other 3 nodes no problems, *but *then I turned off
node 04. Added our 3GB database to the database folder (is this the correct
way to add a database?) and restarted the node. All startup was fine until
it tried to read the new db:
2014-08-12 11:22:40:659 WARN [node1407840419796] database
'GratefulDeadConcerts' is online [OHazelcastPlugin]
2014-08-12 11:22:40:660 WARN [node1407840419796] dropping local database
'GeoLocation' in
'/opt/orientdb/orientdb-community-1.7.7/databases/GeoLocation' and get a
fresh copy from a remote node... [OHazelcastPlugin]
2014-08-12 11:22:43:209 INFO [node1407840419796] loaded database
configuration from active cluster [OHazelcastPlugin]
2014-08-12 11:22:43:216 INFO updated distributed configuration for
database: GeoLocation:
----------
{^M
"version":1,^M
"autoDeploy":true,^M
"hotAlignment":false,^M
"readQuorum":1,^M
"writeQuorum":2,^M
"failureAvailableNodesLessQuorum":false,^M
"readYourWrites":true,"clusters":{^M
"internal":null,^M
"index":null,^M
"*":{^M
"servers":["<NEW_NODE>","node1407840417531"]^M
}^M
}^M
}
---------- [OHazelcastPlugin]
2014-08-12 11:22:43:230 INFO [node1407840419796] adding node
'node1407840419796' in partition: db=GeoLocation [*]
[OHazelcastDistributedDatabase]
2014-08-12 11:22:43:235 INFO updated distributed configuration for
database: GeoLocation:
----------
{^M
"version":2,^M
"autoDeploy":true,^M
"hotAlignment":false,^M
"readQuorum":1,^M
"writeQuorum":2,^M
"failureAvailableNodesLessQuorum":false,^M
"readYourWrites":true,"clusters":{^M
"internal":null,^M
"index":null,^M
"*":{^M
"servers":["<NEW_NODE>","node1407840417531","node1407840419796"]^M
}^M
}^M
}
---------- [OHazelcastPlugin]
2014-08-12 11:22:43:245 INFO Saving distributed configuration file for
database 'GeoLocation' to:
/opt/orientdb/orientdb-community-1.7.7/databases/GeoLocation/distributed-config.json
[OHazelcastPlugin]
2014-08-12 11:22:43:249 INFO [node1407840419796] received updated status
node1407840419796.GeoLocation=OFFLINE [OHazelcastPlugin]
2014-08-12 11:22:43:271 INFO [node1407840419796] found no previous messages
in queue orientdb.node.node1407840419796.GeoLocation.request
[OHazelcastDistributedMessageService]
2014-08-12 11:22:43:282 WARN [node1407840419796]->[[node1407840417531]]
requesting deploy of database 'GeoLocation' on local server...
[OHazelcastPlugin]
2014-08-12 11:22:43:320 WARN [node1407840419796]->[[node1407840417531]]
deploy returned:
{node1407840417531=com.orientechnologies.orient.server.distributed.ODistributedException:
Database instance is null}
[OHazelcastPlugin][node1407840419796]<-[node1407840417531] error on
installing database GeoLocation in
/opt/orientdb/orientdb-community-1.7.7/databases/GeoLocation
Database instance is null
->
com.orientechnologies.orient.server.distributed.task.ODeployDatabaseTask.execute(ODeployDatabaseTask.java:62)
->
com.orientechnologies.orient.server.hazelcast.OHazelcastPlugin.executeOnLocalNode(OHazelcastPlugin.java:683)
->
com.orientechnologies.orient.server.hazelcast.OHazelcastDistributedDatabase.onMessage(OHazelcastDistributedDatabase.java:521)
->
com.orientechnologies.orient.server.hazelcast.OHazelcastDistributedDatabase$1.run(OHazelcastDistributedDatabase.java:252)
-> java.lang.Thread.run(Thread.java:745)Exception in thread "main"
com.orientechnologies.orient.server.distributed.ODistributedException: No
response received from remote nodes for auto-deploy of database
at
com.orientechnologies.orient.server.hazelcast.OHazelcastPlugin.installDatabase(OHazelcastPlugin.java:844)
at
com.orientechnologies.orient.server.hazelcast.OHazelcastPlugin.installNewDatabases(OHazelcastPlugin.java:898)
at
com.orientechnologies.orient.server.hazelcast.OHazelcastPlugin.startup(OHazelcastPlugin.java:193)
at
com.orientechnologies.orient.server.OServer.registerPlugins(OServer.java:720)
at
com.orientechnologies.orient.server.OServer.activate(OServer.java:241)
at
com.orientechnologies.orient.server.OServerMain.main(OServerMain.java:32)
2014-08-12 11:22:57:171 INFO Node is not online yet (status=STARTING),
blocking the command until it's online 1/20 [ONetworkProtocolHttpDb]
2014-08-12 11:22:57:472 INFO Node is not online yet (status=STARTING),
blocking the command until it's online 2/20 [ONetworkProtocolHttpDb]
2014-08-12 11:22:57:772 INFO Node is not online yet (status=STARTING),
blocking the command until it's online 3/20 [ONetworkProtocolHttpDb]
2014-08-12 11:22:58:073 INFO Node is not online yet (status=STARTING),
blocking the command until it's online 4/20 [ONetworkProtocolHttpDb]
2014-08-12 11:22:58:374 INFO Node is not online yet (status=STARTING),
blocking the command until it's online 5/20 [ONetworkProtocolHttpDb]
And then after that node 04 stays out of action.
*Please let me know what to do to load in a 3gb db to a cluster group and
get it started?*
*thanks*
On Monday, August 11, 2014 5:35:22 PM UTC+1, Shaun Barker wrote:
>
> Hi
>
> We are running orientdb-community-1.7.5. We have an initial db (generated
> from some data extraction in a dev sandbox) that needs to be loaded into
> our orientdb node cluster of 4 nodes set up in distributed set up. We are
> running out of box in distributed mode with the only change being that the
> nodes have tweaked hazelcast to turn off broadcast and discover only
> specified nodes by ip address.
>
> Due to IP connectivity issues we established the easiest way was to add
> the initial 'seed-database' to one node from the cluster (stop server, copy
> to database folder, start server) and let it re-distribute the database to
> the other nodes.
>
> The seed database is 3Gb in size.
>
> What actually happens is the node that has the data does not start at all
> - it gets stuck in a 'STARTING' state. The other nodes in the cluster (when
> they are all re-started) also do not start.
>
> In order to investigate I tried out some other angles. I established that
> if one node was taken out of the cluster, and re-started in non distributed
> mode it would eventually start and would re-index the database resulting in
> about an hours worth of wait. If this node was then re-introduced to the
> cluster the cluster fails again. If I repeated the steps on each node (take
> out of cluster, run standalone, copy db in, restart) then each node will
> re-index the data. However upon bringing all nodes back to the cluster each
> with the exact same copy of the database indexed then the cluster will not
> run properly again. If I make no other changes that to remove the db
> sufolder then all works again.
>
> So my question is this: what is the correct and supported way to 'seed a
> database' into a cluster. Are there any size limitations? Indeed is there
> some config tweak needed?
>
> thanks
>
> Shaun
>
>
>
>
>
>
--
---
You received this message because you are subscribed to the Google Groups
"OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.