Commit graph

705 commits

Author SHA1 Message Date
f5f0ed7173 Import gremlin, v=2 for more cases 2014-08-20 13:39:26 -04:00
255746ea12 Merge branch 'master' into boltdb 2014-08-20 13:35:05 -04:00
2eb25968c2 Merge pull request #122 from barakmich/explain
Explain Level Logging and Correcting the Cost Model
2014-08-20 01:06:21 -04:00
ca6922e79b fix the tests and care not about result ordering 2014-08-20 01:02:52 -04:00
c1ff6ce1aa lock s.kill, send done signal 2014-08-16 18:03:05 -04:00
f605e1138d kortschak's fix 2014-08-16 16:52:09 -04:00
f4f0af4f53 improve cost of bolt iterator 2014-08-16 07:16:50 -04:00
a371155cd2 Fix linksto and zero-costs 2014-08-16 06:30:27 -04:00
e453385d5e explain logging and weight fixing 2014-08-16 05:19:16 -04:00
3b0110b226 concrete deltas 2014-08-16 03:50:45 -04:00
d74cd3e93e Merge branch 'master' into boltdb 2014-08-16 03:32:46 -04:00
e1e95b9686 Merge pull request #113 from barakmich/log_database
Convert Cayley indexing to an append-only log
2014-08-16 03:26:49 -04:00
0ffb244b7b add test dep for travis 2014-08-14 21:40:19 -04:00
3b83845584 Merge pull request #1 from kortschak/b
Use cznic/b B+tree implementation in place of GoLLRB for memstore
2014-08-14 21:39:42 -04:00
8720e17d87 Merge hash pool in from master
Conflicts:
	graph/leveldb/triplestore.go
	graph/mongo/triplestore.go
2014-08-14 21:03:36 -04:00
55b03ce4c1 Merge pull request #120 from barakmich/pool
Use sync.Pool to hold hashing objects for KV backends
2014-08-14 20:58:25 -04:00
de882b9f93 port hasher pool to leveldb 2014-08-14 20:47:55 -04:00
kortschak
c618e556f4 Merge branch 'log_database' into b
Comparison of b against GoLLRB (as at d5f020).

$ benchcmp gollrb.bench b-gen.bench
benchmark                                   old ns/op       new ns/op	delta
BenchmarkNamePredicate                      1631932         1409531	-13.63%
BenchmarkLargeSetsNoIntersection            190792654       63748682	-66.59%
BenchmarkVeryLargeSetsSmallIntersection     896154437       373475843	-58.32%
BenchmarkHelplessContainsChecker            20719182678     14078301640	-32.05%
BenchmarkNetAndSpeed                        32519019        20188665	-37.92%
BenchmarkKeanuAndNet                        18319247        15224988	-16.89%
BenchmarkKeanuAndSpeed                      30849568        18744134	-39.24%
BenchmarkKeanuOther                         105552525       107620648	+1.96%
BenchmarkKeanuBullockOther                  295395338       115193002	-61.00%

benchmark                                   old allocs     new allocs	delta
BenchmarkNamePredicate                      1339           1341	+0.15%
BenchmarkLargeSetsNoIntersection            22585          23632	+4.64%
BenchmarkVeryLargeSetsSmallIntersection     65776          69396	+5.50%
BenchmarkHelplessContainsChecker            1713541        2036316	+18.84%
BenchmarkNetAndSpeed                        17104          17240	+0.80%
BenchmarkKeanuAndNet                        15816          15855	+0.25%
BenchmarkKeanuAndSpeed                      16368          16493	+0.76%
BenchmarkKeanuOther                         30134          30634	+1.66%
BenchmarkKeanuBullockOther                  35510          36454	+2.66%

benchmark                                   old bytes     new bytes	delta
BenchmarkNamePredicate                      96162         96294	+0.14%
BenchmarkLargeSetsNoIntersection            1172356       1249872	+6.61%
BenchmarkVeryLargeSetsSmallIntersection     2810080       2992409	+6.49%
BenchmarkHelplessContainsChecker            89233264      104999088	+17.67%
BenchmarkNetAndSpeed                        1388793       1428110	+2.83%
BenchmarkKeanuAndNet                        1263145       1250079	-1.03%
BenchmarkKeanuAndSpeed                      1246956       1281546	+2.77%
BenchmarkKeanuOther                         2021312       2024727	+0.17%
BenchmarkKeanuBullockOther                  2671448       2742968	+2.68%

Conflicts:
	graph/memstore/triplestore.go
2014-08-15 10:17:52 +09:30
kortschak
737037a894 Experiment with sync.Pool 2014-08-14 19:03:55 +09:30
d5f020bc2e Merge branch 'master' into log_database 2014-08-14 02:36:10 -04:00
6d609f191a Merge pull request #119 from barakmich/go13
Bump to Go 1.3
2014-08-14 02:35:24 -04:00
02f12834d7 up to go 1.3 2014-08-14 02:31:00 -04:00
d2026ea271 fix mongo indexing name mismatch 2014-08-14 01:57:03 -04:00
f967b36f84 comments and concretized deltas 2014-08-14 01:24:39 -04:00
c94cd2a53a store less duplicate data in the indices 2014-08-14 00:37:20 -04:00
69e4f087f8 Merge branch 'log_database' into boltdb 2014-08-13 23:04:24 -04:00
fe0569c9d4 merge with master 2014-08-13 23:03:07 -04:00
c1550e347f 117 patched in 2014-08-13 21:28:45 -04:00
11cfc3dfd8 Merge pull request #118 from barakmich/issue117
Fixes #117, HasA speedup
2014-08-13 21:23:01 -04:00
736e6fccf2 Merge branch 'master' into bolt_json 2014-08-13 17:14:52 -04:00
fc1648340d slight improvement by appending deltas first 2014-08-13 17:14:39 -04:00
6b02f1a997 port 117 fix to bolt 2014-08-13 17:14:31 -04:00
cfca7db47c Go style
My C++ programmer's disease was acting up.
2014-08-13 14:54:36 -04:00
03798bc4fa fix mongo hasher 2014-08-13 13:29:08 -04:00
104e7d110d fix leveldb (and speed up hasa) 2014-08-13 13:08:50 -04:00
kortschak
4a92ae9758 Merge branch 'log_database' into b
Conflicts:
	graph/memstore/iterator.go
	graph/memstore/triplestore.go
