@digidem/atomic-fs-blob-store

blob store that stores blobs on the local file system (like fs-blob-store but atomic)

Stats

StarsIssuesVersionUpdatedCreatedSize
@digidem/atomic-fs-blob-store
105.3.12 years ago3 years agoMinified + gzip package size for @digidem/atomic-fs-blob-store in KB

Readme

atomic-fs-blob-store

Build Status

blob-store-compatible

blob store that atomically stores blobs (e.g. no partial writes) on the local file system.

Forked from fs-blob-store

npm install atomic-fs-blob-store

Usage

var fs = require('atomic-fs-blob-store')
var blobs = fs('some-directory')

var ws = blobs.createWriteStream({
  key: 'some/path/file.txt'
})

ws.write('hello world\n')
ws.end(function() {
  var rs = blobs.createReadStream({
    key: 'some/path/file.txt'
  })

  rs.pipe(process.stdout)
})

Atomicity

The original fs-blob-store doesn't make atomic writes which may lead to partially written files when an error occurs or if the process crashes.

atomic-fs-blob-store guarantees write atomicity, which means that if your process crashes in the middle of a write, the file won't be written at all.

Which mean that a key only starts to exist and becomes available for reading once a write is fully completed.

License

MIT

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.