func (db *DB) NewSnapshot() (driver.ISnapshot, error) { snap := &Snapshot{ db: db, snap: C.leveldb_create_snapshot(db.db), readOpts: NewReadOptions(), iteratorOpts: NewReadOptions(), } snap.readOpts.SetSnapshot(snap) snap.iteratorOpts.SetSnapshot(snap) snap.iteratorOpts.SetFillCache(false) return snap, nil }
func (db *DB) NewSnapshot() *Snapshot { s := &Snapshot{ db: db, snap: C.leveldb_create_snapshot(db.db), readOpts: NewReadOptions(), iteratorOpts: NewReadOptions(), } s.readOpts.SetSnapshot(s) s.iteratorOpts.SetSnapshot(s) s.iteratorOpts.SetFillCache(false) return s }
// NewSnapshot creates a new snapshot of the database. // // The snapshot, when used in a ReadOptions, provides a consistent view of // state of the database at the the snapshot was created. // // To prevent memory leaks and resource strain in the database, the snapshot // returned must be released with DB.ReleaseSnapshot method on the DB that // created it. // // See the LevelDB documentation for details. func (db *DB) NewSnapshot() *Snapshot { return &Snapshot{C.leveldb_create_snapshot(db.Ldb)} }
// NewSnapshot creates a new snapshot of the database. // // The snapshot, when used in a ReadOptions, provides a consistent view of // state of the database at the the snapshot was created. // // To prevent memory leaks and resource strain in the database, the snapshot // returned must be released with this DB's ReleaseSnapshot() method. // // See the LevelDB C++ documentation docs for details. func (db *DB) NewSnapshot() *C.leveldb_snapshot_t { return C.leveldb_create_snapshot(db.Ldb) }