comment out until someone decides to tackle #2285 (#2760)

current code results in panic and we certainly don't want that.
https://github.com/tendermint/tendermint/pull/2286#issuecomment-418281846
This commit is contained in:
Anton Kaliaev 2018-11-17 03:17:07 +04:00 committed by Ethan Buchman
parent 0d5e0d2f13
commit 60018d6148
4 changed files with 55 additions and 63 deletions

View File

@ -8,7 +8,6 @@ import (
"time" "time"
cmn "github.com/tendermint/tendermint/libs/common" cmn "github.com/tendermint/tendermint/libs/common"
"github.com/tendermint/tendermint/libs/errors"
) )
/* AutoFile usage /* AutoFile usage
@ -157,13 +156,13 @@ func (af *AutoFile) openFile() error {
if err != nil { if err != nil {
return err return err
} }
fileInfo, err := file.Stat() // fileInfo, err := file.Stat()
if err != nil { // if err != nil {
return err // return err
} // }
if fileInfo.Mode() != autoFilePerms { // if fileInfo.Mode() != autoFilePerms {
return errors.NewErrPermissionsChanged(file.Name(), fileInfo.Mode(), autoFilePerms) // return errors.NewErrPermissionsChanged(file.Name(), fileInfo.Mode(), autoFilePerms)
} // }
af.file = file af.file = file
return nil return nil
} }

View File

@ -10,7 +10,6 @@ import (
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
cmn "github.com/tendermint/tendermint/libs/common" cmn "github.com/tendermint/tendermint/libs/common"
"github.com/tendermint/tendermint/libs/errors"
) )
func TestSIGHUP(t *testing.T) { func TestSIGHUP(t *testing.T) {
@ -58,32 +57,32 @@ func TestSIGHUP(t *testing.T) {
} }
} }
// Manually modify file permissions, close, and reopen using autofile: // // Manually modify file permissions, close, and reopen using autofile:
// We expect the file permissions to be changed back to the intended perms. // // We expect the file permissions to be changed back to the intended perms.
func TestOpenAutoFilePerms(t *testing.T) { // func TestOpenAutoFilePerms(t *testing.T) {
file, err := ioutil.TempFile("", "permission_test") // file, err := ioutil.TempFile("", "permission_test")
require.NoError(t, err) // require.NoError(t, err)
err = file.Close() // err = file.Close()
require.NoError(t, err) // require.NoError(t, err)
name := file.Name() // name := file.Name()
// open and change permissions // // open and change permissions
af, err := OpenAutoFile(name) // af, err := OpenAutoFile(name)
require.NoError(t, err) // require.NoError(t, err)
err = af.file.Chmod(0755) // err = af.file.Chmod(0755)
require.NoError(t, err) // require.NoError(t, err)
err = af.Close() // err = af.Close()
require.NoError(t, err) // require.NoError(t, err)
// reopen and expect an ErrPermissionsChanged as Cause // // reopen and expect an ErrPermissionsChanged as Cause
af, err = OpenAutoFile(name) // af, err = OpenAutoFile(name)
require.Error(t, err) // require.Error(t, err)
if e, ok := err.(*errors.ErrPermissionsChanged); ok { // if e, ok := err.(*errors.ErrPermissionsChanged); ok {
t.Logf("%v", e) // t.Logf("%v", e)
} else { // } else {
t.Errorf("unexpected error %v", e) // t.Errorf("unexpected error %v", e)
} // }
} // }
func TestAutoFileSize(t *testing.T) { func TestAutoFileSize(t *testing.T) {
// First, create an AutoFile writing to a tempfile dir // First, create an AutoFile writing to a tempfile dir

View File

@ -12,7 +12,6 @@ import (
"github.com/pkg/errors" "github.com/pkg/errors"
cmn "github.com/tendermint/tendermint/libs/common" cmn "github.com/tendermint/tendermint/libs/common"
tmerrors "github.com/tendermint/tendermint/libs/errors"
) )
const ( const (
@ -207,13 +206,13 @@ func write(path string, d []byte) error {
return err return err
} }
defer f.Close() defer f.Close()
fInfo, err := f.Stat() // fInfo, err := f.Stat()
if err != nil { // if err != nil {
return err // return err
} // }
if fInfo.Mode() != keyPerm { // if fInfo.Mode() != keyPerm {
return tmerrors.NewErrPermissionsChanged(f.Name(), keyPerm, fInfo.Mode()) // return tmerrors.NewErrPermissionsChanged(f.Name(), keyPerm, fInfo.Mode())
} // }
_, err = f.Write(d) _, err = f.Write(d)
if err != nil { if err != nil {
return err return err

View File

@ -1,26 +1,21 @@
// Package errors contains errors that are thrown across packages. // Package errors contains errors that are thrown across packages.
package errors package errors
import ( // // ErrPermissionsChanged occurs if the file permission have changed since the file was created.
"fmt" // type ErrPermissionsChanged struct {
"os" // name string
) // got, want os.FileMode
// }
// ErrPermissionsChanged occurs if the file permission have changed since the file was created. // func NewErrPermissionsChanged(name string, got, want os.FileMode) *ErrPermissionsChanged {
type ErrPermissionsChanged struct { // return &ErrPermissionsChanged{name: name, got: got, want: want}
name string // }
got, want os.FileMode
}
func NewErrPermissionsChanged(name string, got, want os.FileMode) *ErrPermissionsChanged { // func (e ErrPermissionsChanged) Error() string {
return &ErrPermissionsChanged{name: name, got: got, want: want} // return fmt.Sprintf(
} // "file: [%v]\nexpected file permissions: %v, got: %v",
// e.name,
func (e ErrPermissionsChanged) Error() string { // e.want,
return fmt.Sprintf( // e.got,
"file: [%v]\nexpected file permissions: %v, got: %v", // )
e.name, // }
e.want,
e.got,
)
}