"time"
)
+var NoSync = os.Getenv("GOCHEESE_NO_SYNC") == "1"
+
func TempFile(dir string) (*os.File, error) {
// Assume that probability of suffix collision is negligible
suffix := strconv.FormatInt(time.Now().UnixNano()+int64(os.Getpid()), 16)
}
func DirSync(dirPath string) error {
+ if NoSync {
+ return nil
+ }
fd, err := os.Open(dirPath)
if err != nil {
return err
dst.Close()
return err
}
- if err = dst.Sync(); err != nil {
- os.Remove(dst.Name())
- dst.Close()
- return err
+ if !NoSync {
+ if err = dst.Sync(); err != nil {
+ os.Remove(dst.Name())
+ dst.Close()
+ return err
+ }
}
dst.Close()
if err = os.Rename(dst.Name(), filePath); err != nil {