Documentation ¶
Index ¶
- Constants
- func FileTypeFilename(t litefs.FileType) string
- func ParseFilename(name string) (dbName string, fileType litefs.FileType)
- func ToError(err error) error
- type DatabaseHandle
- func (h *DatabaseHandle) Flush(ctx context.Context, req *fuse.FlushRequest) error
- func (h *DatabaseHandle) Lock(ctx context.Context, req *fuse.LockRequest) error
- func (h *DatabaseHandle) LockWait(ctx context.Context, req *fuse.LockWaitRequest) (err error)
- func (h *DatabaseHandle) QueryLock(ctx context.Context, req *fuse.QueryLockRequest, resp *fuse.QueryLockResponse) error
- func (h *DatabaseHandle) Read(ctx context.Context, req *fuse.ReadRequest, resp *fuse.ReadResponse) error
- func (h *DatabaseHandle) Release(ctx context.Context, req *fuse.ReleaseRequest) error
- func (h *DatabaseHandle) Unlock(ctx context.Context, req *fuse.UnlockRequest) error
- func (h *DatabaseHandle) Write(ctx context.Context, req *fuse.WriteRequest, resp *fuse.WriteResponse) error
- type DatabaseNode
- func (n *DatabaseNode) Attr(ctx context.Context, attr *fuse.Attr) error
- func (n *DatabaseNode) Forget()
- func (n *DatabaseNode) Fsync(ctx context.Context, req *fuse.FsyncRequest) error
- func (n *DatabaseNode) Getxattr(ctx context.Context, req *fuse.GetxattrRequest, resp *fuse.GetxattrResponse) error
- func (n *DatabaseNode) Listxattr(ctx context.Context, req *fuse.ListxattrRequest, resp *fuse.ListxattrResponse) error
- func (n *DatabaseNode) Open(ctx context.Context, req *fuse.OpenRequest, resp *fuse.OpenResponse) (fs.Handle, error)
- func (n *DatabaseNode) Poll(ctx context.Context, req *fuse.PollRequest, resp *fuse.PollResponse) error
- func (n *DatabaseNode) Removexattr(ctx context.Context, req *fuse.RemovexattrRequest) error
- func (n *DatabaseNode) Setattr(ctx context.Context, req *fuse.SetattrRequest, resp *fuse.SetattrResponse) error
- func (n *DatabaseNode) Setxattr(ctx context.Context, req *fuse.SetxattrRequest) error
- type Error
- type FileSystem
- func (fsys *FileSystem) InvalidateDB(db *litefs.DB) error
- func (fsys *FileSystem) InvalidateDBRange(db *litefs.DB, offset, size int64) error
- func (fsys *FileSystem) InvalidateEntry(name string) error
- func (fsys *FileSystem) InvalidateLag() error
- func (fsys *FileSystem) InvalidatePos(db *litefs.DB) error
- func (fsys *FileSystem) InvalidateSHM(db *litefs.DB) error
- func (fsys *FileSystem) Mount() (err error)
- func (fsys *FileSystem) Path() string
- func (fsys *FileSystem) Root() (fs.Node, error)
- func (fsys *FileSystem) Statfs(ctx context.Context, req *fuse.StatfsRequest, resp *fuse.StatfsResponse) error
- func (fsys *FileSystem) Store() *litefs.Store
- func (fsys *FileSystem) Unmount() (err error)
- type JournalHandle
- type JournalNode
- func (n *JournalNode) Attr(ctx context.Context, attr *fuse.Attr) error
- func (n *JournalNode) Forget()
- func (n *JournalNode) Fsync(ctx context.Context, req *fuse.FsyncRequest) error
- func (n *JournalNode) Getxattr(ctx context.Context, req *fuse.GetxattrRequest, resp *fuse.GetxattrResponse) error
- func (n *JournalNode) Listxattr(ctx context.Context, req *fuse.ListxattrRequest, resp *fuse.ListxattrResponse) error
- func (n *JournalNode) Open(ctx context.Context, req *fuse.OpenRequest, resp *fuse.OpenResponse) (fs.Handle, error)
- func (n *JournalNode) Poll(ctx context.Context, req *fuse.PollRequest, resp *fuse.PollResponse) error
- func (n *JournalNode) Removexattr(ctx context.Context, req *fuse.RemovexattrRequest) error
- func (n *JournalNode) Setattr(ctx context.Context, req *fuse.SetattrRequest, resp *fuse.SetattrResponse) error
- func (n *JournalNode) Setxattr(ctx context.Context, req *fuse.SetxattrRequest) error
- type LagNode
- func (n *LagNode) Attr(ctx context.Context, attr *fuse.Attr) error
- func (n *LagNode) Forget()
- func (n *LagNode) Getxattr(ctx context.Context, req *fuse.GetxattrRequest, resp *fuse.GetxattrResponse) error
- func (n *LagNode) Listxattr(ctx context.Context, req *fuse.ListxattrRequest, resp *fuse.ListxattrResponse) error
- func (n *LagNode) Poll(ctx context.Context, req *fuse.PollRequest, resp *fuse.PollResponse) error
- func (n *LagNode) ReadAll(ctx context.Context) ([]byte, error)
- func (n *LagNode) Removexattr(ctx context.Context, req *fuse.RemovexattrRequest) error
- func (n *LagNode) Setxattr(ctx context.Context, req *fuse.SetxattrRequest) error
- type LockHandle
- func (h *LockHandle) Flush(ctx context.Context, req *fuse.FlushRequest) error
- func (h *LockHandle) Lock(ctx context.Context, req *fuse.LockRequest) error
- func (h *LockHandle) LockWait(ctx context.Context, req *fuse.LockWaitRequest) (err error)
- func (h *LockHandle) QueryLock(ctx context.Context, req *fuse.QueryLockRequest, resp *fuse.QueryLockResponse) error
- func (h *LockHandle) Read(ctx context.Context, req *fuse.ReadRequest, resp *fuse.ReadResponse) error
- func (h *LockHandle) Release(ctx context.Context, req *fuse.ReleaseRequest) error
- func (h *LockHandle) Unlock(ctx context.Context, req *fuse.UnlockRequest) error
- func (h *LockHandle) Write(ctx context.Context, req *fuse.WriteRequest, resp *fuse.WriteResponse) error
- type LockNode
- func (n *LockNode) Attr(ctx context.Context, attr *fuse.Attr) error
- func (n *LockNode) Forget()
- func (n *LockNode) Getxattr(ctx context.Context, req *fuse.GetxattrRequest, resp *fuse.GetxattrResponse) error
- func (n *LockNode) Listxattr(ctx context.Context, req *fuse.ListxattrRequest, resp *fuse.ListxattrResponse) error
- func (n *LockNode) Open(ctx context.Context, req *fuse.OpenRequest, resp *fuse.OpenResponse) (fs.Handle, error)
- func (n *LockNode) Poll(ctx context.Context, req *fuse.PollRequest, resp *fuse.PollResponse) error
- func (n *LockNode) Removexattr(ctx context.Context, req *fuse.RemovexattrRequest) error
- func (n *LockNode) Setxattr(ctx context.Context, req *fuse.SetxattrRequest) error
- type PosNode
- func (n *PosNode) Attr(ctx context.Context, attr *fuse.Attr) error
- func (n *PosNode) Forget()
- func (n *PosNode) Getxattr(ctx context.Context, req *fuse.GetxattrRequest, resp *fuse.GetxattrResponse) error
- func (n *PosNode) Listxattr(ctx context.Context, req *fuse.ListxattrRequest, resp *fuse.ListxattrResponse) error
- func (n *PosNode) Open(ctx context.Context, req *fuse.OpenRequest, resp *fuse.OpenResponse) (fs.Handle, error)
- func (n *PosNode) Poll(ctx context.Context, req *fuse.PollRequest, resp *fuse.PollResponse) error
- func (n *PosNode) Read(ctx context.Context, req *fuse.ReadRequest, resp *fuse.ReadResponse) error
- func (n *PosNode) Removexattr(ctx context.Context, req *fuse.RemovexattrRequest) error
- func (n *PosNode) Setxattr(ctx context.Context, req *fuse.SetxattrRequest) error
- type PrimaryNode
- func (n *PrimaryNode) Attr(ctx context.Context, attr *fuse.Attr) error
- func (n *PrimaryNode) Forget()
- func (n *PrimaryNode) Getxattr(ctx context.Context, req *fuse.GetxattrRequest, resp *fuse.GetxattrResponse) error
- func (n *PrimaryNode) Listxattr(ctx context.Context, req *fuse.ListxattrRequest, resp *fuse.ListxattrResponse) error
- func (n *PrimaryNode) Poll(ctx context.Context, req *fuse.PollRequest, resp *fuse.PollResponse) error
- func (n *PrimaryNode) ReadAll(ctx context.Context) ([]byte, error)
- func (n *PrimaryNode) Removexattr(ctx context.Context, req *fuse.RemovexattrRequest) error
- func (n *PrimaryNode) Setxattr(ctx context.Context, req *fuse.SetxattrRequest) error
- type RootHandle
- type RootNode
- func (n *RootNode) Attr(ctx context.Context, attr *fuse.Attr) error
- func (n *RootNode) Create(ctx context.Context, req *fuse.CreateRequest, resp *fuse.CreateResponse) (node fs.Node, h fs.Handle, err error)
- func (n *RootNode) ForgetNode(node fs.Node)
- func (n *RootNode) ForgetNodeByName(name string)
- func (n *RootNode) Fsync(ctx context.Context, req *fuse.FsyncRequest) error
- func (n *RootNode) Getxattr(ctx context.Context, req *fuse.GetxattrRequest, resp *fuse.GetxattrResponse) error
- func (n *RootNode) Listxattr(ctx context.Context, req *fuse.ListxattrRequest, resp *fuse.ListxattrResponse) error
- func (n *RootNode) Lookup(ctx context.Context, name string) (node fs.Node, err error)
- func (n *RootNode) Node(name string) fs.Node
- func (n *RootNode) Open(ctx context.Context, req *fuse.OpenRequest, resp *fuse.OpenResponse) (fs.Handle, error)
- func (n *RootNode) Poll(ctx context.Context, req *fuse.PollRequest, resp *fuse.PollResponse) error
- func (n *RootNode) Remove(ctx context.Context, req *fuse.RemoveRequest) (err error)
- func (n *RootNode) Removexattr(ctx context.Context, req *fuse.RemovexattrRequest) error
- func (n *RootNode) Setxattr(ctx context.Context, req *fuse.SetxattrRequest) error
- type SHMHandle
- func (h *SHMHandle) Flush(ctx context.Context, req *fuse.FlushRequest) error
- func (h *SHMHandle) Lock(ctx context.Context, req *fuse.LockRequest) error
- func (h *SHMHandle) LockWait(ctx context.Context, req *fuse.LockWaitRequest) error
- func (h *SHMHandle) QueryLock(ctx context.Context, req *fuse.QueryLockRequest, resp *fuse.QueryLockResponse) error
- func (h *SHMHandle) Read(ctx context.Context, req *fuse.ReadRequest, resp *fuse.ReadResponse) error
- func (h *SHMHandle) Release(ctx context.Context, req *fuse.ReleaseRequest) error
- func (h *SHMHandle) Unlock(ctx context.Context, req *fuse.UnlockRequest) (err error)
- func (h *SHMHandle) Write(ctx context.Context, req *fuse.WriteRequest, resp *fuse.WriteResponse) error
- type SHMNode
- func (n *SHMNode) Attr(ctx context.Context, attr *fuse.Attr) error
- func (n *SHMNode) Forget()
- func (n *SHMNode) Fsync(ctx context.Context, req *fuse.FsyncRequest) error
- func (n *SHMNode) Getxattr(ctx context.Context, req *fuse.GetxattrRequest, resp *fuse.GetxattrResponse) error
- func (n *SHMNode) Listxattr(ctx context.Context, req *fuse.ListxattrRequest, resp *fuse.ListxattrResponse) error
- func (n *SHMNode) Open(ctx context.Context, req *fuse.OpenRequest, resp *fuse.OpenResponse) (fs.Handle, error)
- func (n *SHMNode) Poll(ctx context.Context, req *fuse.PollRequest, resp *fuse.PollResponse) error
- func (n *SHMNode) Removexattr(ctx context.Context, req *fuse.RemovexattrRequest) error
- func (n *SHMNode) Setattr(ctx context.Context, req *fuse.SetattrRequest, resp *fuse.SetattrResponse) error
- func (n *SHMNode) Setxattr(ctx context.Context, req *fuse.SetxattrRequest) error
- type WALHandle
- type WALNode
- func (n *WALNode) Attr(ctx context.Context, attr *fuse.Attr) error
- func (n *WALNode) Forget()
- func (n *WALNode) Fsync(ctx context.Context, req *fuse.FsyncRequest) error
- func (n *WALNode) Getxattr(ctx context.Context, req *fuse.GetxattrRequest, resp *fuse.GetxattrResponse) error
- func (n *WALNode) Listxattr(ctx context.Context, req *fuse.ListxattrRequest, resp *fuse.ListxattrResponse) error
- func (n *WALNode) Open(ctx context.Context, req *fuse.OpenRequest, resp *fuse.OpenResponse) (fs.Handle, error)
- func (n *WALNode) Poll(ctx context.Context, req *fuse.PollRequest, resp *fuse.PollResponse) error
- func (n *WALNode) Removexattr(ctx context.Context, req *fuse.RemovexattrRequest) error
- func (n *WALNode) Setattr(ctx context.Context, req *fuse.SetattrRequest, resp *fuse.SetattrResponse) error
- func (n *WALNode) Setxattr(ctx context.Context, req *fuse.SetxattrRequest) error
Constants ¶
const LagFilename = ".lag"
const PosFileSize = 34
PosFileSize is the size, in bytes, of the "-pos" file.
const PrimaryFilename = ".primary"
PrimaryFilename is the name of the file that holds the current primary.
const RootInode = 1
Variables ¶
This section is empty.
Functions ¶
func FileTypeFilename ¶
FileTypeFilename returns the base name for the internal data file.
func ParseFilename ¶
ParseFilename parses a base name into database name & file type parts.
Types ¶
type DatabaseHandle ¶ added in v0.1.1
type DatabaseHandle struct {
// contains filtered or unexported fields
}
DatabaseHandle represents a file handle to a SQLite database file.
func (*DatabaseHandle) Flush ¶ added in v0.1.1
func (h *DatabaseHandle) Flush(ctx context.Context, req *fuse.FlushRequest) error
func (*DatabaseHandle) Lock ¶ added in v0.1.1
func (h *DatabaseHandle) Lock(ctx context.Context, req *fuse.LockRequest) error
func (*DatabaseHandle) LockWait ¶ added in v0.1.1
func (h *DatabaseHandle) LockWait(ctx context.Context, req *fuse.LockWaitRequest) (err error)
func (*DatabaseHandle) QueryLock ¶ added in v0.1.1
func (h *DatabaseHandle) QueryLock(ctx context.Context, req *fuse.QueryLockRequest, resp *fuse.QueryLockResponse) error
func (*DatabaseHandle) Read ¶ added in v0.1.1
func (h *DatabaseHandle) Read(ctx context.Context, req *fuse.ReadRequest, resp *fuse.ReadResponse) error
func (*DatabaseHandle) Release ¶ added in v0.1.1
func (h *DatabaseHandle) Release(ctx context.Context, req *fuse.ReleaseRequest) error
func (*DatabaseHandle) Unlock ¶ added in v0.1.1
func (h *DatabaseHandle) Unlock(ctx context.Context, req *fuse.UnlockRequest) error
func (*DatabaseHandle) Write ¶ added in v0.1.1
func (h *DatabaseHandle) Write(ctx context.Context, req *fuse.WriteRequest, resp *fuse.WriteResponse) error
type DatabaseNode ¶ added in v0.1.1
type DatabaseNode struct {
// contains filtered or unexported fields
}
DatabaseNode represents a SQLite database file.
func (*DatabaseNode) Forget ¶ added in v0.1.1
func (n *DatabaseNode) Forget()
func (*DatabaseNode) Fsync ¶ added in v0.1.1
func (n *DatabaseNode) Fsync(ctx context.Context, req *fuse.FsyncRequest) error
func (*DatabaseNode) Getxattr ¶ added in v0.2.0
func (n *DatabaseNode) Getxattr(ctx context.Context, req *fuse.GetxattrRequest, resp *fuse.GetxattrResponse) error
func (*DatabaseNode) Listxattr ¶ added in v0.2.0
func (n *DatabaseNode) Listxattr(ctx context.Context, req *fuse.ListxattrRequest, resp *fuse.ListxattrResponse) error
func (*DatabaseNode) Open ¶ added in v0.1.1
func (n *DatabaseNode) Open(ctx context.Context, req *fuse.OpenRequest, resp *fuse.OpenResponse) (fs.Handle, error)
func (*DatabaseNode) Poll ¶ added in v0.2.0
func (n *DatabaseNode) Poll(ctx context.Context, req *fuse.PollRequest, resp *fuse.PollResponse) error
func (*DatabaseNode) Removexattr ¶ added in v0.2.0
func (n *DatabaseNode) Removexattr(ctx context.Context, req *fuse.RemovexattrRequest) error
func (*DatabaseNode) Setattr ¶ added in v0.3.0
func (n *DatabaseNode) Setattr(ctx context.Context, req *fuse.SetattrRequest, resp *fuse.SetattrResponse) error
func (*DatabaseNode) Setxattr ¶ added in v0.2.0
func (n *DatabaseNode) Setxattr(ctx context.Context, req *fuse.SetxattrRequest) error
type Error ¶ added in v0.1.1
type Error struct {
// contains filtered or unexported fields
}
Error wraps an error to return a "No Entry" FUSE error.
type FileSystem ¶
type FileSystem struct { // If true, allows other users to access the FUSE mount. // Must set "user_allow_other" option in /etc/fuse.conf as well. AllowOther bool // User & Group ID for all files in the filesystem. Uid int Gid int // If true, enables debug logging. Debug bool // contains filtered or unexported fields }
FileSystem represents a raw interface to the FUSE file system.
func NewFileSystem ¶
func NewFileSystem(path string, store *litefs.Store) *FileSystem
NewFileSystem returns a new instance of FileSystem.
func (*FileSystem) InvalidateDB ¶ added in v0.1.1
func (fsys *FileSystem) InvalidateDB(db *litefs.DB) error
InvalidateDB invalidates the entire database from the kernel page cache.
func (*FileSystem) InvalidateDBRange ¶ added in v0.3.0
func (fsys *FileSystem) InvalidateDBRange(db *litefs.DB, offset, size int64) error
InvalidateDBRange invalidates a database in the kernel page cache.
func (*FileSystem) InvalidateEntry ¶ added in v0.3.0
func (fsys *FileSystem) InvalidateEntry(name string) error
InvalidateEntry removes the file from the cache.
func (*FileSystem) InvalidateLag ¶ added in v0.5.0
func (fsys *FileSystem) InvalidateLag() error
func (*FileSystem) InvalidatePos ¶ added in v0.2.0
func (fsys *FileSystem) InvalidatePos(db *litefs.DB) error
InvalidatePos invalidates the position file in the kernel page cache.
func (*FileSystem) InvalidateSHM ¶ added in v0.3.0
func (fsys *FileSystem) InvalidateSHM(db *litefs.DB) error
InvalidateSHM invalidates the SHM file in the kernel page cache.
func (*FileSystem) Mount ¶
func (fsys *FileSystem) Mount() (err error)
Mount mounts the file system to the mount point.
func (*FileSystem) Path ¶
func (fsys *FileSystem) Path() string
Path returns the path to the mount point.
func (*FileSystem) Root ¶ added in v0.1.1
func (fsys *FileSystem) Root() (fs.Node, error)
Root returns the root directory in the file system.
func (*FileSystem) Statfs ¶ added in v0.2.0
func (fsys *FileSystem) Statfs(ctx context.Context, req *fuse.StatfsRequest, resp *fuse.StatfsResponse) error
Statfs is a passthrough to the underlying file system.
func (*FileSystem) Store ¶
func (fsys *FileSystem) Store() *litefs.Store
Store returns the underlying store.
func (*FileSystem) Unmount ¶
func (fsys *FileSystem) Unmount() (err error)
Unmount unmounts the file system.
type JournalHandle ¶ added in v0.1.1
type JournalHandle struct {
// contains filtered or unexported fields
}
JournalHandle represents a file handle to a SQLite journal file.
func (*JournalHandle) Read ¶ added in v0.1.1
func (h *JournalHandle) Read(ctx context.Context, req *fuse.ReadRequest, resp *fuse.ReadResponse) error
func (*JournalHandle) Release ¶ added in v0.1.1
func (h *JournalHandle) Release(ctx context.Context, req *fuse.ReleaseRequest) error
func (*JournalHandle) Write ¶ added in v0.1.1
func (h *JournalHandle) Write(ctx context.Context, req *fuse.WriteRequest, resp *fuse.WriteResponse) error
type JournalNode ¶ added in v0.1.1
type JournalNode struct {
// contains filtered or unexported fields
}
JournalNode represents a SQLite rollback journal file.
func (*JournalNode) Forget ¶ added in v0.1.1
func (n *JournalNode) Forget()
func (*JournalNode) Fsync ¶ added in v0.1.1
func (n *JournalNode) Fsync(ctx context.Context, req *fuse.FsyncRequest) error
Fsync performs an fsync() on the underlying file.
func (*JournalNode) Getxattr ¶ added in v0.2.0
func (n *JournalNode) Getxattr(ctx context.Context, req *fuse.GetxattrRequest, resp *fuse.GetxattrResponse) error
func (*JournalNode) Listxattr ¶ added in v0.2.0
func (n *JournalNode) Listxattr(ctx context.Context, req *fuse.ListxattrRequest, resp *fuse.ListxattrResponse) error
func (*JournalNode) Open ¶ added in v0.1.1
func (n *JournalNode) Open(ctx context.Context, req *fuse.OpenRequest, resp *fuse.OpenResponse) (fs.Handle, error)
func (*JournalNode) Poll ¶ added in v0.2.0
func (n *JournalNode) Poll(ctx context.Context, req *fuse.PollRequest, resp *fuse.PollResponse) error
func (*JournalNode) Removexattr ¶ added in v0.2.0
func (n *JournalNode) Removexattr(ctx context.Context, req *fuse.RemovexattrRequest) error
func (*JournalNode) Setattr ¶ added in v0.1.1
func (n *JournalNode) Setattr(ctx context.Context, req *fuse.SetattrRequest, resp *fuse.SetattrResponse) error
func (*JournalNode) Setxattr ¶ added in v0.2.0
func (n *JournalNode) Setxattr(ctx context.Context, req *fuse.SetxattrRequest) error
type LagNode ¶ added in v0.5.0
type LagNode struct {
// contains filtered or unexported fields
}
func (*LagNode) Getxattr ¶ added in v0.5.0
func (n *LagNode) Getxattr(ctx context.Context, req *fuse.GetxattrRequest, resp *fuse.GetxattrResponse) error
func (*LagNode) Listxattr ¶ added in v0.5.0
func (n *LagNode) Listxattr(ctx context.Context, req *fuse.ListxattrRequest, resp *fuse.ListxattrResponse) error
func (*LagNode) Poll ¶ added in v0.5.0
func (n *LagNode) Poll(ctx context.Context, req *fuse.PollRequest, resp *fuse.PollResponse) error
func (*LagNode) Removexattr ¶ added in v0.5.0
type LockHandle ¶ added in v0.4.0
type LockHandle struct {
// contains filtered or unexported fields
}
LockHandle represents a file handle to a SQLite database file.
func (*LockHandle) Flush ¶ added in v0.4.0
func (h *LockHandle) Flush(ctx context.Context, req *fuse.FlushRequest) error
func (*LockHandle) Lock ¶ added in v0.4.0
func (h *LockHandle) Lock(ctx context.Context, req *fuse.LockRequest) error
func (*LockHandle) LockWait ¶ added in v0.4.0
func (h *LockHandle) LockWait(ctx context.Context, req *fuse.LockWaitRequest) (err error)
func (*LockHandle) QueryLock ¶ added in v0.4.0
func (h *LockHandle) QueryLock(ctx context.Context, req *fuse.QueryLockRequest, resp *fuse.QueryLockResponse) error
func (*LockHandle) Read ¶ added in v0.4.0
func (h *LockHandle) Read(ctx context.Context, req *fuse.ReadRequest, resp *fuse.ReadResponse) error
func (*LockHandle) Release ¶ added in v0.4.0
func (h *LockHandle) Release(ctx context.Context, req *fuse.ReleaseRequest) error
func (*LockHandle) Unlock ¶ added in v0.4.0
func (h *LockHandle) Unlock(ctx context.Context, req *fuse.UnlockRequest) error
func (*LockHandle) Write ¶ added in v0.4.0
func (h *LockHandle) Write(ctx context.Context, req *fuse.WriteRequest, resp *fuse.WriteResponse) error
type LockNode ¶ added in v0.4.0
type LockNode struct {
// contains filtered or unexported fields
}
LockNode represents a file used for non-standard SQLite locks. A separate file is needed because SQLite does not use OFD locks so cloing a handle will also release all locks.
func (*LockNode) Getxattr ¶ added in v0.4.0
func (n *LockNode) Getxattr(ctx context.Context, req *fuse.GetxattrRequest, resp *fuse.GetxattrResponse) error
func (*LockNode) Listxattr ¶ added in v0.4.0
func (n *LockNode) Listxattr(ctx context.Context, req *fuse.ListxattrRequest, resp *fuse.ListxattrResponse) error
func (*LockNode) Open ¶ added in v0.4.0
func (n *LockNode) Open(ctx context.Context, req *fuse.OpenRequest, resp *fuse.OpenResponse) (fs.Handle, error)
func (*LockNode) Poll ¶ added in v0.4.0
func (n *LockNode) Poll(ctx context.Context, req *fuse.PollRequest, resp *fuse.PollResponse) error
func (*LockNode) Removexattr ¶ added in v0.4.0
type PosNode ¶ added in v0.2.0
type PosNode struct {
// contains filtered or unexported fields
}
PosNode represents a file that returns the current position of the database.
func (*PosNode) Getxattr ¶ added in v0.2.0
func (n *PosNode) Getxattr(ctx context.Context, req *fuse.GetxattrRequest, resp *fuse.GetxattrResponse) error
func (*PosNode) Listxattr ¶ added in v0.2.0
func (n *PosNode) Listxattr(ctx context.Context, req *fuse.ListxattrRequest, resp *fuse.ListxattrResponse) error
func (*PosNode) Open ¶ added in v0.2.0
func (n *PosNode) Open(ctx context.Context, req *fuse.OpenRequest, resp *fuse.OpenResponse) (fs.Handle, error)
func (*PosNode) Poll ¶ added in v0.2.0
func (n *PosNode) Poll(ctx context.Context, req *fuse.PollRequest, resp *fuse.PollResponse) error
func (*PosNode) Read ¶ added in v0.2.0
func (n *PosNode) Read(ctx context.Context, req *fuse.ReadRequest, resp *fuse.ReadResponse) error
func (*PosNode) Removexattr ¶ added in v0.2.0
type PrimaryNode ¶ added in v0.1.1
type PrimaryNode struct {
// contains filtered or unexported fields
}
PrimaryNode represents a file for returning the current primary node.
func (*PrimaryNode) Forget ¶ added in v0.1.1
func (n *PrimaryNode) Forget()
func (*PrimaryNode) Getxattr ¶ added in v0.2.0
func (n *PrimaryNode) Getxattr(ctx context.Context, req *fuse.GetxattrRequest, resp *fuse.GetxattrResponse) error
func (*PrimaryNode) Listxattr ¶ added in v0.2.0
func (n *PrimaryNode) Listxattr(ctx context.Context, req *fuse.ListxattrRequest, resp *fuse.ListxattrResponse) error
func (*PrimaryNode) Poll ¶ added in v0.2.0
func (n *PrimaryNode) Poll(ctx context.Context, req *fuse.PollRequest, resp *fuse.PollResponse) error
func (*PrimaryNode) ReadAll ¶ added in v0.1.1
func (n *PrimaryNode) ReadAll(ctx context.Context) ([]byte, error)
func (*PrimaryNode) Removexattr ¶ added in v0.2.0
func (n *PrimaryNode) Removexattr(ctx context.Context, req *fuse.RemovexattrRequest) error
func (*PrimaryNode) Setxattr ¶ added in v0.2.0
func (n *PrimaryNode) Setxattr(ctx context.Context, req *fuse.SetxattrRequest) error
type RootHandle ¶ added in v0.1.1
type RootHandle struct {
// contains filtered or unexported fields
}
RootHandle represents a directory handle for the root directory.
func NewRootHandle ¶ added in v0.1.1
func NewRootHandle(node *RootNode) *RootHandle
NewRootHandle returns a new instance of RootHandle.
func (*RootHandle) ReadDirAll ¶ added in v0.1.1
type RootNode ¶ added in v0.1.1
type RootNode struct {
// contains filtered or unexported fields
}
RootNode represents the root directory of the FUSE mount.
func (*RootNode) ForgetNode ¶ added in v0.1.1
ForgetNode removes the node from the node map.
func (*RootNode) ForgetNodeByName ¶ added in v0.4.0
ForgetNodeByName removes the node from the node map by name.
func (*RootNode) Fsync ¶ added in v0.1.1
Fsync is a no-op as directory sync is handled by the file. This is required as the database files are grouped by database internally.
func (*RootNode) Getxattr ¶ added in v0.2.0
func (n *RootNode) Getxattr(ctx context.Context, req *fuse.GetxattrRequest, resp *fuse.GetxattrResponse) error
func (*RootNode) Listxattr ¶ added in v0.2.0
func (n *RootNode) Listxattr(ctx context.Context, req *fuse.ListxattrRequest, resp *fuse.ListxattrResponse) error
func (*RootNode) Node ¶ added in v0.1.1
Node returns a child node by filename. Returns nil if it does not exist.
func (*RootNode) Open ¶ added in v0.1.1
func (n *RootNode) Open(ctx context.Context, req *fuse.OpenRequest, resp *fuse.OpenResponse) (fs.Handle, error)
func (*RootNode) Poll ¶ added in v0.2.0
func (n *RootNode) Poll(ctx context.Context, req *fuse.PollRequest, resp *fuse.PollResponse) error
func (*RootNode) Remove ¶ added in v0.1.1
Remove deletes the file from disk. This is only supported on the journal file currently.
func (*RootNode) Removexattr ¶ added in v0.2.0
type SHMHandle ¶ added in v0.3.0
type SHMHandle struct {
// contains filtered or unexported fields
}
SHMHandle represents a file handle to a SQLite database file.
func (*SHMHandle) QueryLock ¶ added in v0.3.0
func (h *SHMHandle) QueryLock(ctx context.Context, req *fuse.QueryLockRequest, resp *fuse.QueryLockResponse) error
func (*SHMHandle) Read ¶ added in v0.3.0
func (h *SHMHandle) Read(ctx context.Context, req *fuse.ReadRequest, resp *fuse.ReadResponse) error
func (*SHMHandle) Write ¶ added in v0.3.0
func (h *SHMHandle) Write(ctx context.Context, req *fuse.WriteRequest, resp *fuse.WriteResponse) error
type SHMNode ¶ added in v0.3.0
type SHMNode struct {
// contains filtered or unexported fields
}
SHMNode represents a SQLite database file.
func (*SHMNode) Getxattr ¶ added in v0.3.0
func (n *SHMNode) Getxattr(ctx context.Context, req *fuse.GetxattrRequest, resp *fuse.GetxattrResponse) error
func (*SHMNode) Listxattr ¶ added in v0.3.0
func (n *SHMNode) Listxattr(ctx context.Context, req *fuse.ListxattrRequest, resp *fuse.ListxattrResponse) error
func (*SHMNode) Open ¶ added in v0.3.0
func (n *SHMNode) Open(ctx context.Context, req *fuse.OpenRequest, resp *fuse.OpenResponse) (fs.Handle, error)
func (*SHMNode) Poll ¶ added in v0.3.0
func (n *SHMNode) Poll(ctx context.Context, req *fuse.PollRequest, resp *fuse.PollResponse) error
func (*SHMNode) Removexattr ¶ added in v0.3.0
func (*SHMNode) Setattr ¶ added in v0.3.0
func (n *SHMNode) Setattr(ctx context.Context, req *fuse.SetattrRequest, resp *fuse.SetattrResponse) error
type WALHandle ¶ added in v0.3.0
type WALHandle struct {
// contains filtered or unexported fields
}
WALHandle represents a file handle to a SQLite WAL file.
func (*WALHandle) Read ¶ added in v0.3.0
func (h *WALHandle) Read(ctx context.Context, req *fuse.ReadRequest, resp *fuse.ReadResponse) error
func (*WALHandle) Write ¶ added in v0.3.0
func (h *WALHandle) Write(ctx context.Context, req *fuse.WriteRequest, resp *fuse.WriteResponse) error
type WALNode ¶ added in v0.3.0
type WALNode struct {
// contains filtered or unexported fields
}
WALNode represents a SQLite WAL file.
func (*WALNode) Getxattr ¶ added in v0.3.0
func (n *WALNode) Getxattr(ctx context.Context, req *fuse.GetxattrRequest, resp *fuse.GetxattrResponse) error
func (*WALNode) Listxattr ¶ added in v0.3.0
func (n *WALNode) Listxattr(ctx context.Context, req *fuse.ListxattrRequest, resp *fuse.ListxattrResponse) error
func (*WALNode) Open ¶ added in v0.3.0
func (n *WALNode) Open(ctx context.Context, req *fuse.OpenRequest, resp *fuse.OpenResponse) (fs.Handle, error)
func (*WALNode) Poll ¶ added in v0.3.0
func (n *WALNode) Poll(ctx context.Context, req *fuse.PollRequest, resp *fuse.PollResponse) error
func (*WALNode) Removexattr ¶ added in v0.3.0
func (*WALNode) Setattr ¶ added in v0.3.0
func (n *WALNode) Setattr(ctx context.Context, req *fuse.SetattrRequest, resp *fuse.SetattrResponse) error