 f1cc4feea6
			
		
	
	f1cc4feea6
	
	
	
		
			
			Signed-off-by: John Howard <jhoward@microsoft.com> This is the maintained version of boltdb, which includes the Windows-specific fix detailed in https://github.com/etcd-io/bbolt/pull/122
		
			
				
	
	
		
			28 lines
		
	
	
		
			519 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			519 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| package bbolt
 | |
| 
 | |
| import (
 | |
| 	"syscall"
 | |
| 	"unsafe"
 | |
| )
 | |
| 
 | |
| const (
 | |
| 	msAsync      = 1 << iota // perform asynchronous writes
 | |
| 	msSync                   // perform synchronous writes
 | |
| 	msInvalidate             // invalidate cached data
 | |
| )
 | |
| 
 | |
| func msync(db *DB) error {
 | |
| 	_, _, errno := syscall.Syscall(syscall.SYS_MSYNC, uintptr(unsafe.Pointer(db.data)), uintptr(db.datasz), msInvalidate)
 | |
| 	if errno != 0 {
 | |
| 		return errno
 | |
| 	}
 | |
| 	return nil
 | |
| }
 | |
| 
 | |
| func fdatasync(db *DB) error {
 | |
| 	if db.data != nil {
 | |
| 		return msync(db)
 | |
| 	}
 | |
| 	return db.file.Sync()
 | |
| }
 |