db_sync: LMDB→SQLite, multi-instance, etcp_api, chatgui integration
- src/db_sync: LMDB replaced with SQLite (separate tables per instance: db_sync_name_id) TTL index (author, timestamp), WAL mode, per-instance peers/timers opaque DB_SYNC_INSTANCE* handle, insert callback, select API new fields: author_signature, delivered_peers, delivery_chain transport: etcp_api direct P2P (was etcp_router) - src/db_sync.h: user-oriented API docs, multi-instance lifecycle - lib/Makefile.am: liblmdb sources removed - lib/sqlite3.c+h: SQLite amalgamation added - topo_node: LMDB→SQLite (src/topo_node_sqlite.c moved from chatgui) - chatgui: real db_sync.c replaces db_sync_stub.c chat_core: db_sync_insert_signed + dual-write insert callback utun_node: db_sync_init/destroy replaces chat_sync_init/destroy CMakeLists: stubs removed, real db_sync.c added
This commit is contained in:
1 parent
37417ba49d
commit
f617dcd68e
21 files changed
+284328
-1174
No files matched your search
@@ -22,6 +22,7 @@ extern "C" {
|
||||
#include "../lib/mem.h"
|
||||
#include "chat_sync.h"
|
||||
#include "chat_core.h"
|
||||
#include "db_sync.h"
|
||||
#include "gui_bridge.h"
|
||||
}
|
||||
|
||||
@@ -237,10 +238,10 @@ void UtunNode::runLoop() {
|
||||
|
||||
etcp_router_bind(m_instance, ETCP_RT_ID_CHAT, recvCallback);
|
||||
|
||||
/* Initialize chat_core (DB) and chat_sync */
|
||||
/* Initialize chat_core (DB) and db_sync (message sync) */
|
||||
chat_core_init(m_instance, m_dbPath.toUtf8().constData());
|
||||
chat_sync_init(m_instance, NULL);
|
||||
DEBUG_INFO(DEBUG_CATEGORY_DEBUG, "chat_core + chat_sync initialized");
|
||||
db_sync_init(m_instance);
|
||||
DEBUG_INFO(DEBUG_CATEGORY_DEBUG, "chat_core + db_sync initialized");
|
||||
DEBUG_INFO(DEBUG_CATEGORY_DEBUG, "utun_node: entering poll loop");
|
||||
|
||||
while (!m_stop) {
|
||||
@@ -248,7 +249,7 @@ void UtunNode::runLoop() {
|
||||
}
|
||||
|
||||
etcp_router_bind(m_instance, ETCP_RT_ID_CHAT, nullptr);
|
||||
chat_sync_destroy(m_instance);
|
||||
db_sync_destroy(m_instance);
|
||||
chat_core_destroy(m_instance);
|
||||
utun_instance_destroy(m_instance);
|
||||
m_instance = nullptr;
|
||||
|
||||
Reference in new issue
Block a user