linuxqianrushikaifa 2023-04-20 11:51 采纳率: 0%
浏览 75
已结题

Influxdb TSM文件合并压缩失败, Error compacting TSM files

请教有没有懂时序数据库Influxdb的大神,用的默认存储策略,配置参数基本没修改,运行了几个月之后发现cpu占用率一直高居90%左右,通过调查发现是influxdb在合并压缩TSM文件的时候有一个文件合并失败了,然后一直在重复压缩步骤导致CPU高居不下,看日志发现 warn Error compacting TSM files {"log_id": "0hA8vBM0000", "service": "storage-engine", "engine": "tsm1", "tsm1_strategy": "full", "tsm1_optimize": false, "op_name": "tsm1_compact_group", "error": "block read error on hisdb/engine/data/65b1b1f12e9b83f5/autogen/26/000000157-000000001.tsm: decode error: unable to decompress block type float for key 'yx,k=40#!~#t': EOF"}

我用influx_inspect verify 验证有几个.tsm文件确实提示block read error损坏了。然后又用influx_inspect dumptsm导出TMS文件的内容,导出的时候发现又报的dumptsm:EOF,导出失败了,应该是文件中那些block块损坏了导致导出一半在某处断开,然后我又下载了EaseUS Data Recovery Wizard工具恢复.tsm文件,点恢复之后没什么变化,文件大小和恢复之前的一样,而且对恢复后的文件dumptsm还是会报错。请问还有没有什么方法能恢复损坏的.tsm(损坏的文件名000000133-000000004.tsm从文件名可以看出该文件是已经合并压缩过几次了,不知道在哪里出的问题)。

  • 写回答

5条回答 默认 最新

  • juer_0001 2023-04-20 11:57
    关注

    从日志中看到的错误信息提示了 block read error on hisdb/engine/data/65b1b1f12e9b83f5/autogen/26/000000157-000000001.tsm: decode error: unable to decompress block type float for key 'yx,k=40#!~#t': EOF,意味着在对 000000157-000000001.tsm 文件进行解压缩操作时出现了错误。

    根据这个错误信息,可以判断出问题是出现在磁盘读取这个 TSM 文件时。可能是文件已经损坏或者在读取过程中被修改或删除,或者硬件或网络问题导致读取错误等等。

    如果确认这个 TSM 文件不是必要的数据,可以手动删除这个文件,并在继续操作之前尝试修复磁盘中可能存在的错误。如果这个 TSM 文件中包含了必要的数据,那么就需要考虑如何修复这个文件,可以尝试从备份中恢复,或者从其他节点中获取这个文件的副本。

    另外,考虑更新 InfluxDB 的版本,可能是版本问题导致的错误。建议尝试最新版本并升级至最新版本,也许可以解决这个问题。

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 4月27日
  • 修改了问题 4月23日
  • 赞助了问题酬金20元 4月20日
  • 创建了问题 4月20日

悬赏问题

  • ¥15 微软硬件驱动认证账号申请
  • ¥15 有人知道怎么在R语言里下载Git上的miceco这个包吗
  • ¥15 GPT写作提示指令词
  • ¥20 如何在cst中建立这种螺旋扇叶结构
  • ¥20 根据动态演化博弈支付矩阵完成复制动态方程求解和演化相图分析等
  • ¥20 关于DAC输出1.000V对分辨率和精度的要求
  • ¥20 想写一个文件管理器,加载全部子文件夹后,要一级一级返回
  • ¥15 华为超融合部署环境下RedHat虚拟机分区扩容问题
  • ¥15 哪位能做百度地图导航触点播报?
  • ¥15 请问GPT语言模型怎么训练?