From 9ba9a5b41a0362a01984ce2f6cfde39b687f65a7 Mon Sep 17 00:00:00 2001 From: Dmitry Gerasimov <dmitriy.gerasimov@demlabs.net> Date: Fri, 17 Jun 2022 18:43:27 +0700 Subject: [PATCH] [!] Another stage of refactoring --- modules/chain/dap_chain_ledger.c | 10 +- .../block-ton/dap_chain_cs_block_ton.c | 8 +- .../consensus/dag-poa/dap_chain_cs_dag_poa.c | 2 +- modules/consensus/none/dap_chain_cs_none.c | 2 +- modules/global-db/dap_chain_global_db.c | 181 ------------------ modules/global-db/dap_global_db.c | 83 +++++++- .../global-db/include/dap_chain_global_db.h | 2 +- modules/global-db/include/dap_global_db.h | 3 + modules/net/dap_chain_net.c | 8 +- modules/net/dap_chain_node.c | 2 +- modules/net/dap_chain_node_cli_cmd.c | 10 +- modules/net/dap_chain_node_dns_server.c | 2 +- modules/net/srv/dap_chain_net_srv_order.c | 2 +- .../service/stake/dap_chain_net_srv_stake.c | 2 +- .../xchange/dap_chain_net_srv_xchange.c | 4 +- modules/type/blocks/dap_chain_block_chunk.c | 2 +- modules/type/blocks/dap_chain_cs_blocks.c | 2 +- modules/type/dag/dap_chain_cs_dag.c | 8 +- 18 files changed, 110 insertions(+), 223 deletions(-) delete mode 100644 modules/global-db/dap_chain_global_db.c diff --git a/modules/chain/dap_chain_ledger.c b/modules/chain/dap_chain_ledger.c index 428123d4de..18e5790068 100644 --- a/modules/chain/dap_chain_ledger.c +++ b/modules/chain/dap_chain_ledger.c @@ -1210,7 +1210,7 @@ void dap_chain_ledger_load_cache(dap_ledger_t *a_ledger) } memcpy(&l_token_item->current_supply, l_objs[i].value, sizeof(uint256_t)); } - dap_chain_global_db_objs_delete(l_objs, l_objs_count); + dap_global_db_objs_delete(l_objs, l_objs_count); DAP_DELETE(l_gdb_group); l_gdb_group = dap_chain_ledger_get_gdb_group(a_ledger, DAP_CHAIN_LEDGER_EMISSIONS_STR); @@ -1236,7 +1236,7 @@ void dap_chain_ledger_load_cache(dap_ledger_t *a_ledger) HASH_ADD(hh, l_token_item->token_emissions, datum_token_emission_hash, sizeof(dap_chain_hash_fast_t), l_emission_item); } - dap_chain_global_db_objs_delete(l_objs, l_objs_count); + dap_global_db_objs_delete(l_objs, l_objs_count); DAP_DELETE(l_gdb_group); l_gdb_group = dap_chain_ledger_get_gdb_group(a_ledger, DAP_CHAIN_LEDGER_TXS_STR); @@ -1250,7 +1250,7 @@ void dap_chain_ledger_load_cache(dap_ledger_t *a_ledger) memcpy(&l_tx_item->cache_data, l_objs[i].value, sizeof(l_tx_item->cache_data)); HASH_ADD(hh, l_ledger_pvt->ledger_items, tx_hash_fast, sizeof(dap_chain_hash_fast_t), l_tx_item); } - dap_chain_global_db_objs_delete(l_objs, l_objs_count); + dap_global_db_objs_delete(l_objs, l_objs_count); DAP_DELETE(l_gdb_group); l_gdb_group = dap_chain_ledger_get_gdb_group(a_ledger, DAP_CHAIN_LEDGER_SPENT_TXS_STR); @@ -1263,7 +1263,7 @@ void dap_chain_ledger_load_cache(dap_ledger_t *a_ledger) min(l_objs[i].value_len, DAP_CHAIN_TICKER_SIZE_MAX - 1)); HASH_ADD(hh, l_ledger_pvt->spent_items, tx_hash_fast, sizeof(dap_chain_hash_fast_t), l_tx_spent_item); } - dap_chain_global_db_objs_delete(l_objs, l_objs_count); + dap_global_db_objs_delete(l_objs, l_objs_count); DAP_DELETE(l_gdb_group); l_gdb_group = dap_chain_ledger_get_gdb_group(a_ledger, DAP_CHAIN_LEDGER_BALANCES_STR); @@ -1285,7 +1285,7 @@ void dap_chain_ledger_load_cache(dap_ledger_t *a_ledger) dap_notify_server_send_mt(json_object_get_string(l_json)); json_object_put(l_json);*/ // TODO: unstable and spammy } - dap_chain_global_db_objs_delete(l_objs, l_objs_count); + dap_global_db_objs_delete(l_objs, l_objs_count); DAP_DELETE(l_gdb_group); } diff --git a/modules/consensus/block-ton/dap_chain_cs_block_ton.c b/modules/consensus/block-ton/dap_chain_cs_block_ton.c index 47e910b967..5fe97cd427 100644 --- a/modules/consensus/block-ton/dap_chain_cs_block_ton.c +++ b/modules/consensus/block-ton/dap_chain_cs_block_ton.c @@ -396,7 +396,7 @@ static void s_session_round_start(dap_chain_cs_block_ton_items_t *a_session) { s_session_candidate_to_chain(a_session, &l_store_candidate_ready->hdr.candidate_hash, (dap_chain_block_t*)l_store_candidate_ready->candidate_n_signs, l_store_candidate_ready->hdr.candidate_size); } - dap_chain_global_db_objs_delete(l_objs, l_objs_size); + dap_global_db_objs_delete(l_objs, l_objs_size); } } @@ -602,7 +602,7 @@ static bool s_session_timer() { l_list_candidate = dap_list_append(l_list_candidate, l_hash); } } - dap_chain_global_db_objs_delete(l_objs, l_objs_size); + dap_global_db_objs_delete(l_objs, l_objs_size); } size_t l_list_candidate_size = (size_t)dap_list_length(l_list_candidate); dap_chain_cs_block_ton_message_votefor_t *l_votefor = @@ -908,7 +908,7 @@ static bool s_session_round_finish(dap_chain_cs_block_ton_items_t *a_session) { // s_session_candidate_to_chain(a_session, &l_store_candidate_ready->hdr.candidate_hash, // (dap_chain_block_t*)l_store_candidate_ready->candidate_n_signs, l_store_candidate_ready->hdr.candidate_size); // } - dap_chain_global_db_objs_delete(l_objs, l_objs_size); + dap_global_db_objs_delete(l_objs, l_objs_size); } dap_chain_cs_block_ton_message_item_t *l_message_item=NULL, *l_message_tmp=NULL; @@ -1696,7 +1696,7 @@ static void s_session_packet_in(void *a_arg, dap_chain_node_addr_t *a_sender_nod } DAP_DELETE(l_vote); } - dap_chain_global_db_objs_delete(l_objs, l_objs_size); + dap_global_db_objs_delete(l_objs, l_objs_size); } pthread_rwlock_unlock(&l_session->rwlock); } break; diff --git a/modules/consensus/dag-poa/dap_chain_cs_dag_poa.c b/modules/consensus/dag-poa/dap_chain_cs_dag_poa.c index 341a78e519..0cea83b304 100644 --- a/modules/consensus/dag-poa/dap_chain_cs_dag_poa.c +++ b/modules/consensus/dag-poa/dap_chain_cs_dag_poa.c @@ -423,7 +423,7 @@ static bool s_poa_round_check(dap_chain_t *a_chain) { l_events_count++; } } - dap_chain_global_db_objs_delete(l_objs, l_objs_size); + dap_global_db_objs_delete(l_objs, l_objs_size); } if (!l_events_count) { diff --git a/modules/consensus/none/dap_chain_cs_none.c b/modules/consensus/none/dap_chain_cs_none.c index 6d791fb3e4..df99abaca6 100644 --- a/modules/consensus/none/dap_chain_cs_none.c +++ b/modules/consensus/none/dap_chain_cs_none.c @@ -285,7 +285,7 @@ int dap_chain_gdb_ledger_load(char *a_gdb_group, dap_chain_t *a_chain) for(size_t i = 0; i < l_data_size; i++) { s_chain_callback_atom_add(a_chain, data[i].value, data[i].value_len); } - dap_chain_global_db_objs_delete(data, l_data_size); + dap_global_db_objs_delete(data, l_data_size); PVT(DAP_CHAIN_GDB(a_chain))->is_load_mode = false; return 0; } diff --git a/modules/global-db/dap_chain_global_db.c b/modules/global-db/dap_chain_global_db.c deleted file mode 100644 index aa0b94f034..0000000000 --- a/modules/global-db/dap_chain_global_db.c +++ /dev/null @@ -1,181 +0,0 @@ -/* - * Authors: - * Alexander Lysikov <alexander.lysikov@demlabs.net> - * DeM Labs Inc. https://demlabs.net - * Kelvin Project https://github.com/kelvinblockchain -* Copyright (c) 2019-2020 - * All rights reserved. - - This file is part of DAP (Deus Applications Prototypes) the open source project - - DAP (Deus Applicaions Prototypes) is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - DAP is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with any DAP based project. If not, see <http://www.gnu.org/licenses/>. - */ - -#include <stdio.h> -#include <stdint.h> -#include <pthread.h> -#include <errno.h> -#include <assert.h> -#include "dap_chain_global_db.h" -#include "uthash.h" -#include "dap_strfuncs.h" -#include "dap_file_utils.h" -#include "dap_chain_common.h" -#include "dap_global_db_sync.h" -#include "dap_time.h" - -#ifdef WIN32 -#include "registry.h" -#include <string.h> -#endif - -#ifndef MAX_PATH -#define MAX_PATH 120 -#endif - -#define LOG_TAG "dap_global_db" - - - -static int s_track_history = 0; - -int s_db_drvmode_async , /* Set a kind of processing requests to DB: <> 0 - Async mode should be used */ - s_dap_global_db_debug_more; /* Enable extensible debug output */ - - - -/** - * @brief Deallocates memory of an objs array. - * @param objs a pointer to the first object of the array - * @param a_count a number of objects in the array - * @return (none) - */ -void dap_chain_global_db_objs_delete(dap_global_db_obj_t *a_objs, size_t a_count) -{ -dap_global_db_obj_t *l_obj; - - if ( !a_objs || !a_count ) /* Sanity checks */ - return; - - for(l_obj = a_objs; a_count--; l_obj++) /* Run over array's elements */ - { - DAP_DELETE(l_obj->key); - DAP_DELETE(l_obj->value); - } - - DAP_DELETE(a_objs); /* Finaly kill the the array */ -} - - -static inline void s_clear_sync_grp(void *a_elm) -{ - dap_sync_group_item_t *l_item = (dap_sync_group_item_t *)a_elm; - DAP_DELETE(l_item->group_mask); - DAP_DELETE(l_item); -} - -/** - * @brief Deinitialize a database. - * @note You should call this function at the end. - * @return (none) - */ -void dap_chain_global_db_deinit(void) -{ - dap_db_driver_deinit(); -} - -/** - * @brief Flushes a database cahce to disk. - * @return 0 - */ -int dap_chain_global_db_flush(void) -{ - return dap_db_driver_flush(); -} - -/** - * @brief Gets an object from a database by a_key and a_group arguments. - * @param a_key an object key string - * @param a_group a group name string - * @return If successful, returns a pointer to the item, otherwise NULL. - */ -dap_store_obj_t *dap_chain_global_db_obj_get(const char *a_key, const char *a_group) -{ - size_t l_count = 1; - // read one item - dap_store_obj_t *l_store_data = dap_chain_global_db_driver_read(a_group, a_key, &l_count); - return l_store_data; -} - -/** - * @brief Gets an array consisting of a_data_len_out objects from a database by a_key and a_group arguments. - * @param a_key an object key string - * @param a_data_len_out[in] a number of objects to be gotten, if NULL - no limits - * @param a_data_len_out[out] a number of objects that were gotten - * @param a_group a group name string - * @return If successful, returns a pointer to the first item in the array; otherwise NULL. - */ -dap_store_obj_t* dap_chain_global_db_obj_gr_get(const char *a_key, size_t *a_data_len_out, const char *a_group) -{ - // read several items, 0 - no limits - size_t l_data_len_out = 0; - if(a_data_len_out) - l_data_len_out = *a_data_len_out; - dap_store_obj_t *l_store_data = dap_chain_global_db_driver_read(a_group, a_key, &l_data_len_out); - if(l_store_data) { - if(a_data_len_out) - *a_data_len_out = l_data_len_out; - } - return l_store_data; -} - - -/** - * @brief Gets time stamp of the deleted object by a_group and a_key arguments. - * @param a_group a group name sring, for example "kelvin-testnet.nodes" - * @param a_key an object key string, looked like "0x8FAFBD00B..." - * @return If successful, a time stamp, otherwise 0. - */ -uint64_t global_db_gr_del_get_timestamp(const char *a_group, const char *a_key) -{ -uint64_t l_timestamp = 0; -dap_store_obj_t store_data = { 0 }; -char l_group[DAP_GLOBAL_DB_GROUP_NAME_SIZE_MAX]; -size_t l_count_out = 0; -dap_store_obj_t *l_obj; - - if(!a_key) - return l_timestamp; - - store_data.key = a_key; - dap_snprintf(l_group, sizeof(l_group) - 1, "%s.del", a_group); - store_data.group = l_group; - - if (dap_chain_global_db_driver_is(store_data.group, store_data.key)) - { - if ( (l_obj = dap_chain_global_db_driver_read(store_data.group, store_data.key, &l_count_out)) ) - { - if ( (l_count_out > 1) ) - log_it(L_WARNING, "Got more then 1 records (%zu) for group '%s'", l_count_out, l_group); - - l_timestamp = l_obj->timestamp; - dap_store_obj_free(l_obj, l_count_out); - } - } - - return l_timestamp; -} - - - diff --git a/modules/global-db/dap_global_db.c b/modules/global-db/dap_global_db.c index aaf3910b9f..fc10b697f7 100644 --- a/modules/global-db/dap_global_db.c +++ b/modules/global-db/dap_global_db.c @@ -136,7 +136,7 @@ static bool s_msg_opcode_set_multiple(struct queue_io_msg * a_msg); static bool s_msg_opcode_pin(struct queue_io_msg * a_msg); static bool s_msg_opcode_unpin(struct queue_io_msg * a_msg); static bool s_msg_opcode_delete(struct queue_io_msg * a_msg); - +static bool s_msg_opcode_flush(struct queue_io_msg * a_msg); // Free memor for queue i/o message static void s_queue_io_msg_delete( struct queue_io_msg * a_msg); @@ -593,7 +593,7 @@ static bool s_msg_opcode_set_multiple(struct queue_io_msg * a_msg) int l_ret = dap_chain_global_db_driver_add(&l_store_obj,1); if(a_msg->callback_result){ - a_msg->callback_result( l_ret ? DAP_GLOBAL_DB_RC_SUCCESS: + a_msg->callback_result( l_ret==0 ? DAP_GLOBAL_DB_RC_SUCCESS: DAP_GLOBAL_DB_RC_ERROR, a_msg->group, a_msg->key, a_msg->value, a_msg->value_length, l_store_obj.timestamp , a_msg->value_is_pinned , a_msg->callback_arg ); @@ -723,7 +723,7 @@ static bool s_msg_opcode_delete(struct queue_io_msg * a_msg) if (a_msg->key) { if (l_res >= 0) { // add to Del group - s_record_del_history_add(a_msg->group, a_msg->key, dap_nanotime_now() ); + l_res = s_record_del_history_add(a_msg->group, a_msg->key, dap_nanotime_now() ); } // do not add to history if l_res=1 (already deleted) if (!l_res) { @@ -732,7 +732,74 @@ static bool s_msg_opcode_delete(struct queue_io_msg * a_msg) } } + if(a_msg->callback_result){ + a_msg->callback_result( l_res==0 ? DAP_GLOBAL_DB_RC_SUCCESS: + DAP_GLOBAL_DB_RC_ERROR, + a_msg->group, a_msg->key, + NULL, 0, 0 , false, a_msg->callback_arg ); + } + + return true; +} + +/** + * @brief Deallocates memory of an objs array. + * @param objs a pointer to the first object of the array + * @param a_count a number of objects in the array + * @return (none) + */ +void dap_global_db_objs_delete(dap_global_db_obj_t *a_objs, size_t a_count) +{ +dap_global_db_obj_t *l_obj; + + if ( !a_objs || !a_count ) /* Sanity checks */ + return; + + for(l_obj = a_objs; a_count--; l_obj++) /* Run over array's elements */ + { + DAP_DELETE(l_obj->key); + DAP_DELETE(l_obj->value); + } + + DAP_DELETE(a_objs); /* Finaly kill the the array */ +} + +/** + * @brief dap_global_db_flush + * @param a_callback + * @param a_arg + * @return + */ +int dap_global_db_flush( dap_global_db_callback_result_t a_callback, void * a_arg ) +{ + if(s_context_global_db == NULL){ + log_it(L_ERROR, "GlobalDB context is not initialized, can't call dap_global_db_delete"); + return -666; + } + struct queue_io_msg * l_msg = DAP_NEW_Z(struct queue_io_msg); + l_msg->opcode = MSG_OPCODE_DELETE; + l_msg->callback_arg = a_arg; + l_msg->callback_result = a_callback; + + int l_ret = dap_events_socket_queue_ptr_send(s_context_global_db->queue_io,l_msg); + if (l_ret != 0) + s_queue_io_msg_delete(l_msg); + return l_ret; +} +/** + * @brief s_msg_opcode_flush + * @param a_msg + * @return + */ +static bool s_msg_opcode_flush(struct queue_io_msg * a_msg) +{ + int l_res = dap_db_driver_flush(); + if(a_msg->callback_result){ + a_msg->callback_result( l_res==0 ? DAP_GLOBAL_DB_RC_SUCCESS: + DAP_GLOBAL_DB_RC_ERROR, + NULL,NULL,NULL, 0, 0 , false, a_msg->callback_arg ); + } return true; } @@ -756,12 +823,10 @@ static void s_queue_io_callback( dap_events_socket_t * a_es, void * a_arg) case MSG_OPCODE_GET_ALL: l_msg_delete = s_msg_opcode_get_all(l_msg); break; case MSG_OPCODE_SET: l_msg_delete = s_msg_opcode_set(l_msg); break; case MSG_OPCODE_SET_MULTIPLE: l_msg_delete = s_msg_opcode_set_multiple(l_msg); break; - case MSG_OPCODE_PIN:{ - } break; - case MSG_OPCODE_UNPIN:{ - } break; - case MSG_OPCODE_DELETE:{ - } break; + case MSG_OPCODE_PIN: l_msg_delete = s_msg_opcode_pin(l_msg); break; + case MSG_OPCODE_UNPIN: l_msg_delete = s_msg_opcode_unpin(l_msg); break; + case MSG_OPCODE_DELETE: l_msg_delete = s_msg_opcode_delete(l_msg); break; + case MSG_OPCODE_FLUSH: l_msg_delete = s_msg_opcode_flush(l_msg); break; default:{ log_it(L_WARNING, "Message with undefined opcode %d received in queue_io", l_msg->opcode); diff --git a/modules/global-db/include/dap_chain_global_db.h b/modules/global-db/include/dap_chain_global_db.h index 06b2ae6dd7..3fad2c98b7 100644 --- a/modules/global-db/include/dap_chain_global_db.h +++ b/modules/global-db/include/dap_chain_global_db.h @@ -44,7 +44,7 @@ void s_dap_chain_global_db_obj_delete(dap_global_db_obj_t *obj); /** * Delete mass of struct dap_global_db_obj_t */ -void dap_chain_global_db_objs_delete(dap_global_db_obj_t *a_objs, size_t a_count); +void dap_global_db_objs_delete(dap_global_db_obj_t *a_objs, size_t a_count); int dap_chain_global_db_init(dap_config_t * a_config); diff --git a/modules/global-db/include/dap_global_db.h b/modules/global-db/include/dap_global_db.h index aaa1984b6b..3ef091a1f5 100644 --- a/modules/global-db/include/dap_global_db.h +++ b/modules/global-db/include/dap_global_db.h @@ -81,3 +81,6 @@ int dap_global_db_set_multiple(const char * a_group, dap_global_db_obj_t * a_val int dap_global_db_pin(const char * a_group, const char *a_key, dap_global_db_callback_result_t a_callback, void * a_arg ); int dap_global_db_unpin(const char * a_group, const char *a_key, dap_global_db_callback_result_t a_callback, void * a_arg ); int dap_global_db_delete(const char * a_group, const char *a_key, dap_global_db_callback_result_t a_callback, void * a_arg ); +int dap_global_db_flush( dap_global_db_callback_result_t a_callback, void * a_arg ); + +void dap_global_db_objs_delete(dap_global_db_obj_t *a_objs, size_t a_count); diff --git a/modules/net/dap_chain_net.c b/modules/net/dap_chain_net.c index eb7739cece..f08bfccec6 100644 --- a/modules/net/dap_chain_net.c +++ b/modules/net/dap_chain_net.c @@ -2163,7 +2163,7 @@ static int s_cli_net(int argc, char **argv, char **a_str_reply) dap_string_append(l_reply, l_objs[i].key); dap_string_append(l_reply, "\n"); } - dap_chain_global_db_objs_delete(l_objs, l_objs_count); + dap_global_db_objs_delete(l_objs, l_objs_count); *a_str_reply = l_reply->len ? l_reply->str : dap_strdup("No entries found"); dap_string_free(l_reply, false); return 0; @@ -3091,7 +3091,7 @@ dap_list_t* dap_chain_net_get_node_list(dap_chain_net_t * l_net) l_address->uint64 = l_node_info->hdr.address.uint64; l_node_list = dap_list_append(l_node_list, l_address); } - dap_chain_global_db_objs_delete(l_objs, l_nodes_count); + dap_global_db_objs_delete(l_objs, l_nodes_count); return l_node_list; } @@ -3172,7 +3172,7 @@ void dap_chain_net_proc_mempool (dap_chain_net_t * a_net) if(l_objs_processed < l_datums_size) log_it(L_WARNING, "%s.%s: %zu records not processed", a_net->pub.name, l_chain->name, l_datums_size - l_objs_processed); - dap_chain_global_db_objs_delete(l_objs, l_objs_size); + dap_global_db_objs_delete(l_objs, l_objs_size); // Cleanup datums array if(l_datums){ @@ -3324,7 +3324,7 @@ static bool s_net_check_acl(dap_chain_net_t *a_net, dap_chain_hash_fast_t *a_pke break; } } - dap_chain_global_db_objs_delete(l_objs, l_objs_count); + dap_global_db_objs_delete(l_objs, l_objs_count); } } if (!l_authorized) { diff --git a/modules/net/dap_chain_node.c b/modules/net/dap_chain_node.c index 6ef1916221..90b3ff0f51 100644 --- a/modules/net/dap_chain_node.c +++ b/modules/net/dap_chain_node.c @@ -317,7 +317,7 @@ bool dap_chain_node_mempool_autoproc_init() dap_chain_global_db_gr_del( l_objs[i].key, l_gdb_group_mempool); } } - dap_chain_global_db_objs_delete(l_objs, l_objs_size); + dap_global_db_objs_delete(l_objs, l_objs_size); } DAP_DELETE(l_gdb_group_mempool); dap_chain_add_mempool_notify_callback(l_chain, s_chain_node_mempool_autoproc_notify, l_chain); diff --git a/modules/net/dap_chain_node_cli_cmd.c b/modules/net/dap_chain_node_cli_cmd.c index d1e0dc7de4..4500b01034 100644 --- a/modules/net/dap_chain_node_cli_cmd.c +++ b/modules/net/dap_chain_node_cli_cmd.c @@ -164,7 +164,7 @@ static dap_list_t* get_aliases_by_name(dap_chain_net_t * l_net, dap_chain_node_a list_aliases = dap_list_prepend(list_aliases, strdup(obj->key)); } } - dap_chain_global_db_objs_delete(objs, data_size); + dap_global_db_objs_delete(objs, data_size); return list_aliases; } @@ -626,7 +626,7 @@ static int node_info_dump_with_reply(dap_chain_net_t * a_net, dap_chain_node_add dap_string_append_printf(l_string_reply, "No records\n"); dap_chain_node_cli_set_reply_text(a_str_reply, l_string_reply->str); dap_string_free(l_string_reply, true); - dap_chain_global_db_objs_delete(l_objs, l_nodes_count); + dap_global_db_objs_delete(l_objs, l_nodes_count); return -1; } else { dap_string_append_printf(l_string_reply, "Got %zu records:\n", l_nodes_count); @@ -702,9 +702,9 @@ static int node_info_dump_with_reply(dap_chain_net_t * a_net, dap_chain_node_add dap_string_free(aliases_string, true); dap_string_free(links_string, true); } - dap_chain_global_db_objs_delete(l_aliases_objs, l_data_size); + dap_global_db_objs_delete(l_aliases_objs, l_data_size); } - dap_chain_global_db_objs_delete(l_objs, l_nodes_count); + dap_global_db_objs_delete(l_objs, l_nodes_count); } dap_chain_node_cli_set_reply_text(a_str_reply, l_string_reply->str); dap_string_free(l_string_reply, true); @@ -2308,7 +2308,7 @@ void s_com_mempool_list_print_for_chain(dap_chain_net_t * a_net, dap_chain_t * a l_datum->header.data_size, l_data_hash_str, dap_ctime_r(&l_ts_create, buf)); dap_chain_datum_dump(a_str_tmp, l_datum, a_hash_out_type); } - dap_chain_global_db_objs_delete(l_objs, l_objs_size); + dap_global_db_objs_delete(l_objs, l_objs_size); } DAP_DELETE(l_gdb_group_mempool); diff --git a/modules/net/dap_chain_node_dns_server.c b/modules/net/dap_chain_node_dns_server.c index 857e295124..609d43fb26 100644 --- a/modules/net/dap_chain_node_dns_server.c +++ b/modules/net/dap_chain_node_dns_server.c @@ -322,7 +322,7 @@ dap_chain_node_info_t *dap_dns_resolve_hostname(char *str) return NULL; dap_chain_node_info_t *l_node_info = DAP_NEW_Z(dap_chain_node_info_t); memcpy(l_node_info, l_node_candidate, sizeof(dap_chain_node_info_t)); - dap_chain_global_db_objs_delete(l_objs, l_nodes_count); + dap_global_db_objs_delete(l_objs, l_nodes_count); log_it(L_DEBUG, "DNS resolver find ip %s", inet_ntoa(l_node_info->hdr.ext_addr_v4)); return l_node_info; } diff --git a/modules/net/srv/dap_chain_net_srv_order.c b/modules/net/srv/dap_chain_net_srv_order.c index 86a2ab62dc..ad7eb29538 100644 --- a/modules/net/srv/dap_chain_net_srv_order.c +++ b/modules/net/srv/dap_chain_net_srv_order.c @@ -486,7 +486,7 @@ int dap_chain_net_srv_order_find_all_by(dap_chain_net_t * a_net,const dap_chain_ } *a_output_orders_count = l_output_orders_count; DAP_DEL_Z(l_order); - dap_chain_global_db_objs_delete(l_orders, l_orders_count); + dap_global_db_objs_delete(l_orders, l_orders_count); DAP_DELETE(l_gdb_group_str); return 0; } diff --git a/modules/service/stake/dap_chain_net_srv_stake.c b/modules/service/stake/dap_chain_net_srv_stake.c index 6538a04c0a..741cdac215 100644 --- a/modules/service/stake/dap_chain_net_srv_stake.c +++ b/modules/service/stake/dap_chain_net_srv_stake.c @@ -1154,7 +1154,7 @@ static int s_cli_srv_stake_order(int a_argc, char **a_argv, int a_arg_index, cha DAP_DELETE(l_addr); DAP_DELETE(l_stake); } - dap_chain_global_db_objs_delete(l_orders, l_orders_count); + dap_global_db_objs_delete(l_orders, l_orders_count); DAP_DELETE( l_gdb_group_str); if (!l_reply_str->len) { dap_string_append(l_reply_str, "No orders found"); diff --git a/modules/service/xchange/dap_chain_net_srv_xchange.c b/modules/service/xchange/dap_chain_net_srv_xchange.c index f04ea9ce2f..000fe05e40 100644 --- a/modules/service/xchange/dap_chain_net_srv_xchange.c +++ b/modules/service/xchange/dap_chain_net_srv_xchange.c @@ -81,7 +81,7 @@ int dap_chain_net_srv_xchange_init() dap_chain_net_srv_xchange_price_t *l_price = s_xchange_db_load(l_prices[i].key, l_prices[i].value); HASH_ADD_KEYPTR(hh, s_srv_xchange->pricelist, l_price->key_ptr, strlen(l_price->key_ptr), l_price); } - dap_chain_global_db_objs_delete(l_prices, l_prices_count); + dap_global_db_objs_delete(l_prices, l_prices_count); return 1; } @@ -871,7 +871,7 @@ static int s_cli_srv_xchange(int a_argc, char **a_argv, char **a_str_reply) dap_chain_balance_print(l_price->datoshi_sell), dap_chain_balance_print(l_price->rate)); DAP_DELETE(l_price); } - dap_chain_global_db_objs_delete(l_orders, l_orders_count); + dap_global_db_objs_delete(l_orders, l_orders_count); DAP_DELETE( l_gdb_group_str); if (!l_reply_str->len) { dap_string_append(l_reply_str, "No orders found"); diff --git a/modules/type/blocks/dap_chain_block_chunk.c b/modules/type/blocks/dap_chain_block_chunk.c index 573dcbd5c6..b4795aa686 100644 --- a/modules/type/blocks/dap_chain_block_chunk.c +++ b/modules/type/blocks/dap_chain_block_chunk.c @@ -47,7 +47,7 @@ dap_chain_block_chunks_t * dap_chain_block_chunks_create(dap_chain_cs_blocks_t * dap_chain_block_cache_t *l_block_cache = dap_chain_block_cache_new(a_blocks, (dap_chain_block_t*)l_objs[n].value, l_objs[n].value_len); dap_chain_block_chunks_add(l_ret, l_block_cache ); } - dap_chain_global_db_objs_delete(l_objs,l_objs_count); + dap_global_db_objs_delete(l_objs,l_objs_count); return l_ret; } diff --git a/modules/type/blocks/dap_chain_cs_blocks.c b/modules/type/blocks/dap_chain_cs_blocks.c index 2b9b2eea11..1ae3534e57 100644 --- a/modules/type/blocks/dap_chain_cs_blocks.c +++ b/modules/type/blocks/dap_chain_cs_blocks.c @@ -1354,7 +1354,7 @@ void dap_chain_cs_new_block_add_datums(dap_chain_t *a_chain) l_datum, l_datum_size); } } - dap_chain_global_db_objs_delete(l_objs, l_objs_size); + dap_global_db_objs_delete(l_objs, l_objs_size); pthread_rwlock_unlock(&l_blocks_pvt->datums_lock); } diff --git a/modules/type/dag/dap_chain_cs_dag.c b/modules/type/dag/dap_chain_cs_dag.c index c1e84aa9b1..f5de7a1ba6 100644 --- a/modules/type/dag/dap_chain_cs_dag.c +++ b/modules/type/dag/dap_chain_cs_dag.c @@ -626,7 +626,7 @@ void dap_chain_cs_new_event_add_datums(dap_chain_t *a_chain, bool a_round_check) size_t l_round_objs_size = 0; dap_global_db_obj_t *l_round_objs = dap_chain_global_db_gr_load(l_gdb_group_round, &l_round_objs_size); if (l_round_objs_size) { - dap_chain_global_db_objs_delete(l_round_objs, l_round_objs_size); + dap_global_db_objs_delete(l_round_objs, l_round_objs_size); return; } } @@ -671,7 +671,7 @@ void dap_chain_cs_new_event_add_datums(dap_chain_t *a_chain, bool a_round_check) } break; } - dap_chain_global_db_objs_delete(l_objs, l_objs_size); + dap_global_db_objs_delete(l_objs, l_objs_size); } } @@ -1549,7 +1549,7 @@ static int s_cli_dag(int argc, char ** argv, char **a_str_reply) } // Cleaning up - dap_chain_global_db_objs_delete(l_objs, l_objs_size); + dap_global_db_objs_delete(l_objs, l_objs_size); dap_chain_node_cli_set_reply_text(a_str_reply,l_str_ret_tmp->str); dap_string_free(l_str_ret_tmp,false); @@ -1898,7 +1898,7 @@ static int s_cli_dag(int argc, char ** argv, char **a_str_reply) } if (l_objs && l_objs_count ) - dap_chain_global_db_objs_delete(l_objs, l_objs_count); + dap_global_db_objs_delete(l_objs, l_objs_count); ret = 0; } else { dap_string_append_printf(l_str_tmp,"%s.%s: Error! No GlobalDB group!\n",l_net->pub.name,l_chain->name); -- GitLab