Open shun-dgut opened 6 days ago
一个线程使用fdb_tsl_append间隔10ms不断写入数据,在 tsl_append 里面打印 db->last_time 的值,这个时候使用reboot命令重启设备,上电打印 db->last_time 值,会出现 db->last_time 变化为0的情况。 大概是四次五次使用reboot后就出现。
有没有用最新版本测试过呢?
最新版本是 v2.1.0 我看你的是 v1.1.2
有没有用最新版本测试过呢?
最新版本是 v2.1.0 我看你的是 v1.1.2
使用的最新版本测试的,文件夹名字没有更改
那你先试着单步调试,分析一下获取 last_time 的逻辑?
那你先试着单步调试,分析一下获取 last_time 的逻辑?
应该是write_tsl如果在执行这个函数的时候,触发了重启,会导致 last_time 变为0
这里看着是有做掉电保护的,你分析下,为何 last_time 变成 0 了?
这里看着是有做掉电保护的,你分析下,为何 last_time 变成 0 了?
fdb_tsdb_init 这一块的逻辑有一些文档说明吗,有没有可能是这一块的逻辑有问题
[FlashDB][kv][ate_db][ate_db] (packages\FlashDB-v1.1.2\src\fdb_kvdb.c:1801) KVDB size is 24576 bytes. [FlashDB][tsl][record_db][record_db] (packages\FlashDB-v1.1.2\src\fdb_tsdb.c:981) TSDB (record_db) oldest sectors is 0x00000000, current using sector is 0x0001F000. db->last_time 0