Failed to save dashboard disk image is malformed

Hi team the grafana is at 7.4 version i am using the grafan for last 7 months this is the first time i am facing this error i just attached the logs bellow

t=2021-05-10T05:58:09+0000 lvl=eror msg="Failed to save dashboard" logger=context userId=2 orgId=3 uname=user error="database disk image is malformed" remote_addr=y.y.y.y
=2021-05-10T05:55:58+0000 lvl=eror msg="Request Completed" logger=context userId=2 orgId=3 uname=user method=POST path=/api/dashboards/db/ status=500 remote_addr=y.y.y.y time_ms=445 size=38 referer="https://x.x.x.x:port/d/0Tdh_ZjMz/sample-copy?orgId=3&from=now-30m&to=now"
t=2021-05-10T05:56:01+0000 lvl=eror msg="Alert Rule Result Error" logger=alerting.evalContext ruleId=1 name=NoMessageForTooLong error="tsdb.HandleRequest() error Post \"http://x.x.x.x:port/api/v1/query_range\": dial tcp x.x.x.x:port: connect: connection refused" changing state to=alerting
t=2021-05-10T05:56:15+0000 lvl=info msg="Alert Rule returned no data" logger=alerting.evalContext ruleId=5 name="bufferpool alert" changing state to=no_data
t=2021-05-10T05:56:45+0000 lvl=info msg="Alert Rule returned no data" logger=alerting.evalContext ruleId=5 name="bufferpool alert" changing state to=no_data
t=2021-05-10T05:57:01+0000 lvl=eror msg="Alert Rule Result Error" logger=alerting.evalContext ruleId=1 name=NoMessageForTooLong error="tsdb.HandleRequest() error Post \"http://x.x.x.x:port/api/v1/query_range\": dial tcp x.x.x.x:port: connect: connection refused" changing state to=alerting
t=2021-05-10T05:57:15+0000 lvl=info msg="Alert Rule returned no data" logger=alerting.evalContext ruleId=5 name="bufferpool alert" changing state to=no_data
t=2021-05-10T05:57:45+0000 lvl=info msg="Alert Rule returned no data" logger=alerting.evalContext ruleId=5 name="bufferpool alert" changing state to=no_data
t=2021-05-10T05:58:01+0000 lvl=eror msg="Alert Rule Result Error" logger=alerting.evalContext ruleId=1 name=NoMessageForTooLong error="tsdb.HandleRequest() error Post \"http://x.x.x.x:port/api/v1/query_range\": dial tcp x.x.x.x:port: connect: connection refused" changing state to=alerting
t=2021-05-10T05:58:09+0000 lvl=eror msg="Failed to save dashboard" logger=context userId=2 orgId=3 uname=user error="database disk image is malformed" remote_addr=y.y.y.y
t=2021-05-10T05:58:09+0000 lvl=eror msg="Request Completed" logger=context userId=2 orgId=3 uname=user method=POST path=/api/dashboards/db/ status=500 remote_addr=y.y.y.y time_ms=40 size=38 referer="https://x.x.x.x:port/d/0Tdh_ZjMz/sample-copy?orgId=3"
t=2021-05-10T05:58:15+0000 lvl=info msg="Alert Rule returned no data" logger=alerting.evalContext ruleId=5 name="bufferpool alert" changing state to=no_data
t=2021-05-10T05:58:45+0000 lvl=info msg="Alert Rule returned no data" logger=alerting.evalContext ruleId=5 name="bufferpool alert" changing state to=no_data
t=2021-05-10T05:59:01+0000 lvl=eror msg="Alert Rule Result Error" logger=alerting.evalContext ruleId=1 name=NoMessageForTooLong error="tsdb.HandleRequest() error Post \"http://x.x.x.x:port/api/v1/query_range\": dial tcp x.x.x.x:port: connect: connection refused" changing state to=alerting
t=2021-05-10T05:59:15+0000 lvl=info msg="Alert Rule returned no data" logger=alerting.evalContext ruleId=5 name="bufferpool alert" changing state to=no_data
t=2021-05-10T05:59:45+0000 lvl=info msg="Alert Rule returned no data" logger=alerting.evalContext ruleId=5 name="bufferpool alert" changing state to=no_data
t=2021-05-10T06:00:01+0000 lvl=eror msg="Alert Rule Result Error" logger=alerting.evalContext ruleId=1 name=NoMessageForTooLong error="tsdb.HandleRequest() error Post \"http://x.x.x.x:port/api/v1/query_range\": dial tcp x.x.x.x:port: connect: connection refused" changing state to=alerting
t=2021-05-10T06:00:15+0000 lvl=info msg="Alert Rule returned no data" logger=alerting.evalContext ruleId=5 name="bufferpool alert" changing state to=no_data
t=2021-05-10T06:00:45+0000 lvl=info msg="Alert Rule returned no data" logger=alerting.evalContext ruleId=5 name="bufferpool alert" changing state to=no_data
t=2021-05-10T06:01:01+0000 lvl=eror msg="Alert Rule Result Error" logger=alerting.evalContext ruleId=1 name=NoMessageForTooLong error="tsdb.HandleRequest() error Post \"http://x.x.x.x:port/api/v1/query_range\": dial tcp x.x.x.x:port: connect: connection refused" changing state to=alerting
t=2021-05-10T06:01:15+0000 lvl=info msg="Alert Rule returned no data" logger=alerting.evalContext ruleId=5 name="bufferpool alert" changing state to=no_data
t=2021-05-10T06:01:45+0000 lvl=info msg="Alert Rule returned no data" logger=alerting.evalContext ruleId=5 name="bufferpool alert" changing state to=no_data
t=2021-05-10T06:02:01+0000 lvl=eror msg="Alert Rule Result Error" logger=alerting.evalContext ruleId=1 name=NoMessageForTooLong error="tsdb.HandleRequest() error Post \"http://x.x.x.x:port/api/v1/query_range\": dial tcp x.x.x.x:port: connect: connection refused" changing state to=alerting
t=2021-05-10T06:02:15+0000 lvl=info msg="Alert Rule returned no data" logger=alerting.evalContext ruleId=5 name="bufferpool alert" changing state to=no_data
t=2021-05-10T06:02:45+0000 lvl=info msg="Alert Rule returned no data" logger=alerting.evalContext ruleId=5 name="bufferpool alert" changing state to=no_data
t=2021-05-10T06:03:01+0000 lvl=eror msg="Alert Rule Result Error" logger=alerting.evalContext ruleId=1 name=NoMessageForTooLong error="tsdb.HandleRequest() error Post \"http://x.x.x.x:port/api/v1/query_range\": dial tcp x.x.x.x:port: connect: connection refused" changing state to=alerting
t=2021-05-10T06:03:02+0000 lvl=eror msg="Failed to save dashboard" logger=context userId=2 orgId=3 uname=user error="database disk image is malformed" remote_addr=y.y.y.y
t=2021-05-10T06:03:02+0000 lvl=eror msg="Request Completed" logger=context userId=2 orgId=3 uname=user method=POST path=/api/dashboards/db/ status=500 remote_addr=y.y.y.y time_ms=119 size=38 referer="https://x.x.x.x:port/d/GPkyky2ik/flink-metrics?orgId=3&refresh=1m&var-Topics=All&var-Broker=All&var-Zookeeper=All&var-Flink_Job_Name=&var-Source=All&var-Sink=All&var-Node=All"
t=2021-05-10T06:03:15+0000 lvl=info msg="Alert Rule returned no data" logger=alerting.evalContext ruleId=5 name="bufferpool alert" changing state to=no_data
t=2021-05-10T06:03:45+0000 lvl=info msg="Alert Rule returned no data" logger=alerting.evalContext ruleId=5 name="bufferpool alert" changing state to=no_data
t=2021-05-10T06:04:01+0000 lvl=eror msg="Alert Rule Result Error" logger=alerting.evalContext ruleId=1 name=NoMessageForTooLong error="tsdb.HandleRequest() error Post \"http://x.x.x.x:port/api/v1/query_range\": dial tcp x.x.x.x:port: connect: connection refused" changing state to=alerting
t=2021-05-10T06:04:15+0000 lvl=info msg="Alert Rule returned no data" logger=alerting.evalContext ruleId=5 name="bufferpool alert" changing state to=no_data
t=2021-05-10T06:04:44+0000 lvl=info msg="Shutdown started" logger=server reason="System signal: terminated"

Looks like your Grafana database is corrupted. The embedded database is an Sqlite database which is a file database.

Looks like you already got an answer on a GitHub with a link to a guide to fix it: Unable to save dashboard Disck image is malformed · Issue #33885 · grafana/grafana · GitHub

1 Like