Skip to content
Snippets Groups Projects
Commit 5fc24209 authored by Roman Khlopkov's avatar Roman Khlopkov 🔜
Browse files

[*] Merged with lst master

parents f2cc9ad2 0c37bf21
No related branches found
No related tags found
1 merge request!419Feature 5220
......@@ -2,7 +2,7 @@ project(cellframe-sdk C)
cmake_minimum_required(VERSION 3.0)
set(CMAKE_C_STANDARD 11)
set(CELLFRAME_SDK_NATIVE_VERSION "3.0-4")
set(CELLFRAME_SDK_NATIVE_VERSION "3.0-5")
add_definitions ("-DCELLFRAME_SDK_VERSION=\"${CELLFRAME_SDK_NATIVE_VERSION}\"")
set(DAPSDK_MODULES "")
message("Cellframe modules: ${CELLFRAME_MODULES}")
......
......@@ -564,6 +564,7 @@ int dap_db_driver_sqlite_apply_store_obj(dap_store_obj_t *a_store_obj)
return -1;
char *l_query = NULL;
char *l_error_message = NULL;
char *l_table_name = dap_db_driver_sqlite_make_table_name(a_store_obj->group);
if(a_store_obj->type == 'a') {
if(!a_store_obj->key || !a_store_obj->value || !a_store_obj->value_len)
return -1;
......@@ -573,10 +574,8 @@ int dap_db_driver_sqlite_apply_store_obj(dap_store_obj_t *a_store_obj)
char *l_blob_hash = "";//dap_db_driver_get_string_from_blob((uint8_t*) &l_hash, sizeof(dap_chain_hash_fast_t));
char *l_blob_value = dap_db_driver_get_string_from_blob(a_store_obj->value, (int)a_store_obj->value_len);
//add one record
char *table_name = dap_db_driver_sqlite_make_table_name(a_store_obj->group);
l_query = sqlite3_mprintf("insert into '%s' values(NULL, '%s', x'%s', '%lld', x'%s')",
table_name, a_store_obj->key, l_blob_hash, a_store_obj->timestamp, l_blob_value);
DAP_DELETE(table_name);
l_table_name, a_store_obj->key, l_blob_hash, a_store_obj->timestamp, l_blob_value);
//dap_db_driver_sqlite_free(l_blob_hash);
dap_db_driver_sqlite_free(l_blob_value);
}
......@@ -584,12 +583,10 @@ int dap_db_driver_sqlite_apply_store_obj(dap_store_obj_t *a_store_obj)
//delete one record
if(a_store_obj->key)
l_query = sqlite3_mprintf("delete from '%s' where key = '%s'",
a_store_obj->group, a_store_obj->key);
l_table_name, a_store_obj->key);
// remove all group
else{
char * l_table_name = dap_db_driver_sqlite_make_table_name(a_store_obj->group);
else {
l_query = sqlite3_mprintf("drop table if exists '%s'", l_table_name);
DAP_DELETE(l_table_name);
}
}
else {
......@@ -608,9 +605,7 @@ int dap_db_driver_sqlite_apply_store_obj(dap_store_obj_t *a_store_obj)
dap_db_driver_sqlite_free(l_error_message);
l_error_message = NULL;
// create table
char *table_name = dap_db_driver_sqlite_make_table_name(a_store_obj->group);
dap_db_driver_sqlite_create_group_table(table_name);
DAP_DELETE(table_name);
dap_db_driver_sqlite_create_group_table(l_table_name);
// repeat request
l_ret = dap_db_driver_sqlite_exec(s_db, l_query, &l_error_message);
......@@ -619,11 +614,9 @@ int dap_db_driver_sqlite_apply_store_obj(dap_store_obj_t *a_store_obj)
if(l_ret == SQLITE_CONSTRAINT) {
dap_db_driver_sqlite_free(l_error_message);
l_error_message = NULL;
char *table_name = dap_db_driver_sqlite_make_table_name(a_store_obj->group);
//delete exist record
char *l_query_del = sqlite3_mprintf("delete from '%s' where key = '%s'", table_name, a_store_obj->key);
char *l_query_del = sqlite3_mprintf("delete from '%s' where key = '%s'", l_table_name, a_store_obj->key);
l_ret = dap_db_driver_sqlite_exec(s_db, l_query_del, &l_error_message);
DAP_DELETE(table_name);
dap_db_driver_sqlite_free(l_query_del);
if(l_ret != SQLITE_OK) {
log_it(L_INFO, "Entry with the same key is already present and can't delete, %s", l_error_message);
......@@ -641,6 +634,7 @@ int dap_db_driver_sqlite_apply_store_obj(dap_store_obj_t *a_store_obj)
l_ret = -1;
}
dap_db_driver_sqlite_free(l_query);
DAP_DELETE(l_table_name);
return l_ret;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment