V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xiaopenyou
V2EX  ›  Evernote

记录一次 印象笔记 数据丢失

  •  
  •   xiaopenyou · 2020-08-22 01:28:17 +08:00 · 1853 次点击
    这是一个创建于 1544 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最早的认识

    最早经历印象笔记数据丢失,是 这个帖子 描述的那次(当然那次怪我)。

    进一步认识

    那次之后,我吸取教训,开始备份印象笔记的 exb 数据库文件:最简单的备份,是定期复制 exb 文件,粘贴到其它地方。印象的 exb 数据库通常有几 GB 大,复制需要几分钟时间。我发现,在这几分钟内,我对笔记所作的任何“增删改”,都不会被保存成功。我是外行啊,不懂,但猜测原因是,操作系统的复制进程占用 /锁定了 exb 文件,导致印象笔记进程无法对 exb 文件写入,所以一切“增删改”都不会写入成功,自然重启后就恢复原样。

    ——原来这样也能造成数据丢失啊!我觉得,当印象笔记进程,发现没有权限写入 exb 文件时,应该做出弹窗报警。因为数据无价,这事关数据安全!但考虑到 exb 文件通常不会被占用,印象开发组在设计上,没考虑到这点,也能理解,实属正常。

    今天的认识

    但是,今晚遇到一次类似现象,这次我很正常的使用,exb 数据库没有被锁定 /占用,却仍然出现了“增删改”没有写入硬盘 /exb 的情况。

    从刚刚 9 点开始,我整理印象笔记,期间做了一系列 新建笔记、修改、给笔记打标签、删除、合并笔记……等操作,前后涉及几十条笔记。然后到 10 点下楼吃夜宵,11 点回家重新打开电脑,却发现 9~10 点期间的操作,全部消失了!就像回到 9 点以前的快照一样。

    刚开始以为幻觉,但仔细打开回收站一看,刚刚删除的笔记,都还在回收站,刚刚新建的标签 tag,也都在侧边栏,奇怪?于是打开 log 排查,发现满屏幕的 Error 。完整 log 参见: https://getnote.cf/eZfZS 可以看到,log 里面有大量“Can't save note”“Unable to load note”的字样。是不是像上面说的,exb 文件被占用导致不能写入呢?也不是,只有对笔记“内容”的编辑改动不能成功保存,但是对笔记整体的删除、打标签,都可以成功写入,log 里也有“user confirmed deletion of notebook”的字样,证明删除操作写入硬盘了。

    我是用印象来做笔记、写日记的,所以等于,刚刚那 1 小时写的东西,全部丢失了。百年一见的 bug 砸我头上了?

    给印象的建议

    所以,个人感觉,日志中都出现了大量 Error,尤其“Can't save note”这种涉及数据丢失风险的报错,印象客户端一定要报警!即使开发组担心造成普通用户困惑,降低用户体验,你弹窗让用户重启客户端都也可以,例如说“印象笔记发生未知错误,请重启客户端”,都比悄● 无● 声●息来得强——你早点弹窗提醒,我早点重启个客户端,就能解决的简单问题,你写入不到硬盘,却不吭声,害我丢了几十条笔记的改动。要是换个人,从早晨开始用,一整天的笔记不都丢了?

    这个问题不常出现。从我 2011 年 3 月开始用 evernote,到现在将近十年,这是第一次遇到。频率虽低,但希望印象开发组重视!数据安全,是比各种功能性 feature (例如脑图啥的)更重要的!

    iplcbest
        1
    iplcbest  
       2020-08-22 07:35:24 +08:00 via Android
    支持,现在换 google keep 了,本地不存数据
    xiaopenyou
        2
    xiaopenyou  
    OP
       2020-08-22 13:42:08 +08:00
    @iplcbest #1 google keep 是挺好的,小巧快捷。不过我历史笔记包袱太重,换工具都涉及迁移,不好搞
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5498 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 06:59 · PVG 14:59 · LAX 22:59 · JFK 01:59
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.