VDI_IO_ERROR(Device I/O errors) when you run scheduled backup



  • Hi good day.
    I have an installation of XCP-ng 8.1, xo-server 5.57.3 and xo-web 5.57.1

    When I want to make delta backups of VMs of more than 500GB it gives me the following error:

    VDI_IO_ERROR (Device I / O errors)

    Look for the solution on the internet without success.

    I ran several tests and found that I had the Timeout = 1 option set to advanced options.

    This caused the backup to be canceled in one hour. But the information in the backup status was as follows:

     transfer
     Start: May 3, 2020, 4:15:46 PM
     End: May 3, 2020, 5:15:11 PM
     Duration: an hour
     Error: VDI_IO_ERROR (Device I / O errors)
    

    The error makes no mention of timeout cancellation. What disorients the search for the problem.

    The solution, put extend the value in timeout or set it to zero and the backup worked correctly.

    (Sorry for the translation, it is done with google translation) 🙂


  • XCP-ng Team

    Interesting feedback. Ping @julien-f and @pdonias



  • May be unrelated, but I had a similar issue on my most recent backup. Here's the relevant portion of the log --

           "result": {
                "code": "VDI_IO_ERROR",
                "params": [
                  "Device I/O errors"
                ],
                "task": {
                  "uuid": "007fb970-600c-5dc8-c527-c047778b2854",
                  "name_label": "[XO] VDI Export",
                  "name_description": "xxxx03",
                  "allowed_operations": [],
                  "current_operations": {},
                  "created": "20200504T05:09:54Z",
                  "finished": "20200504T06:01:31Z",
                  "status": "failure",
                  "resident_on": "OpaqueRef:e2781353-8cd6-0938-108d-1b7933d4c739",
                  "progress": 1,
                  "type": "<none/>",
                  "result": "",
                  "error_info": [
                    "VDI_IO_ERROR",
                    "Device I/O errors"
                  ],
                  "other_config": {},
                  "subtask_of": "OpaqueRef:NULL",
                  "subtasks": [],
                  "backtrace": "(((process xapi)(filename ocaml/xapi/vhd_tool_wrapper.ml)(line 59))((process xapi)(filename lib/xapi-stdext-pervasives/pervasiveext.ml)(line 24))((process xapi)(filename lib/xapi-stdext-pervasives/pervasiveext.ml)(line 35))((process xapi)(filename ocaml/xapi/export_raw_vdi.ml)(line 41))((process xapi)(filename lib/xapi-stdext-pervasives/pervasiveext.ml)(line 24))((process xapi)(filename lib/xapi-stdext-pervasives/pervasiveext.ml)(line 35))((process xapi)(filename ocaml/xapi/export_raw_vdi.ml)(line 62)))"
                },
                "message": "VDI_IO_ERROR(Device I/O errors)",
                "name": "XapiError",
                "stack": "XapiError: VDI_IO_ERROR(Device I/O errors)\n    at Function.wrap (/opt/xen-orchestra/packages/xen-api/src/_XapiError.js:16:12)\n    at _default (/opt/xen-orchestra/packages/xen-api/src/_getTaskResult.js:11:29)\n    at Xapi._addRecordToCache (/opt/xen-orchestra/packages/xen-api/src/index.js:837:24)\n    at forEach (/opt/xen-orchestra/packages/xen-api/src/index.js:858:14)\n    at Array.forEach (<anonymous>)\n    at Xapi._processEvents (/opt/xen-orchestra/packages/xen-api/src/index.js:848:12)\n    at /opt/xen-orchestra/packages/xen-api/src/index.js:1009:14\n    at Generator.next (<anonymous>)\n    at asyncGeneratorStep (/opt/xen-orchestra/packages/xen-api/dist/index.js:62:103)\n    at _next (/opt/xen-orchestra/packages/xen-api/dist/index.js:64:194)\n    at tryCatcher (/opt/xen-orchestra/node_modules/bluebird/js/release/util.js:16:23)\n    at Promise._settlePromiseFromHandler (/opt/xen-orchestra/node_modules/bluebird/js/release/promise.js:547:31)\n    at Promise._settlePromise (/opt/xen-orchestra/node_modules/bluebird/js/release/promise.js:604:18)\n    at Promise._settlePromise0 (/opt/xen-orchestra/node_modules/bluebird/js/release/promise.js:649:10)\n    at Promise._settlePromises (/opt/xen-orchestra/node_modules/bluebird/js/release/promise.js:729:18)\n    at _drainQueueStep (/opt/xen-orchestra/node_modules/bluebird/js/release/async.js:93:12)\n    at _drainQueue (/opt/xen-orchestra/node_modules/bluebird/js/release/async.js:86:9)\n    at Async._drainQueues (/opt/xen-orchestra/node_modules/bluebird/js/release/async.js:102:5)\n    at Immediate.Async.drainQueues [as _onImmediate] (/opt/xen-orchestra/node_modules/bluebird/js/release/async.js:15:14)\n    at processImmediate (internal/timers.js:456:21)"
              }
            },
    

    This is with xo-server 5.59.0 and xo-web 5.59.0. My timeout=6 under advanced settings. I restarted the failed backups and they completed on the 2nd attempt.


  • XO Team

    I don't have an immediate solution but the goal for the future is that the timeout cancellation will be clearly visible in logs.


Log in to reply
 

XCP-ng Pro Support

XCP-ng Pro Support