Commit Graph

3176 Commits

Author SHA1 Message Date
Rafael Weinstein
ef4e6c48d3 AWSStoreFactory (#2938) 2016-12-12 15:55:56 -08:00
Rafael Weinstein
335454b34c ChunkSink.Flush() (#2937)
Add ChunkSink.Flush() which signals the ChunkSink that any previously Put chunks should be made durable.
2016-12-12 15:39:13 -08:00
cmasone-attic
de6e49c9e0 compactingChunkStore crash fix (#2936)
compactingChunkStore.close() must wait for compactions to finish.
2016-12-12 14:43:46 -08:00
cmasone-attic
7fe3b18a6b Make compaction async (#2934)
Introduce a 'compactingChunkStore', which knows how to compact itself
in the background. It satisfies get/has requests from an in-memory
table until compaction is complete. Once compaction is done, it
destroys the in-memory table and switches over to using solely the
persistent table.

Fixes #2879
2016-12-12 14:15:30 -08:00
Rafael Weinstein
0652e0b3e0 Add ChunkSource.GetMany(); RemoteBatchStore getRefs uses GetMany() (#2933)
Add GetMany(), which most ChunkStores implement by repeated calls to their own Get(), but creates the opportunity for stores to optimize reads of larger blocks of potentially sequential chunks (e.g. NBS).

Add RemoteBatchStore getRefs endpoint support for calling GetMany() rather than Get()

Remove ReadThroughChunkStore which was dead code.
2016-12-12 11:18:22 -08:00
Erik Arvidsson
80d4894fcc JS: Fix walk
The promise was resolving too early.
2016-12-09 18:51:49 -08:00
Aaron Boodman
fe59ae9504 Revert "Fix JS walk handling for values of type Type (#2913)" (#2931)
This reverts commit 2717908d2b.
2016-12-09 17:43:26 -08:00
Rafael Weinstein
88691863f4 Add simple read ahead for JS Collections (#2930)
Adds the ability for SequenceCursors to eagerly load all child sequences when the first child is requested.

The effect is for uses where noms tends to forward scan, it will read in batches of ~150 chunks (e.g. ~512k) rather than one chunk at a time.

On my MBP, this improves the raw blob read perf over http from ~60K/s to ~5MB/s.
2016-12-09 16:08:38 -08:00
Erik Arvidsson
741563958d Remove again and again 2016-12-09 12:46:54 -08:00
Erik Arvidsson
27267581d5 Again and again (#2929) 2016-12-09 12:16:05 -08:00
Erik Arvidsson
a59463e277 Remove testing again 2016-12-09 12:07:47 -08:00
Erik Arvidsson
e438145f14 Testing again (#2928) 2016-12-09 11:52:46 -08:00
Erik Arvidsson
559393f0b3 Revert "testing" (#2927) 2016-12-09 11:28:03 -08:00
Erik Arvidsson
c58a215415 testing (#2926) 2016-12-09 11:23:36 -08:00
Erik Arvidsson
bde471f690 JS: Do not validate struct type when reading a chunk (#2923)
When we read a chunk and create structs we were validating that the
struct was of the type it claimed to be.

This now, no longer does that validation, which matches Go.
2016-12-09 10:38:10 -08:00
Aaron Boodman
7a2c4f4984 Turn off chunk validation in production mode (#2925) 2016-12-09 10:32:13 -08:00
Erik Arvidsson
2717908d2b Fix JS walk handling for values of type Type (#2913)
Fixes #2911
2016-12-08 16:38:10 -08:00
cmasone-attic
dff8b67aba Change NBS s3TablePersister to use Multipart upload (#2922)
Instead of putting an entire table to S3 in a single request, split it
into 5MB parts (the smallest allowable) and send all the parts in
parallel.
2016-12-08 16:10:37 -08:00
Mike Gray
277f4c6384 Update to jenkins the third (#2920) 2016-12-08 10:33:45 -05:00
Aaron Boodman
914d252748 Move coffeebot back to 3pm (#2919) 2016-12-07 17:41:18 -08:00
Mike Gray
f29032c6cd Revert "Update links to jenkins3.noms.io" (#2918) 2016-12-07 17:36:51 -05:00
Mike Gray
5b9a863471 Update links to jenkins3.noms.io (#2916) 2016-12-07 17:22:43 -05:00
Dan Willhite
e30272abeb Implement poke functionality using diff.Apply function (#2828) 2016-12-07 11:57:48 -08:00
Aaron Boodman
8d4ff605f5 photo-index: output PhotoGroup instead of Photo (#2902)
photo-index: output PhotoGroup instead of Photo (#2902)
2016-12-06 16:21:02 -08:00
cmasone-attic
0750459e4e Add AWS backend for NBS (#2914)
Add a new backend for NBS that stores tables in S3 and
manifests in DynamoDB.

Fixes #2877
2016-12-06 15:12:28 -08:00
Ben Kalman
dc289245cb Add path @at for positional indexing, and negative indices (#2910)
This lets you do foo.bar@at(n) to get the nth element of a list, set, or
map (for lists, this is equivalent to foo.bar[n]). This patch also adds
support for negative indices to @at(-n) and [-n] to get the nth element
relative to the back of collections.
2016-12-05 14:43:41 -08:00
Rafael Weinstein
6edea9665e Verify chunks using suffix index not computing address from data. (#2907)
Revert to verifying chunks using the suffix index. Replace the inline 4-byte suffix used as integrity check with a more standard and efficient CRC32.
2016-12-05 11:44:43 -08:00
Dan Willhite
7916e05631 Make blob-get print to stdout if there is no file arg (#2867)
* Make blob-get print to stdout if there is no file arg

* Review changes
2016-12-05 11:33:08 -08:00
cmasone-attic
b3eef38fa4 Break NomsBlockStore dependency on disk storage (#2905)
This patch introduces/expands the 'manifest' and 'tableSet'
abstractions, so that NomsBlockStore is no longer explicitly using any
file system operations

Towards issue #2877
2016-12-05 09:05:40 -08:00
Ben Kalman
0a10704149 Implement Set.At and Map.At in Go (#2903)
These get the set/map element at a specific index.
I haven't implemented it in JS yet because the JS code has no method to
create a cursor at an index. This exists in Go because a refactor was
done a few months ago to add it, but it hasn't been ported to JS.
2016-12-04 11:27:35 -08:00
Aaron Boodman
87958507b0 marshal.Unmarshal(): introduce omitempty and original support (#2900)
* marshal.Unmarshal(): introduce omitempty and original suppport.

Fixes #2795
Fixes #2796

* review comments
2016-12-02 15:13:00 -08:00
Rafael Weinstein
a67bb9bf7b Minor rework of hash.Hash API (#2888)
Define the hash.Hash type to be a 20-byte array, rather than embed one. Hash API Changes: `hash.FromSlice` -> `hash.New`, `hash.FromData` -> `hash.Of`
2016-12-02 12:11:00 -08:00
Eric Halpern
ca232f0ad7 Support marshaling from and unmarshaling to *types.Type (#2892)
* Support marshaling from and unmarshaling to *types.Type

* Incorporate code review suggestions.
- Use fallthrough in switch
- Update decode godoc to spec *types.Type handling. Godoc for encode is fine as is.

toward: #2889
-
2016-12-02 11:32:35 -08:00
Erik Arvidsson
710e5c8d12 Give Flow a helping hand (#2895)
Flow didn't know which type to pick for addEventListener.
2016-12-02 10:59:54 -08:00
Rafael Weinstein
9cbe8e8bc8 uint32ChunkCount (#2894)
Encode chunk counts consistently as uint32 until #2873 is addressed. This also fixes an error in passing chunkCounts resulting from compaction that don't account for dropped (duplicate) chunks.
2016-12-02 10:12:40 -08:00
Aaron Boodman
8241483c19 noms show no longer shows type information (#2893)
If you want that, do `noms show <thing>@type`.

Fixes #2694
2016-12-02 08:58:51 -08:00
Erik Arvidsson
3a963602d2 Update Noms JS SDK to use Flow 0.35 (#2890) 2016-12-01 17:52:30 -08:00
Aaron Boodman
e664d77a97 Change the dropbox client we're using. (#2887)
Toward https://github.com/attic-labs/attic/issues/152
2016-12-01 15:03:16 -08:00
Mike Gray
ebe9831710 Clarify Facebook instructions (#2885) 2016-12-01 15:02:32 -08:00
Dan Willhite
46dfabd60e Fix in/out root mixup in downloader. (#2884)
Fixes https://github.com/attic-labs/attic/issues/130
2016-12-01 13:49:46 -08:00
Rafael Weinstein
a00a5f5611 Implement experimental block store (#2870)
* Move NBS into Noms

* vendor in deps
2016-12-01 10:04:09 -08:00
Benjamin Kalman
163b8fe56f Revert "Disable codecov upload for now (#2863)"
This reverts commit 8e714d79f4.
2016-11-29 18:39:35 -08:00
Ben Kalman
8e714d79f4 Disable codecov upload for now (#2863) 2016-11-29 18:18:35 -08:00
Aaron Boodman
b221caabea Add @type support to paths in Go (#2860)
Add @type support to paths in Go
2016-11-29 18:13:29 -08:00
Ben Kalman
5e4c1c06d8 Remove noms-ui and update splore README.md (#2861) 2016-11-29 16:53:51 -08:00
Michael Angerman
fcb98d7780 fix .nomsconfig error: Near line 11 (#2857) 2016-11-29 14:10:54 -08:00
Ben Kalman
0cf768e912 Make splore param parser not strip trailing '=' characters (#2856)
Params must include trailing '=' characters for base64 receipts.
2016-11-29 11:10:21 -08:00
Aaron Boodman
8d2b1d6568 Welcome, Jenna! (#2854) 2016-11-23 15:58:47 -08:00
Eric Halpern
3f60749013 Fix race conditions in encoder to address photo-dedup segfault (#2852)
toward: #2849
2016-11-23 15:39:14 -08:00
Ben Kalman
b86b18f395 Add MustParsePath (#2851) 2016-11-23 15:24:08 -08:00