1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00

devmapper: cleanup error reporting

This commit is contained in:
Solomon Hykes 2013-10-18 07:09:13 +00:00
parent 5e363072f5
commit 0ad35c6746

View file

@ -131,40 +131,33 @@ func (devices *DeviceSet) allocateTransactionId() uint64 {
func (devices *DeviceSet) saveMetadata() error { func (devices *DeviceSet) saveMetadata() error {
jsonData, err := json.Marshal(devices.MetaData) jsonData, err := json.Marshal(devices.MetaData)
if err != nil { if err != nil {
utils.Debugf("\n--->Err: %s\n", err) return fmt.Errorf("Error encoding metaadata to json: %s", err)
return err
} }
tmpFile, err := ioutil.TempFile(filepath.Dir(devices.jsonFile()), ".json") tmpFile, err := ioutil.TempFile(filepath.Dir(devices.jsonFile()), ".json")
if err != nil { if err != nil {
utils.Debugf("\n--->Err: %s\n", err) return fmt.Errorf("Error creating metadata file: %s", err)
return err
} }
n, err := tmpFile.Write(jsonData) n, err := tmpFile.Write(jsonData)
if err != nil { if err != nil {
utils.Debugf("\n--->Err: %s\n", err) return fmt.Errorf("Error writing metadata to %s: %s", tmpFile.Name(), err)
return err
} }
if n < len(jsonData) { if n < len(jsonData) {
return io.ErrShortWrite return io.ErrShortWrite
} }
if err := tmpFile.Sync(); err != nil { if err := tmpFile.Sync(); err != nil {
utils.Debugf("\n--->Err: %s\n", err) return fmt.Errorf("Error syncing metadata file %s: %s", tmpFile.Name(), err)
return err
} }
if err := tmpFile.Close(); err != nil { if err := tmpFile.Close(); err != nil {
utils.Debugf("\n--->Err: %s\n", err) return fmt.Errorf("Error closing metadata file %s: %s", tmpFile.Name(), err)
return err
} }
if err := os.Rename(tmpFile.Name(), devices.jsonFile()); err != nil { if err := os.Rename(tmpFile.Name(), devices.jsonFile()); err != nil {
utils.Debugf("\n--->Err: %s\n", err) return fmt.Errorf("Error committing metadata file", err)
return err
} }
if devices.NewTransactionId != devices.TransactionId { if devices.NewTransactionId != devices.TransactionId {
if err = setTransactionId(devices.getPoolDevName(), devices.TransactionId, devices.NewTransactionId); err != nil { if err = setTransactionId(devices.getPoolDevName(), devices.TransactionId, devices.NewTransactionId); err != nil {
utils.Debugf("\n--->Err: %s\n", err) return fmt.Errorf("Error setting devmapper transition ID: %s", err)
return err
} }
devices.TransactionId = devices.NewTransactionId devices.TransactionId = devices.NewTransactionId
} }
@ -655,13 +648,11 @@ func (devices *DeviceSet) MountDevice(hash, path string, readOnly bool) error {
defer devices.Unlock() defer devices.Unlock()
if err := devices.ensureInit(); err != nil { if err := devices.ensureInit(); err != nil {
utils.Debugf("\n--->Err: %s\n", err) return fmt.Errorf("Error initializing devmapper: %s", err)
return err
} }
if err := devices.activateDeviceIfNeeded(hash); err != nil { if err := devices.activateDeviceIfNeeded(hash); err != nil {
utils.Debugf("\n--->Err: %s\n", err) return fmt.Errorf("Error activating devmapper device for '%s': %s", hash, err)
return err
} }
info := devices.Devices[hash] info := devices.Devices[hash]
@ -677,8 +668,7 @@ func (devices *DeviceSet) MountDevice(hash, path string, readOnly bool) error {
err = syscall.Mount(info.DevName(), path, "ext4", flags, "") err = syscall.Mount(info.DevName(), path, "ext4", flags, "")
} }
if err != nil { if err != nil {
utils.Debugf("\n--->Err: %s\n", err) return fmt.Errorf("Error mounting '%s' on '%s': %s", info.DevName(), path, err)
return err
} }
count := devices.activeMounts[path] count := devices.activeMounts[path]