This commit is contained in:
Nuno Cruces
2024-07-20 01:42:50 +01:00
parent b289fca3ca
commit 28f225b32e
7 changed files with 51 additions and 7 deletions

View File

@@ -30,6 +30,7 @@ func (memVFS) Open(name string, flags vfs.OpenFlag) (vfs.File, vfs.OpenFlag, err
vfs.OPEN_TEMP_DB |
vfs.OPEN_TEMP_JOURNAL
if flags&types == 0 {
// notest
return nil, flags, sqlite3.CANTOPEN
}
@@ -136,7 +137,7 @@ func (m *memFile) ReadAt(b []byte, off int64) (n int, err error) {
}
n = copy(b, (*m.data[base])[rest:have])
if n < len(b) {
// Assume reads are page aligned.
// notest // assume reads are page aligned
return 0, io.ErrNoProgress
}
return n, nil
@@ -153,7 +154,7 @@ func (m *memFile) WriteAt(b []byte, off int64) (n int, err error) {
}
n = copy((*m.data[base])[rest:], b)
if n < len(b) {
// Assume writes are page aligned.
// notest // assume writes are page aligned
return n, io.ErrShortWrite
}
if size := off + int64(len(b)); size > m.size {

View File

@@ -16,6 +16,8 @@ const (
_F2FS_FEATURE_ATOMIC_WRITE = 4
)
// notest
func osBatchAtomic(file *os.File) bool {
flags, err := unix.IoctlGetInt(int(file.Fd()), _F2FS_IOC_GET_FEATURES)
return err == nil && flags&_F2FS_FEATURE_ATOMIC_WRITE != 0

View File

@@ -10,6 +10,7 @@ type readerVFS struct{}
func (readerVFS) Open(name string, flags vfs.OpenFlag) (vfs.File, vfs.OpenFlag, error) {
if flags&vfs.OPEN_MAIN_DB == 0 {
// notest
return nil, flags, sqlite3.CANTOPEN
}
readerMtx.RLock()
@@ -21,10 +22,12 @@ func (readerVFS) Open(name string, flags vfs.OpenFlag) (vfs.File, vfs.OpenFlag,
}
func (readerVFS) Delete(name string, dirSync bool) error {
// notest
return sqlite3.IOERR_DELETE
}
func (readerVFS) Access(name string, flag vfs.AccessFlag) (bool, error) {
// notest
return false, nil
}
@@ -39,30 +42,37 @@ func (readerFile) Close() error {
}
func (readerFile) WriteAt(b []byte, off int64) (n int, err error) {
// notest
return 0, sqlite3.READONLY
}
func (readerFile) Truncate(size int64) error {
// notest
return sqlite3.READONLY
}
func (readerFile) Sync(flag vfs.SyncFlag) error {
// notest
return nil
}
func (readerFile) Lock(lock vfs.LockLevel) error {
// notest
return nil
}
func (readerFile) Unlock(lock vfs.LockLevel) error {
// notest
return nil
}
func (readerFile) CheckReservedLock() (bool, error) {
// notest
return false, nil
}
func (readerFile) SectorSize() int {
// notest
return 0
}