Initial commit
This commit is contained in:
31
vendor/github.com/cockroachdb/pebble/internal/private/flush_external.go
generated
vendored
Normal file
31
vendor/github.com/cockroachdb/pebble/internal/private/flush_external.go
generated
vendored
Normal file
@@ -0,0 +1,31 @@
|
||||
// Copyright 2020 The LevelDB-Go and Pebble Authors. All rights reserved. Use
|
||||
// of this source code is governed by a BSD-style license that can be found in
|
||||
// the LICENSE file.
|
||||
|
||||
package private
|
||||
|
||||
import "github.com/cockroachdb/pebble/internal/manifest"
|
||||
|
||||
// FlushExternalTable is a hook for linking files into L0 without assigning a
|
||||
// global sequence number, mimicking a flush. FlushExternalTable takes a
|
||||
// *pebble.DB, the path and the metadata of a sstable to flush directly into
|
||||
// L0.
|
||||
//
|
||||
// Calls to flush a sstable may fail if the file's sequence numbers are not
|
||||
// greater than the current commit pipeline's sequence number. On success the
|
||||
// commit pipeline's published sequence number will be moved to the file's
|
||||
// highest sequence number.
|
||||
//
|
||||
// This function is wrapped in a safer, more ergonomic API in the
|
||||
// internal/replay package. Clients should use the replay package rather than
|
||||
// calling this private hook directly.
|
||||
var FlushExternalTable func(interface{}, string, *manifest.FileMetadata) error
|
||||
|
||||
// RatchetSeqNum is a hook for allocating and publishing sequence numbers up
|
||||
// to a specific absolute value. Its first parameter is a *pebble.DB and its
|
||||
// second is the new next sequence number. RatchetSeqNum does nothing if the
|
||||
// next sequence is already greater than or equal to nextSeqNum.
|
||||
//
|
||||
// This function is used by the internal/replay package to ensure replayed
|
||||
// operations receive the same absolute sequence number.
|
||||
var RatchetSeqNum func(interface{}, uint64)
|
||||
Reference in New Issue
Block a user