Documentation ¶
Index ¶
- type CompressedEncryptedStore
- func (c *CompressedEncryptedStore) DownloadFromS3(cur *cursor.Cursor, s3Manager *scalablestore.S3Manager) bool
- func (c *CompressedEncryptedStore) ExtractToSeekableStore(cur *cursor.Cursor, seekableStore *SeekableStore) bool
- func (c *CompressedEncryptedStore) Has(cur *cursor.Cursor) bool
- func (c *CompressedEncryptedStore) SaveFromLiveFile(cur *cursor.Cursor, fromFd *os.File) error
- func (c *CompressedEncryptedStore) UploadToS3(cur *cursor.Cursor, s3Manager *scalablestore.S3Manager) error
- type SeekableStore
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CompressedEncryptedStore ¶
type CompressedEncryptedStore struct {
// contains filtered or unexported fields
}
func NewCompressedEncryptedStore ¶
func NewCompressedEncryptedStore(confCtx *config.Context) *CompressedEncryptedStore
func (*CompressedEncryptedStore) DownloadFromS3 ¶
func (c *CompressedEncryptedStore) DownloadFromS3(cur *cursor.Cursor, s3Manager *scalablestore.S3Manager) bool
func (*CompressedEncryptedStore) ExtractToSeekableStore ¶
func (c *CompressedEncryptedStore) ExtractToSeekableStore(cur *cursor.Cursor, seekableStore *SeekableStore) bool
extracts compressed file first to temporary filename and then atomically moves it to SeekableStore
func (*CompressedEncryptedStore) Has ¶
func (c *CompressedEncryptedStore) Has(cur *cursor.Cursor) bool
TODO: this has a race condition. remove this
func (*CompressedEncryptedStore) SaveFromLiveFile ¶
stores the file as compressed & encrypted file from WAL's live file. when passing the FD, make sure fseek(0)
func (*CompressedEncryptedStore) UploadToS3 ¶
func (c *CompressedEncryptedStore) UploadToS3(cur *cursor.Cursor, s3Manager *scalablestore.S3Manager) error
upload compressed&encrypted to S3. only done once (or in rare cases more if upload errors)
type SeekableStore ¶
type SeekableStore struct { }
func NewSeekableStore ¶
func NewSeekableStore() *SeekableStore
func (*SeekableStore) SaveByRenaming ¶
func (s *SeekableStore) SaveByRenaming(cursor *cursor.Cursor, fromPath string)
store a file in SeekableStore by renaming a file here from a temporary location, so we can do this in an atomic way (= the second Has() reports true we have 100 % complete file)
Click to show internal directories.
Click to hide internal directories.