Timed out waiting to get lock

247 views
Skip to first unread message

Yusuf Ziya TEKİN

unread,
Dec 6, 2015, 9:03:17 AM12/6/15
to vert.x
Hi everybody,

Every time i try to get lock it fails on my machine. Even if with different name. Sample code i am trying below:



Config clusterConf = new Config("chat-server-cluster");


                clusterConf.getNetworkConfig().getJoin().getMulticastConfig().setEnabled(false);


                clusterConf.getNetworkConfig().getJoin().getTcpIpConfig().setEnabled(true).addMember("127.0.0.1");




                HazelcastClusterManager manager = new HazelcastClusterManager(clusterConf);


                VertxOptions options = new VertxOptions();


                options.setBlockedThreadCheckInterval(1000 * 30);


                options.setClusterManager(manager);


                Vertx.clusteredVertx(options, new Handler<AsyncResult<Vertx>>() {




                        @Override


                        public void handle(AsyncResult<Vertx> event) {


                                if (event.succeeded()) {


                                        Vertx vertx = event.result();




                                        List<String> nodes = manager.getNodes();


                                        for (String name : nodes) {


                                                System.out.println(name);


                                        }




                                        manager.getLockWithTimeout("test", 10000, new Handler<AsyncResult<Lock>>() {




                                                @Override


                                                public void handle(AsyncResult<Lock> event) {




                                                        if (event.succeeded()) {




                                                                Lock lock = event.result();




                                                                vertx.setTimer(5000, res -> {


                                                                        lock.release();


                                                                });




                                                        } else {


                                                                logger.error(event.cause().getMessage(), event.cause());


                                                        }




                                                }


                                        });




                                        // deployServer(vertx);


                                }


                        }


                });


I think it is an hazelcast issue but what should be the reason ? I try with hazelcast config both tcp/ip or multicast enabled. I am using OSX Yosemite by the way. Any helps would be appreciated. Thanks

Yusuf Ziya TEKİN

unread,
Dec 6, 2015, 9:53:54 AM12/6/15
to vert.x
Ok it is my bad sorry. I had copied default-cluster.xml from the previous vertx version 2. So i checked the new default-cluster.xml from vertx 3 repo. There is an addition at the end


<!-- Used internally in Vert.x to implement async locks -->


  <semaphore name="__vertx.*">


    <initial-permits>1</initial-permits>


  </semaphore>


I changed the default-cluster.xml file with the new one and it is solved

Reply all
Reply to author
Forward
0 new messages