peerListswitch, I can connect from any machine. However, when I try to get both instances to sync up, it doesn't seem to do anything. Here are the commands I'm using:
bedrock -db /var/local/database.db -nodeName node0 -priority 100 -serverHost 172.17.0.3:8001 -nodeHost 172.17.0:9001 -peerList 192.168.1.155:8000
bedrock -db /var/local/database.db -nodeName node1 -priority 101 -serverHost 172.17.0.2:8000 -nodeHost 172.17.0.2:9000 -peerList 192.168.1.159:8001
/var/log/syslogto see if it's giving any clues as to what's going on?
Query: CREATE TABLE test (foo int, bar int);
502 Query failed
error: cannot modify database schema within CONCURRENT transaction
I'm having a hard time finding the sqlite branch referenced here (source):
But lesser known is that there is a branch of SQLite that has page locking, which enables for fantastic concurrent write performance.
Which one is it, and why is it so underrated? I don't see any obvious candidates on https://www.sqlite.org/src/brlist
If you somehow suffer a split-LAN event, how do you determine which is the official and which the split, and how can you remerge them?
The way we solve this is to configure every node to know every other node -- this way everyone knows how big the cluster is, and knows if it's able to talk with more than half of it. If a node can't talk with more than half of the cluster, then it will refuse to "stand up" to be the leader.
Would bedrock be suitable for synchronizing a large number of instances? say 100-200, where the DB is quite simple however (low traffic and amount of data)
I haven't tried that many, but I can't think of any reason why this wouldn't work. The one complication is, as mentioned above, the design requires that every node know every other node ahead of time -- new nodes currently can't be added or removed without restarting the cluster.
Is Bedrock different than RQLite in some important feature? The plugins like cache and job queue are valuable, for instance.
Honestly I don't know much about RQLite, sorry!
I am trying to compile Bedrock on Mac OSX, and I get the following error: libstuff/libstuff.h:44:59: fatal error: pcrecpp.h: No such file or directory
make: * No rule to make target
.build/main.d', needed by.build/main.o'. Stop.