Commit Graph

2473 Commits

Author SHA1 Message Date
Erik Arvidsson e3b52ba2c6 Increment JS SDK version (#1879) 2016-06-23 13:42:35 +08:00
Ben Kalman c45530ef33 Remove advanceTo, not used (anymore?) (#1875) 2016-06-22 17:30:17 -07:00
Dan Willhite e0668c83e4 Merge pull request #1805 from willhite/errors
New error handling code for noms
2016-06-22 13:06:17 -07:00
Dan Willhite 095d49fa84 New error handling. 2016-06-22 12:11:31 -07:00
Aaron Boodman ed3f635979 Fix bonehead mistake in hr test -- test function not being run (#1869) 2016-06-22 10:18:08 -07:00
Aaron Boodman 192e7c471b Remove forked version of buzhash from vendor dir (#1868)
Replace with upstream

Fixes #1864
2016-06-22 09:54:15 -07:00
cmasone-attic 061eda0783 Merge pull request #1867 from cmasone-attic/dbupdate
Update hr sample canned database
2016-06-22 09:11:05 -07:00
Chris Masone 15e1ceef03 Update hr sample canned database 2016-06-22 09:10:06 -07:00
cmasone-attic 4d5eb3b334 Version Noms SDK and storage (#1841)
ChunkStores provide a Version() method so that anyone directly
using a ChunkStore (e.g. BatchStoreAdaptor) can retrieve and
check the version of the underlying store.

remoteDatabaseServer checks the version of the ChunkStore it's
backed by at startup, and then provides that version as an HTTP
header to all clients. In Go, httpBatchStore checks this header
anytime it gets a response from the server and bails if there's
version skew.

In Go, the responsibility for checking whether the running code and
the data being accessed lies with the BatchStore layer. In JS, there
is code in fetch.js that checks the header mentioned above.

Towards #1561
2016-06-21 20:55:07 -07:00
Mike Gray 9b8d80852c removing unneeded eslint disable (#1862) 2016-06-21 14:21:40 -07:00
Dan Willhite 2b973b073d Merge pull request #1860 from willhite/fix
Fix description of authkey argument.
2016-06-21 09:25:51 -07:00
Dan Willhite ad9c383744 Fix description of authkey argument. 2016-06-21 09:24:36 -07:00
Ben Kalman 1b9ea570ae Fix sequence chunker bug triggered by repeatedly removing last element (#1844)
Fix sequence chunker bug triggered by repeatedly removing last element

The bug is we sometimes create a prollytree with a root meta sequence
node with only a single item. This is never the canonical representation
of prollytrees.

I reworked the sequence chunker to take a different approach to corner
cases. Instead of being smart and avoiding this case (which clearly
didn't work properly), it's more liberal with creating unnecessary
nodes, then it fixes them up in the finalisation step.
2016-06-20 18:35:46 -07:00
Rafael Weinstein afaec8a6ad Cleanup EnsureHash (#1858) 2016-06-20 17:59:09 -07:00
Aaron Boodman 82b063a1f5 noms (diff|log|show): gracefully handle user specifying non-existent spec (#1849) 2016-06-20 17:47:47 -07:00
Dan Willhite 845567918b Merge pull request #1853 from willhite/work
Remove .travis.yml file. No longer using travis for CI.
2016-06-20 10:26:55 -07:00
Dan Willhite 4b71f1c5ec Remove .travis.yml file. No longer using travis for CI. 2016-06-20 10:26:29 -07:00
Rafael Weinstein e8686c29f7 Remove Set.intersect (#1852)
Remove Set.intersect
2016-06-20 10:22:46 -07:00
Rafael Weinstein 578d463e56 Remove assertCanRead (#1842) 2016-06-16 18:13:38 -07:00
Dan Willhite b52a86c6f3 Merge pull request #1840 from willhite/work
Set noms version of splore to latest version.
2016-06-16 16:59:13 -07:00
Dan Willhite 7c6048cc67 Set noms version of splore to latest version. 2016-06-16 16:58:00 -07:00
cmasone-attic fe221f6028 Fix LevelDBStore root key (#1839)
Apparently, the following:
  s := []byte("")
  s = append(s, 1, 2, 3)
  f := append(s, 10, 20, 30)
  g := append(s, 4, 5, 6)

Results in both f and g being [1, 2, 3, 4, 5, 6]

This was happening to us in NewLevelDBStore, so ldb.chunkPrefix was
getting set to "/chunk/" and ldb.rootKey was "/chun" (the first 5
bytes of "/chunk/") instead of "/root". This patch fixes it, but
invalidates all existing LevelDBs.
2016-06-16 16:00:30 -07:00
Dan Willhite 2cec5bb2cb Merge pull request #1838 from willhite/b-1831
Don't emit type info in diff. Fixes #1831
2016-06-16 15:04:32 -07:00
Dan Willhite c00b3aeb72 Don't emit type info in diff. Fixes #1831 2016-06-16 14:04:46 -07:00
cmasone-attic 3b23ee12e7 Additional parallelism in pull.go (#1829)
In discussing the patch that added parallelism, raf and I realized
that it's possible to be a bit more aggressive in the cases where one
queue is 'taller' than the other. In the current code, in that case,
we will parallelize work on all the Refs from the taller queue that
have a strictly higher ref-height than the head of the shorter queue.
We realized that it's safe to also take Refs from the taller queue
that are the SAME height as those at the top of the shorter queue,
as long as you handle common Refs correctly.

Fixes #1818
2016-06-16 08:11:17 -07:00
Aaron Boodman d58d558548 Make types.String not cache ref (#1836)
Fixes https://github.com/attic-labs/noms/issues/1542
2016-06-16 07:04:28 -07:00
Rafael Weinstein 2492c02c8d Turn off leveldb-snappy compression (#1833) 2016-06-15 17:12:20 -07:00
Aaron Boodman a5b2fdc8dc Update cli-tour.md 2016-06-15 15:06:44 -07:00
Dan Willhite 61fec78f25 Merge pull request #1828 from willhite/demoserver
Move demo-server from it's own project into noms.
2016-06-15 14:11:31 -07:00
Dan Willhite 8d112992c6 Move demo-server from it's own project into noms. 2016-06-15 14:06:23 -07:00
Dan Willhite 9a703ed57b Merge pull request #1827 from willhite/demoserver
Minor go dataspec cleanup.
2016-06-15 13:53:34 -07:00
Dan Willhite 17e86d0c11 Minor go dataspec cleanup. 2016-06-15 13:52:23 -07:00
Rafael Weinstein 9d33933a4f close db in url fetch (#1826) 2016-06-15 12:16:52 -07:00
Dan Willhite 1d6f5c1e75 Merge pull request #1821 from willhite/b-1801
Add HeadValue() and MaybeHeadValue() to dataset.go and js equivalents
2016-06-15 11:21:53 -07:00
Dan Willhite a3a78d695d Add HeadValue() and MaybeHeadValue() to dataset.go and js equivalents
Fixes #1801.
2016-06-15 11:16:25 -07:00
cmasone-attic 6af898968e Merge pull request #1824 from cmasone-attic/issue1817
Re-land "tweak ldb settings for put cache (#1806)"
2016-06-15 10:12:13 -07:00
Chris Masone 13af910a48 Re-land "tweak ldb settings for put cache (#1806)"
This reverts commit ba909929c2, but
tweaks the size of the memory cache so that, hopefully, Travis
doesn't barf. Maybe once travis is dead we can size up.

Fixes #1817
2016-06-15 10:05:37 -07:00
cmasone-attic d075fe6da9 Merge pull request #1820 from cmasone-attic/issue1764
Support snappy compression in getRefs/ endpoint
2016-06-14 20:11:54 -07:00
Rafael Weinstein 880ab9fadb Fix The Glitch (#1823) 2016-06-14 18:29:38 -07:00
Ben Kalman c2311c04da Implement path parsing for fields and list/map indices (#1816) 2016-06-14 17:17:32 -07:00
cmasone-attic d6f8174923 Merge pull request #1809 from cmasone-attic/issue1564
Add concurrency to noms-sync
2016-06-14 16:21:03 -07:00
Chris Masone e63a344d19 Support snappy compression in getRefs/ endpoint
gzip is such a processor hog that using it to compress responses
makes reading noms data from the server take almost 4 times as long.
snappy still has pretty good compression ratios and reduces the time
to export sfcrime from 140s to about 40s with the Go csv exporter.

Adding some parallelism when httpBatchStore.getRefs() is deserializing
chunks from the server's response gets us 4 or 5 more seconds, down to
about 36s on my machine.

Toward #1764
2016-06-14 16:20:43 -07:00
Chris Masone e5bab88631 Add concurrency to noms-sync
The basic approach here is to take the max of the heights of the
source and sink queues, then grab all the refs of that height from
both and sort them into three sets: refs in the source, refs in the
sink, and refs in both. These are then processed in parallel and the
reachable refs are all added to the appropriate queue. Repeat as long
as stuff still shows up in the source queue.

Fixes #1564
2016-06-14 16:05:30 -07:00
Mike Gray d637458041 limit the size of the edit distance matrix - js (#1812) 2016-06-14 18:01:55 -04:00
cmasone-attic 9c5d3289fb Merge pull request #1815 from cmasone-attic/export-prof
Add profiling to csv-export
2016-06-14 14:42:49 -07:00
Chris Masone 29e391c6af Add profiling to csv-export 2016-06-14 14:24:17 -07:00
Aaron Boodman 01be9f1705 Introduce spec.Get(Database|Dataset|Path) conveniences (#1813)
Fixes: https://github.com/attic-labs/noms/issues/1800
2016-06-14 14:06:22 -07:00
Rafael Weinstein 62dcc6f377 Split node & browser Uint8Array usage (#1811)
Split node & browser Uint8Array usage
2016-06-14 12:28:28 -07:00
Ben Kalman 040397ca92 One-line go install in doc/cli-tour.md (#1795) 2016-06-13 16:55:31 -07:00
Aaron Boodman 2d3dd6d925 Update README.md 2016-06-13 16:12:57 -07:00