* volume: return error instead of panicking when .dat open fails
When backend.OpenVolumeFile returns an error (e.g. disk below
-minFreeSpace), dataFile is nil. Calling backend.NewDiskFile(nil)
immediately after caused a nil-pointer panic in f.Stat()/f.Name().
Move the existing error check to run right after OpenVolumeFile, before
NewDiskFile is called, so the error is returned cleanly.
Fixesseaweedfs/seaweedfs#11615
* volume: share .dat load error handling
Extract datFileLoadError helper so open and create paths share one check.
* volume: trim dat-open-fail test comments
* volume(rust): cover unopenable .dat load path
---------
Co-authored-by: Chris Lu <chris.lu@gmail.com>