From cea2dbb5294eed3dcdfe9d5afa46d78306e6de60 Mon Sep 17 00:00:00 2001 From: Dmitriy Gerasimov <naeper@demlabs.net> Date: Sun, 19 May 2019 15:50:22 +0700 Subject: [PATCH] [*] Bidirectional syncronization --- dap_stream_ch_chain.c | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/dap_stream_ch_chain.c b/dap_stream_ch_chain.c index b93e9d9..2bab4c7 100755 --- a/dap_stream_ch_chain.c +++ b/dap_stream_ch_chain.c @@ -225,10 +225,21 @@ void s_stream_ch_packet_in(dap_stream_ch_t* a_ch , void* a_arg) size_t l_data_obj_count = 0; // deserialize data - void *l_data_obj = dap_db_log_unpack((uint8_t*) l_chain_pkt->data, l_chain_pkt_data_size, &l_data_obj_count); // Parse data from dap_db_log_pack() + dap_store_obj_t *l_store_obj = dap_db_log_unpack((uint8_t*) l_chain_pkt->data, l_chain_pkt_data_size, &l_data_obj_count); // Parse data from dap_db_log_pack() + if ( dap_log_level_get()== L_DEBUG ) + for ( size_t i =0 ; i < l_data_obj_count; i++) { + char l_ts_str[50]; + dap_time_to_str_rfc822(l_ts_str,sizeof(l_ts_str),l_store_obj[i].timestamp); + log_it(L_DEBUG,"Unpacked log history: type='%c' (0x%02hhX) group=\"%s\" key=\"%s\"" + " section=\"%s\" timestamp=\"%s\" value_len=%u ", + (char) l_store_obj[i].type , l_store_obj[i].type, l_store_obj[i].group, l_store_obj[i].key, + l_store_obj[i].section , l_ts_str, + l_store_obj[i].value_len); + } + // save data to global_db - if(!dap_chain_global_db_obj_save(l_data_obj, l_data_obj_count)) { - log_it(L_ERROR, "Don't saved to global_db objs=0x%x count=%d", l_data_obj, + if(!dap_chain_global_db_obj_save(l_store_obj, l_data_obj_count)) { + log_it(L_ERROR, "Don't saved to global_db objs=0x%x count=%d", l_store_obj, l_data_obj_count); dap_stream_ch_chain_pkt_write_error(a_ch,l_chain_pkt->hdr.net_id, l_chain_pkt->hdr.chain_id, l_chain_pkt->hdr.cell_id, @@ -241,8 +252,7 @@ void s_stream_ch_packet_in(dap_stream_ch_t* a_ch , void* a_arg) dap_db_log_set_last_timestamp_remote( l_ch_chain->request.node_addr.uint64 , dap_db_log_get_last_timestamp() ); } - // TODO propagate changes - log_it(L_NOTICE,"!!!Added new GLOBAL_DB but not running sync action for others links. TODO.!!!"); + log_it(L_DEBUG,"Added new GLOBAL_DB history pack"); } } }break; -- GitLab