Matei Chiperi
985161325e
Changed triplestore to quadstore in the Except operator build_iterator code.
2014-09-08 17:13:05 -07:00
Matei Chiperi
a742ebcd46
Cleaned up code for pull request for an Except operator.
2014-09-08 17:09:42 -07:00
Matei Chiperi
a718130f4a
Merge branch 'master' of https://github.com/google/cayley into operators
...
Conflicts:
query/gremlin/build_iterator.go
2014-09-08 17:04:48 -07:00
Matei Chiperi
55d235bd55
Added Gremlin tests for the Except operator.
2014-08-28 18:56:06 -07:00
Matei Chiperi
b97e6782ff
Changed identifier "not" to "except" for iterator builder.
2014-08-28 17:52:58 -07:00
Matei Chiperi
a5fd1905d0
Improvements to the Not iterator:
...
- Pass the all iterator as an argument
- Fixed next method (call all.Next() ).
2014-08-28 16:02:21 -07:00
kortschak
484bf145a8
Remove non-documentation lint
...
Because of extensive nature of changes, tested all three non-memstore
backends - passed.
2014-08-28 11:51:39 +09:30
Matei Chiperi
def70ca12e
Exposed Except (alias Difference) operator in Gremlin API.
2014-08-27 14:48:30 -07:00
Matei Chiperi
5d4e22498d
Converted the Not operator to a complement operator in terms of functionality.
2014-08-27 13:42:56 -07:00
kortschak
443a091b72
Rename triple entities were relevant
2014-08-27 21:27:01 +09:30
Matei Chiperi
a0318aa7b2
Added comments for the loop iterator.
2014-08-26 12:26:54 -07:00
Matei Chiperi
d9b67c8335
Added comments for the not operator.
2014-08-26 11:59:14 -07:00
Matei Chiperi
d3bc8c1736
First implementations of loop and not operator for Cayley Gremlin.
2014-08-26 11:19:15 -07:00
kortschak
4345604a39
Inconsequential whitespace changes
2014-08-26 14:36:42 +09:30
kortschak
1faa8b1727
Fix build
2014-08-26 14:30:10 +09:30
kortschak
73dbfc9461
Fix worker termination handling
...
Fixes issue #102 .
2014-08-26 14:20:37 +09:30
kortschak
62e7037f20
Remove unnecessary indirection
2014-08-26 11:19:22 +09:30
kortschak
ab685cfe04
Mark limit as unused in gremlin and SEXP
...
Used in SEXP. Currently there appears to be no way to limit the number
of query returns from MQL.
2014-08-26 10:17:44 +09:30
kortschak
8df21cd8d9
Refactor work out into worker type
2014-08-26 10:12:44 +09:30
kortschak
95170eb8ed
Prepare gremlin for introduction of a worker type
2014-08-25 15:57:40 +09:30
720a80a51f
Merge pull request #126 from barakmich/replcrash
...
Temporarily fix REPL crash by locking the kill channel
2014-08-20 14:01:25 -04:00
8e16543da3
Merge branch 'master' into replcrash
2014-08-20 13:44:24 -04:00
f5f0ed7173
Import gremlin, v=2 for more cases
2014-08-20 13:39:26 -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
e453385d5e
explain logging and weight fixing
2014-08-16 05:19:16 -04:00
3770190db5
test clean
2014-08-10 20:10:00 -04:00
kortschak
62785d25c2
Merge branch 'master' into nexter
...
Conflicts:
graph/leveldb/all_iterator.go
graph/leveldb/iterator.go
graph/memstore/triplestore.go
query/gremlin/finals.go
2014-08-07 06:57:45 +09:30
kortschak
6acfdcc5d6
Use concrete value for quad.Quad
...
Comparison of -short benchmarks in cayley.
$ benchcmp pointer.bench concrete.bench
benchmark old ns/op new ns/op delta
BenchmarkNamePredicate 1673276 1655093 -1.09%
BenchmarkLargeSetsNoIntersection 318985907 261499984 -18.02%
BenchmarkNetAndSpeed 104403743 41516981 -60.23%
BenchmarkKeanuAndNet 17309258 16857513 -2.61%
BenchmarkKeanuAndSpeed 20159161 19282833 -4.35%
Comparison of pathological cases are not so happy.
benchmark old ns/op new ns/op delta
BenchmarkVeryLargeSetsSmallIntersection 55269775527 246084606672 +345.24%
BenchmarkHelplessContainsChecker 23436501319 24308906949 +3.72%
Profiling the worst case:
Pointer:
Total: 6121 samples
1973 32.2% 32.2% 1973 32.2% runtime.findfunc
773 12.6% 44.9% 773 12.6% readvarint
510 8.3% 53.2% 511 8.3% step
409 6.7% 59.9% 410 6.7% runtime.gentraceback
390 6.4% 66.2% 391 6.4% pcvalue
215 3.5% 69.8% 215 3.5% runtime.funcdata
181 3.0% 72.7% 181 3.0% checkframecopy
118 1.9% 74.6% 119 1.9% runtime.funcspdelta
96 1.6% 76.2% 96 1.6% runtime.topofstack
76 1.2% 77.5% 76 1.2% scanblock
Concrete:
Total: 25027 samples
9437 37.7% 37.7% 9437 37.7% runtime.findfunc
3853 15.4% 53.1% 3853 15.4% readvarint
2366 9.5% 62.6% 2366 9.5% step
2186 8.7% 71.3% 2186 8.7% runtime.gentraceback
1816 7.3% 78.5% 1816 7.3% pcvalue
1016 4.1% 82.6% 1016 4.1% runtime.funcdata
859 3.4% 86.0% 859 3.4% checkframecopy
506 2.0% 88.1% 506 2.0% runtime.funcspdelta
410 1.6% 89.7% 410 1.6% runtime.topofstack
303 1.2% 90.9% 303 1.2% runtime.newstack
2014-08-05 23:25:02 +09:30
kortschak
6513685520
Fix lock contention
2014-08-04 12:32:43 +09:30
kortschak
0fedecd392
Use time.Duration according to the time docs
...
Having a time.Duration measuring seconds is likely to cause problems at
a later stage. This change retains configuration compatibility while
adding idiomatic duration use.
2014-08-02 23:16:17 +09:30
kortschak
2d884f92e9
Name reduction
2014-08-02 22:58:53 +09:30
kortschak
bf3ac2be9e
Destutter gremlin.GremlinResult
2014-08-02 22:58:33 +09:30
kortschak
15a45ef0d4
Clean up style
2014-08-02 22:45:19 +09:30
kortschak
8ccf842518
Improve error handling
...
Export the timeout kill error and use error instead of string in result
struct.
2014-08-02 22:14:24 +09:30
kortschak
fe9ca5ffcc
Fix data race in gremlin timeout handling
...
Fixes issue #95 .
2014-08-02 22:01:02 +09:30
kortschak
b1a70d99aa
Simplify Nexter interface
...
This change allows a Nexter to be used in the same manner as a scanner
using a for graph.Next(it) {} construction.
It is important that graph.Next(it) and any associated it.Result() calls
operate on the same iterator.
2014-08-01 09:15:02 +09:30
kortschak
f8e28e066e
Rename NextResult -> NextPath
...
See discussion in #92 .
2014-08-01 07:27:16 +09:30
kortschak
a6cf432313
Move query interface definitions into query
2014-07-31 08:52:24 +09:30
kortschak
1a0dd13735
Merge branch 'master' into benchmarks
2014-07-31 08:35:34 +09:30
kortschak
c4e4abbffc
Add result validation
2014-07-31 08:33:18 +09:30
kortschak
2dbbd17fe1
Merge branch 'declassify' into tip
...
Conflicts:
graph/iterator/hasa_iterator.go
graph/iterator/linksto_iterator.go
graph/iterator/query_shape_test.go
graph/leveldb/all_iterator.go
graph/leveldb/iterator.go
graph/leveldb/leveldb_test.go
graph/memstore/triplestore_test.go
graph/mongo/iterator.go
2014-07-30 16:40:37 +09:30
kortschak
d6f94be514
Base nexting on interface satisfaction
...
This is done unsubtlely at the moment and there is plenty of room for
optimisation of assertion location to prevent repeated reasserting as is
done now.
2014-07-30 16:06:46 +09:30
kortschak
1604dca737
Move tag handling out into graph.Tagger
2014-07-30 10:25:32 +09:30
kortschak
401c58426f
Create quads hierarchy
...
* Move nquads into quad.
* Create cquads simplified parser in quad.
* Move Triple (renamed Quad) to quad.
Also made sure mongo actually implements BulkLoader.
2014-07-28 21:36:22 +09:30
Jeremy Jay
a6dc5c9532
fix tests for new method names
2014-07-18 14:09:57 -04:00
kortschak
1c181429da
Purge goconvey and mock
...
These packages really impact on test readability with crazy action at a
distance. In addition to this removal of goconvey reduced the test run
time for leveldb on average by about 40-50%.
2014-07-05 22:00:46 +09:30
kortschak
c2fd33f9d0
Fix missed test messages
2014-07-03 17:55:22 +09:30
1f67913ed9
fix test
2014-07-02 14:05:34 -04:00
1e2ff472ed
Merge remote branch 'kortschak/tables' for #47
...
Conflicts:
query/gremlin/functional_test.go
2014-07-02 13:51:13 -04:00