2014-08-13 17:15:11 +09:30
kortschak
d98ca99974 Merge branch 'master' into b
$ benchcmp gollrb.bench b-gen.bench
benchmark                                   old ns/op       new ns/op	delta
BenchmarkNamePredicate                      1369329         1444990	+5.53%
BenchmarkLargeSetsNoIntersection            72329029        64975716	-10.17%
BenchmarkVeryLargeSetsSmallIntersection     890824761       408784476	-54.11%
BenchmarkHelplessContainsChecker            35314797618     30673240485	-13.14%
BenchmarkNetAndSpeed                        19694146        19486797	-1.05%
BenchmarkKeanuAndNet                        15340756        15317415	-0.15%
BenchmarkKeanuAndSpeed                      17902709        18042030	+0.78%
BenchmarkKeanuOther                         53452058        50984817	-4.62%
BenchmarkKeanuBullockOther                  90827780        86536510	-4.72%

benchmark                                   old allocs     new allocs	delta
BenchmarkNamePredicate                      1339           1339		+0.00%
BenchmarkLargeSetsNoIntersection            22603          22674	+0.31%
BenchmarkVeryLargeSetsSmallIntersection     65787          65860	+0.11%
BenchmarkHelplessContainsChecker            1713541        1713669	+0.01%
BenchmarkNetAndSpeed                        17135          17146	+0.06%
BenchmarkKeanuAndNet                        15802          15802	+0.00%
BenchmarkKeanuAndSpeed                      16397          16396	-0.01%
BenchmarkKeanuOther                         30148          30149	+0.00%
BenchmarkKeanuBullockOther                  35542          35544	+0.01%

benchmark                                   old bytes     new bytes	delta
BenchmarkNamePredicate                      96226         95842		-0.40%
BenchmarkLargeSetsNoIntersection            1165914       119725	+2.69%
BenchmarkVeryLargeSetsSmallIntersection     2760072       2777798	+0.64%
BenchmarkHelplessContainsChecker            84388448      84351168	-0.04%
BenchmarkNetAndSpeed                        1414837       1425752	+0.77%
BenchmarkKeanuAndNet                        1247249       1247453	+0.02%
BenchmarkKeanuAndSpeed                      1275522       1275243	-0.02%
BenchmarkKeanuOther                         2021107       2021497	+0.02%
BenchmarkKeanuBullockOther                  2682243       2683250	+0.04%
2014-08-13 16:01:32 +09:30
1b22203e7a Merge pull request #109 from kortschak/empty
Allow memstore instances to be started empty
2014-08-12 19:42:46 -04:00
ee11a26bc2 Merge pull request #116 from barakmich/issue114
Fix Issue 114 -- And subiterators may move forward on Contains, even if the And ultimately doesn't
2014-08-12 19:32:30 -04:00
50efe31fdd fix the test, remove -short from .travis.yml 2014-08-12 19:26:02 -04:00
b6d966e9b5 fix and iterator, add some logging, and reenable 2014-08-12 16:38:10 -04:00
5d3a4a4a8f fix all iterator 2014-08-11 21:25:32 -04:00
kortschak
99d44e3228 Add test and make it pass 2014-08-12 10:20:26 +09:30
1099969591 save horizon with transactions 2014-08-11 17:14:51 -04:00
kortschak
2540ea8f87 Use cznic/b for index store
$ benchcmp gollrb.bench b-gen.bench
benchmark                                   old ns/op       new ns/op	delta
BenchmarkNamePredicate                      1731218         1693373		-2.19%
BenchmarkLargeSetsNoIntersection            81290360        70205277	-13.64%
BenchmarkVeryLargeSetsSmallIntersection     768135620       442906243	-42.34%
BenchmarkHelplessContainsChecker            39477086024     35260603748	-10.68%
BenchmarkNetAndSpeed                        22510637        21587975	-4.10%
BenchmarkKeanuAndNet                        18018886        17795328	-1.24%
BenchmarkKeanuAndSpeed                      20336586        20560228	+1.10%
BenchmarkKeanuOther                         85495040        80718152	-5.59%
BenchmarkKeanuBullockOther                  95457792        83868434	-12.14%

Code gen from $GOPATH/src/github.com/cznic/b:

  make generic \
| sed -e 's/KEY/int64/g' -e 's/VALUE/struct{}/g' \
> $GOPATH/src/github.com/google/cayley/graph/memstore/b/keys.go

key_test.go manually edited.
2014-08-11 20:45:55 +09:30
3ceb19ca6c add travis deps 2014-08-11 05:32:53 -04:00
82e4d122fc bolt db works 2014-08-11 05:31:34 -04:00
d261e5d870 wip 2014-08-11 02:54:14 -04:00
664b37b9a6 Merge branch 'master' into log_database 2014-08-10 21:50:36 -04:00
aad21b0585 Fix aborted materialization 2014-08-10 21:49:57 -04:00