diff --git a/index.js b/index.js
index <HASH>..<HASH> 100644
--- a/index.js
+++ b/index.js
@@ -39,8 +39,11 @@ function droonga(application, params) {
   application.connectionPool = connectionPool;
 
   if (params.syncHostNames &&
-      typeof connectionPool.startSyncHostNamesFromCluster == 'function')
-    connectionPool.startSyncHostNamesFromCluster();
+      typeof connectionPool.startSyncHostNamesFromCluster == 'function') {
+    params.server.on('listening', function() {
+      connectionPool.startSyncHostNamesFromCluster();
+    });
+  }
 }
 
 exports.initialize = droonga;
Start to connect the backend only when the server is correctly started