From 267ef4f5d1f7cd69c32c8cd425b5ff9dae4d1f6f Mon Sep 17 00:00:00 2001 From: "oljas.jarasbaev" <oljas.jarasbaev@demlabs.net> Date: Tue, 28 Jan 2025 16:04:53 +0700 Subject: [PATCH 1/8] [*] port-13903 --- dap-sdk | 2 +- modules/net-srv/dap_chain_net_srv_order.c | 2 +- modules/net/dap_chain_net.c | 2 +- modules/net/dap_chain_node.c | 16 ++++++++-------- modules/node-cli/dap_chain_node_cli_cmd.c | 6 ++---- 5 files changed, 13 insertions(+), 15 deletions(-) diff --git a/dap-sdk b/dap-sdk index b6ead51e41..6bf73ebf9f 160000 --- a/dap-sdk +++ b/dap-sdk @@ -1 +1 @@ -Subproject commit b6ead51e413671d2416f98796b8ac7d397e2e0ed +Subproject commit 6bf73ebf9f7909fc4410001c3a3c2519faf073d0 diff --git a/modules/net-srv/dap_chain_net_srv_order.c b/modules/net-srv/dap_chain_net_srv_order.c index d49efaf214..dc19810fe8 100644 --- a/modules/net-srv/dap_chain_net_srv_order.c +++ b/modules/net-srv/dap_chain_net_srv_order.c @@ -389,7 +389,7 @@ char *dap_chain_net_srv_order_save(dap_chain_net_t *a_net, dap_chain_net_srv_ord : dap_chain_net_srv_order_get_gdb_group(a_net); if (!l_gdb_group_str) return NULL; - int l_rc = dap_global_db_set_sync(l_gdb_group_str, l_order_hash_str, a_order, l_order_size, false); + int l_rc = dap_global_db_set_sync(l_gdb_group_str, l_order_hash_str, a_order, l_order_size, true); DAP_DELETE(l_gdb_group_str); if (l_rc == DAP_GLOBAL_DB_RC_SUCCESS) return l_order_hash_str; diff --git a/modules/net/dap_chain_net.c b/modules/net/dap_chain_net.c index 2d1ea5caf4..0f8e0d6560 100644 --- a/modules/net/dap_chain_net.c +++ b/modules/net/dap_chain_net.c @@ -2196,7 +2196,7 @@ static void *s_net_load(void *a_arg) l_net->pub.name, dap_guuid_compose(l_net->pub.id.uint64, 0), l_net->pub.gdb_nodes, 7200, true, DAP_GDB_MEMBER_ROLE_GUEST, - DAP_CLUSTER_TYPE_EMBEDDED); + DAP_CLUSTER_TYPE_EMBEDDED); // TODO 7200 if (!l_net_pvt->nodes_cluster) { log_it(L_ERROR, "Can't initialize nodes cluster for network %s", l_net->pub.name); l_err_code = -3; diff --git a/modules/net/dap_chain_node.c b/modules/net/dap_chain_node.c index b5f7ad6d6c..b9886e0980 100644 --- a/modules/net/dap_chain_node.c +++ b/modules/net/dap_chain_node.c @@ -43,6 +43,7 @@ #include "dap_chain_net.h" #include "dap_global_db.h" #include "dap_chain_node.h" +#include "dap_chain_node_client.h" #include "dap_chain_cs_esbocs.h" // TODO set RPC callbacks for exclude consensus specific dependency #include "dap_chain_cs_blocks.h" // TODO set RPC callbacks for exclude storage type specific dependency #include "dap_chain_ledger.h" @@ -51,6 +52,7 @@ #include "dap_chain_mempool.h" #include "dap_chain_datum_service_state.h" #include "dap_chain_node_client.h" +#include "dap_chain_net_balancer.h" #define LOG_TAG "dap_chain_node" @@ -248,20 +250,18 @@ void dap_chain_node_list_cluster_del_callback(dap_store_obj_t *a_obj, void *a_ar return; } int l_ret = -1; - for (size_t i = 0; i < 3 || l_ret == 0; i++) { + for (size_t i = 0; i < 3 && l_ret != 0; i++) { dap_chain_node_client_t *l_client = dap_chain_node_client_connect_default_channels(l_net, l_node_info); if (l_client) l_ret = dap_chain_node_client_wait(l_client, NODE_CLIENT_STATE_ESTABLISHED, 30000); - dap_chain_node_client_close_unsafe(l_client); - if (!l_ret) - break; + // dap_chain_node_client_close_unsafe(l_client); del in s_go_stage_on_client_worker_unsafe } if (l_ret == 0) { - a_obj->timestamp = dap_time_now(); - dap_global_db_driver_apply(a_obj, 1); + a_obj->timestamp = dap_nanotime_now(); + dap_global_db_set_raw_sync(a_obj, 1); } else { - dap_global_db_driver_delete(a_obj, 1); log_it(L_DEBUG, "Can't do handshake with %s [ %s : %u ] delete from node list", a_obj->key, l_node_info->ext_host, l_node_info->ext_port); + dap_global_db_driver_delete(a_obj, 1); } dap_strfreev(l_group_strings); } @@ -282,7 +282,7 @@ int dap_chain_node_list_clean_init() { int dap_chain_node_init() { if (dap_proc_thread_timer_add(NULL, s_update_node_states_info, NULL, s_timer_update_states_info)) { - log_it(L_ERROR, "Can't activate timer on node states update"); + // log_it(L_ERROR, "Can't activate timer on node states update"); return -1; } return 0; diff --git a/modules/node-cli/dap_chain_node_cli_cmd.c b/modules/node-cli/dap_chain_node_cli_cmd.c index 798deef9b8..71ec3da617 100644 --- a/modules/node-cli/dap_chain_node_cli_cmd.c +++ b/modules/node-cli/dap_chain_node_cli_cmd.c @@ -618,7 +618,6 @@ int com_global_db(int a_argc, char ** a_argv, void **a_str_reply) if (l_ts) { char l_ts_str[80] = { '\0' }; dap_nanotime_to_str_rfc822(l_ts_str, sizeof(l_ts_str), l_ts); - char *l_value_hexdump = dap_dump_hex(l_value_out, l_out_len); if (l_value_hexdump) { char *l_value_hexdump_new = dap_strdup_printf("\n%s", l_value_hexdump); json_object_object_add(json_obj_read, "group", json_object_new_string(l_group_str)); @@ -627,7 +626,6 @@ int com_global_db(int a_argc, char ** a_argv, void **a_str_reply) json_object_object_add(json_obj_read, "value len", json_object_new_uint64(l_out_len)); json_object_object_add(json_obj_read, "value hex", json_object_new_string(l_value_hexdump_new)); DAP_DELETE(l_value_hexdump_new); - DAP_DELETE(l_value_hexdump); } else { dap_json_rpc_error_add(*a_json_arr_reply, DAP_CHAIN_NODE_CLI_COM_GLOBAL_DB_TIME_NO_VALUE, "\n\"%s : %s\"\nTime: %s\nNo value\n", @@ -699,7 +697,7 @@ int com_global_db(int a_argc, char ** a_argv, void **a_str_reply) return DAP_CHAIN_NODE_CLI_COM_GLOBAL_DB_JSON_OK; } - if (!dap_global_db_del(l_group_str, l_key_str, NULL, NULL)) { + if (!dap_global_db_del_sync(l_group_str, l_key_str)) { json_object* json_obj_del = json_object_new_object(); json_object_object_add(json_obj_del, "Record key", json_object_new_string(l_key_str)); json_object_object_add(json_obj_del, "Group name", json_object_new_string(l_group_str)); @@ -1233,7 +1231,7 @@ int com_node(int a_argc, char ** a_argv, void **a_str_reply) if (res) { dap_cli_server_cmd_set_reply_text(a_str_reply, "No response from node"); // clean client struct - dap_chain_node_client_close_unsafe(l_client); + // dap_chain_node_client_close_unsafe(l_client); del in s_go_stage_on_client_worker_unsafe DAP_DELETE(node_info); return -8; } -- GitLab From dbd6735e69c8b1df4106276c6b80bbd11cf5adfa Mon Sep 17 00:00:00 2001 From: Olzhas <oljas.jarasbaev@demlabs.net> Date: Mon, 10 Feb 2025 12:33:37 +0700 Subject: [PATCH 2/8] [*] port-13903 --- dap-sdk | 2 +- modules/net/dap_chain_node.c | 8 +++++--- modules/node-cli/dap_chain_node_cli_cmd.c | 4 ++-- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/dap-sdk b/dap-sdk index 6bf73ebf9f..4cc7005aea 160000 --- a/dap-sdk +++ b/dap-sdk @@ -1 +1 @@ -Subproject commit 6bf73ebf9f7909fc4410001c3a3c2519faf073d0 +Subproject commit 4cc7005aea35f13553f68adb26e31d144bcd3ca4 diff --git a/modules/net/dap_chain_node.c b/modules/net/dap_chain_node.c index b9886e0980..4a1e86a23c 100644 --- a/modules/net/dap_chain_node.c +++ b/modules/net/dap_chain_node.c @@ -44,9 +44,11 @@ #include "dap_global_db.h" #include "dap_chain_node.h" #include "dap_chain_node_client.h" +#include "dap_chain_node_client.h" #include "dap_chain_cs_esbocs.h" // TODO set RPC callbacks for exclude consensus specific dependency #include "dap_chain_cs_blocks.h" // TODO set RPC callbacks for exclude storage type specific dependency #include "dap_chain_ledger.h" +#include "dap_chain_net_balancer.h" #include "dap_cli_server.h" #include "dap_chain_srv.h" #include "dap_chain_mempool.h" @@ -257,11 +259,11 @@ void dap_chain_node_list_cluster_del_callback(dap_store_obj_t *a_obj, void *a_ar // dap_chain_node_client_close_unsafe(l_client); del in s_go_stage_on_client_worker_unsafe } if (l_ret == 0) { - a_obj->timestamp = dap_nanotime_now(); - dap_global_db_set_raw_sync(a_obj, 1); + dap_global_db_set_sync(a_obj->group, a_obj->key, a_obj->value, a_obj->value_len, a_obj->flags & DAP_GLOBAL_DB_RECORD_PINNED); + // dap_global_db_set_raw_sync(a_obj, 1); } else { log_it(L_DEBUG, "Can't do handshake with %s [ %s : %u ] delete from node list", a_obj->key, l_node_info->ext_host, l_node_info->ext_port); - dap_global_db_driver_delete(a_obj, 1); + dap_del_global_db_obj_by_ttl(a_obj); } dap_strfreev(l_group_strings); } diff --git a/modules/node-cli/dap_chain_node_cli_cmd.c b/modules/node-cli/dap_chain_node_cli_cmd.c index 71ec3da617..3ce44dd290 100644 --- a/modules/node-cli/dap_chain_node_cli_cmd.c +++ b/modules/node-cli/dap_chain_node_cli_cmd.c @@ -684,7 +684,7 @@ int com_global_db(int a_argc, char ** a_argv, void **a_str_reply) for (i = 0; i < l_objs_count; ++i) { if (!l_obj[i].key) continue; - if (!dap_global_db_del_sync(l_group_str, l_obj[i].key)) { + if (!dap_global_db_del_sync_ex(l_group_str, l_obj[i].key, DAP_GLOBAL_DB_MANUAL_DEL, strlen(DAP_GLOBAL_DB_MANUAL_DEL)+1)) { ++j; } } @@ -697,7 +697,7 @@ int com_global_db(int a_argc, char ** a_argv, void **a_str_reply) return DAP_CHAIN_NODE_CLI_COM_GLOBAL_DB_JSON_OK; } - if (!dap_global_db_del_sync(l_group_str, l_key_str)) { + if (!dap_global_db_del_sync_ex(l_group_str, l_key_str, DAP_GLOBAL_DB_MANUAL_DEL, strlen(DAP_GLOBAL_DB_MANUAL_DEL)+1)) { json_object* json_obj_del = json_object_new_object(); json_object_object_add(json_obj_del, "Record key", json_object_new_string(l_key_str)); json_object_object_add(json_obj_del, "Group name", json_object_new_string(l_group_str)); -- GitLab From 3173c9271ca6fb63857c519b478c42277bfd3117 Mon Sep 17 00:00:00 2001 From: Olzhas <oljas.jarasbaev@demlabs.net> Date: Mon, 10 Feb 2025 17:01:58 +0700 Subject: [PATCH 3/8] [*] port-13903 --- dap-sdk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dap-sdk b/dap-sdk index 4cc7005aea..dad68542ee 160000 --- a/dap-sdk +++ b/dap-sdk @@ -1 +1 @@ -Subproject commit 4cc7005aea35f13553f68adb26e31d144bcd3ca4 +Subproject commit dad68542ee1d85e5e9f16fc1a30a5b835899a890 -- GitLab From f79ac27a445f058eb6febf0141472990dc64f0a2 Mon Sep 17 00:00:00 2001 From: Olzhas <oljas.jarasbaev@demlabs.net> Date: Tue, 18 Feb 2025 15:49:27 +0700 Subject: [PATCH 4/8] [*] subup --- dap-sdk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dap-sdk b/dap-sdk index 236e17ea34..206f5df025 160000 --- a/dap-sdk +++ b/dap-sdk @@ -1 +1 @@ -Subproject commit 236e17ea344a1c460baf6b25b7bdb698eafc8261 +Subproject commit 206f5df025e074c171bb45f4eaffdc3bfe1c9446 -- GitLab From 87c49e64c33b8c5c37881814d001d42351d0043c Mon Sep 17 00:00:00 2001 From: Olzhas <oljas.jarasbaev@demlabs.net> Date: Tue, 18 Feb 2025 16:36:46 +0700 Subject: [PATCH 5/8] [*] fix build --- modules/node-cli/dap_chain_node_cli_cmd.c | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/node-cli/dap_chain_node_cli_cmd.c b/modules/node-cli/dap_chain_node_cli_cmd.c index 506a44b4fe..900bbe7404 100644 --- a/modules/node-cli/dap_chain_node_cli_cmd.c +++ b/modules/node-cli/dap_chain_node_cli_cmd.c @@ -620,6 +620,7 @@ int com_global_db(int a_argc, char ** a_argv, void **a_str_reply) if (l_ts) { char l_ts_str[80] = { '\0' }; dap_nanotime_to_str_rfc822(l_ts_str, sizeof(l_ts_str), l_ts); + char *l_value_hexdump = dap_dump_hex(l_value_out, l_out_len); if (l_value_hexdump) { char *l_value_hexdump_new = dap_strdup_printf("\n%s", l_value_hexdump); json_object_object_add(json_obj_read, "group", json_object_new_string(l_group_str)); -- GitLab From 8abdc08b0f3b3ea754e0c857850e6dc7bcc947c3 Mon Sep 17 00:00:00 2001 From: Olzhas <oljas.jarasbaev@demlabs.net> Date: Wed, 5 Mar 2025 12:45:01 +0700 Subject: [PATCH 6/8] [*] port --- dap-sdk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dap-sdk b/dap-sdk index 206f5df025..1dea1116d7 160000 --- a/dap-sdk +++ b/dap-sdk @@ -1 +1 @@ -Subproject commit 206f5df025e074c171bb45f4eaffdc3bfe1c9446 +Subproject commit 1dea1116d7e72f934e587e520844d0b22c770065 -- GitLab From e54c9ec5aa541d6f51142cbd69ee09f22db5744c Mon Sep 17 00:00:00 2001 From: Olzhas <oljas.jarasbaev@demlabs.net> Date: Wed, 5 Mar 2025 13:03:06 +0700 Subject: [PATCH 7/8] [*] fix build --- dap-sdk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dap-sdk b/dap-sdk index 1dea1116d7..577107a059 160000 --- a/dap-sdk +++ b/dap-sdk @@ -1 +1 @@ -Subproject commit 1dea1116d7e72f934e587e520844d0b22c770065 +Subproject commit 577107a05961eaed7c7e254530c09140fe2f93c3 -- GitLab From c085bb7879dc28c557e5115609e1793d69c0f0d7 Mon Sep 17 00:00:00 2001 From: Olzhas <oljas.jarasbaev@demlabs.net> Date: Wed, 5 Mar 2025 13:08:40 +0700 Subject: [PATCH 8/8] [*] fix --- modules/net/dap_chain_node.c | 1 - 1 file changed, 1 deletion(-) diff --git a/modules/net/dap_chain_node.c b/modules/net/dap_chain_node.c index cfdf146ed4..079ff718e9 100644 --- a/modules/net/dap_chain_node.c +++ b/modules/net/dap_chain_node.c @@ -36,7 +36,6 @@ #include "dap_chain_mempool.h" #include "dap_chain_datum_service_state.h" #include "dap_chain_node_client.h" -#include "dap_chain_net_balancer.h" #define LOG_TAG "dap_chain_node" -- GitLab