diff --git a/dap_chain_node_cli_cmd.c b/dap_chain_node_cli_cmd.c
index 30650321021ef2d4378671b4c16c99af60d5acec..97ae4eba1a0c6cd241639de22b76f880851cfc87 100644
--- a/dap_chain_node_cli_cmd.c
+++ b/dap_chain_node_cli_cmd.c
@@ -991,7 +991,7 @@ int com_node(int a_argc, char ** a_argv, char **a_str_reply)
                 return -1;
             }
             // wait connected
-            int timeout_ms = 7000; //5 sec = 5000 ms
+            int timeout_ms = 700000; //5 sec = 5000 ms
             res = dap_chain_node_client_wait(l_node_client, NODE_CLIENT_STATE_CONNECTED, timeout_ms);
             // select new node addr
             if(l_is_auto && res){
@@ -1027,7 +1027,7 @@ int com_node(int a_argc, char ** a_argv, char **a_str_reply)
             dap_chain_node_cli_set_reply_text(a_str_reply, "no response from remote node(s)");
             log_it(L_WARNING, "No response from remote node(s): err code %d", res);
             // clean client struct
-            //dap_chain_node_client_close(l_node_client);
+            dap_chain_node_client_close(l_node_client);
             //DAP_DELETE(l_remote_node_info);
             return -1;
         }
@@ -1131,7 +1131,7 @@ int com_node(int a_argc, char ** a_argv, char **a_str_reply)
         }
         dap_stream_ch_set_ready_to_write(l_ch_chain, true);
         // wait for finishing of request
-        int timeout_ms = 1200000; // 20 min = 1200 sec = 1 200 000 ms
+        int timeout_ms = 420000; // 7 min = 420 sec = 420 000 ms
         // TODO add progress info to console
         res = dap_chain_node_client_wait(l_node_client, NODE_CLIENT_STATE_SYNCED, timeout_ms);
         if(res < 0) {
@@ -1173,9 +1173,9 @@ int com_node(int a_argc, char ** a_argv, char **a_str_reply)
         }
         log_it(L_INFO, "Chains and gdb are synced");
         DAP_DELETE(l_remote_node_info);
-        dap_client_disconnect(l_node_client->client);
-        l_node_client->client = NULL;
-        //dap_chain_node_client_close(l_node_client);
+        //dap_client_disconnect(l_node_client->client);
+        //l_node_client->client = NULL;
+        dap_chain_node_client_close(l_node_client);
         dap_chain_node_cli_set_reply_text(a_str_reply, "Node sync completed: Chains and gdb are synced");
         return 0;
 
diff --git a/dap_chain_node_client.c b/dap_chain_node_client.c
index c9fbb76d80675dfef1c5f2cedd2c83e564b3983a..a929a538aac0df0a4b7bb6065312a5d5485e90c3 100644
--- a/dap_chain_node_client.c
+++ b/dap_chain_node_client.c
@@ -487,13 +487,13 @@ void dap_chain_node_client_close(dap_chain_node_client_t *a_client)
 {
     if(a_client) {
 
-        pthread_mutex_lock(&a_client->wait_mutex);
-        a_client->client->_inheritor = NULL; // because client->_inheritor == a_client
-        pthread_mutex_unlock(&a_client->wait_mutex);
+        //pthread_mutex_lock(&a_client->wait_mutex);
+        //a_client->client->_inheritor = NULL; // because client->_inheritor == a_client
+        //pthread_mutex_unlock(&a_client->wait_mutex);
 
         // clean client
         dap_client_delete(a_client->client);
-        a_client->client = NULL;
+        //a_client->client = NULL;
 
 #ifndef _WIN32
         pthread_cond_destroy(&a_client->wait_cond);