apache / opendal

Apache OpenDAL: One Layer, All Storage.
https://opendal.apache.org
Apache License 2.0
3.47k stars 486 forks source link

[WIP] OVFS: Modify error handling #5312

Open zjregee opened 1 week ago

zjregee commented 1 week ago

Which issue does this PR close?

None.

Rationale for this change

Previously, error handling in virtiofs_opendal was a bit messy, and many errors were not used correctly. I hope that error handling in virtiofs_opendal can be unified and standardized in this PR to lay a good foundation for future iterations.

In general, I think virtiofs_opendal errors can be divided into two categories, errors that meet expectations (from opendal or basic checks, such as files that don't exist), and errors that don't meet expectations (from programming or the virtiofs framework, such as requests that can't be resolved). Both types of errors can be wrapped as io::Error or raw_os_error, returned to the caller (virtiofs framework, user, or vfs), and logged in the terminal.

What changes are included in this PR?

Refactor the current error handling in OVFS.

Are there any user-facing changes?

None.