Commit Graph

321 Commits

Author SHA1 Message Date
Kruno Tomola Fabro
85dbf1bd86 Extracted import tool for csv to file with CSVImporter.
Astar now uses csv import tool.
2016-08-23 10:58:55 +01:00
Kruno Tomola Fabro
fbd9ca8420 First version of CSVImport tool.
Query and import works.

Properties now use unordered_map.
Reduced memory footprint of properties by more than half.
2016-08-22 19:03:45 +01:00
Kruno Tomola Fabro
79015177b2 Fixed tests. 2016-08-19 19:09:24 +01:00
Kruno Tomola Fabro
a1fc3244ef Merge branch 'tests' into dev 2016-08-19 18:48:48 +01:00
Kruno Tomola Fabro
eba7fd8be4 Fixed Query compiler to use new interface. 2016-08-19 18:40:04 +01:00
Marko Budiselic
e5f161974f merged T70 2016-08-19 11:29:15 +01:00
Marko Budiselic
427a7bbe4b merged interface branch 2016-08-19 11:28:10 +01:00
Marko Budiselic
e22cb3aee4 review fixes + T70 2016-08-19 01:28:37 +01:00
Marko Budiselic
9bb0b8983d LOG error fixed + BOLT queries + Fixes T70 2016-08-18 17:48:13 +01:00
Kruno Tomola Fabro
cdd7188747 Changes for audit of previous commit. 2016-08-18 17:43:06 +01:00
Kruno Tomola Fabro
7527e91d56 Build pass changes. 2016-08-18 16:03:05 +01:00
Kruno Tomola Fabro
5a42e15c4a Alpha version of label indexes.
Squashed messages from 9 commits:

9.
Properties now uses PropertyFamily and contained classes.
Fetching,seting,clearing properties can be done with PropertyFamilyKey or PropertyTypeKey.
Hierarchy of newly added clases is:
Vertices -n-> PropertyFamily {name: String} <-1-n-> PropertyType {type: Property::Flags}
Edges -n-> PropertyFamily {name: String} <-1-n-> PropertyType {type: Property::Flags}

PropertyFamilyKey -> PropertyType
PropertyTypeKey -> PropertyType

PropertyType t0,t1;
let t0!=t1 be true
let t0.family==t1.family be true

then next is true
PropertyTypeKey{&t0}!=PropertyTypeKey{&t1}
PropertyFamilyKey{&t0}==PropertyFamilyKey{&t1}
PropertyFamilyKey{&t0}==PropertyTypeKey{&t1}
PropertyTypeKey{&t0}==PropertyFamilyKey{&t1}

8.
Intermedate commit.
Noticed that integration queries throw SEGFAULT.

7.
Defined interface for indexes.
Fixed three memory leaks.
Fixed integration_queries test which now passes.

6.
Commit which return Xorshift128plus to valid shape.

5.
Tmp commit.

4.
Label Index is compiling.

3.
tmp

2.
Vertex::Accessor now updates Label index.

1.
Applied changes for code review.
2016-08-18 15:34:36 +01:00
Marko Budiselic
e1cca548ba alpha release script + bolt serialization works (nodes and edges) 2016-08-15 15:10:30 +01:00
Kruno Tomola Fabro
530be96b36 .FIX T68
.FIX T67
.FIX T65

Modifed astar main for benchmark.
Experimented with map of best visited and confirmed:
-it is faster by 25%
-observed that it founds best resoult
-loses some non best resoults

Added convinent method at() to get property from RecordAccessor.
Method requires  value_ref() method on property object.
2016-08-15 13:21:38 +01:00
Kruno Tomola Fabro
df0bf6fa5f Database interface refactor.
DbAccessor:
 -Guarantees that access to Vertex and Edge is possible only through
 Vertex::Accessor and Edge::Accessor.
 -Guarantees that changing Vertex and Edge is possible only using
 Vertex::Accessor returned by vertex_insert() method and
 Edge::Accessor returned by edge_insert() method.
 -Offers CRUD for Vertex and Edge except iterating over all edges.

Squashed commit messages:

First step in database accessor refactoring done.
It's compiling.
All tests with exception of integration_querys pass

Tests now initialize logging facilities.

Refactored accessors.
RecordAccessor now has 3 states.
From,To,Out,In in there respecive Accessors return unfilled RecordAccessor.
Added iterator classes into utils/itearator/.
2016-08-15 00:09:58 +01:00
Marko Budiselic
a9419b559d Small fixes not done yet, first the whole DB interface has to be finished 2016-08-14 13:45:47 +01:00
Marko Budiselic
6d8fccde8f Merge branch 'dev' of https://phabricator.tomicevic.com/diffusion/MG/memgraph into dev 2016-08-14 12:44:02 +01:00
Marko Budiselic
a3a8dc7c28 logger update, stderr stream is added 2016-08-14 12:43:34 +01:00
Kruno Tomola Fabro
1849514159 First step in database accessor refactoring done.
It's compiling.
All tests with exception of integration_querys pass
2016-08-12 23:01:39 +01:00
Kruno Tomola Fabro
2113546b9c build fixes 2016-08-11 15:32:58 +01:00
Kruno Tomola Fabro
02ec6dd401 merge with edges, from and to are moved to the EdgeRecord, they are not copied along with properties inside the MVCC, TODO: graph interface, Accessor and Stores 2016-08-11 15:13:19 +01:00
Kruno Tomola Fabro
635c55cc45 Merge branch 'dev' of https://phabricator.tomicevic.com/diffusion/MG/memgraph into dev 2016-08-11 14:15:48 +01:00
Kruno Tomola Fabro
fdd64dd6ed Refactored 2016-08-11 14:08:11 +01:00
Kruno Tomola Fabro
514cdf401b Updated remove. 2016-08-11 11:43:19 +01:00
Marko Budiselic
93b174afd7 First integration almost done. BOLT still doesn't work as expected, problem is only serialization order. 2016-08-11 04:47:30 +01:00
Kruno Tomola Fabro
15f7b14704 Finished remove method in RhMultiMap.
Remove passes tests.
Needs refactoring, has lot of duplicate code.
2016-08-10 23:05:24 +01:00
Kruno Tomola Fabro
3fffa17b0d Started adding remove methods.
Discovered bugs in HashMultiMap and after fixing it add method is now little slower but
find method is medium faster. So it turned out good.
2016-08-10 20:02:54 +01:00
Marko Budiselic
35d8f6d7ab Bolt integration: RecordStream -> BoltSerializer -> BoltEncoder -> ChunkedEncoder -> ChunkedBuffer -> SockerStream 2016-08-10 19:17:38 +01:00
Marko Budiselic
869da8dcda All files for the Release are now isolated 2016-08-10 09:39:02 +01:00
Kruno Tomola Fabro
61eccc28ce Created EdgeRecord as class and changed in edge vector for map.
EdgeRecord now contains from,to fields as immutables.
Vertex in place of in vector of edges has in RbHashMultimap of edges.
Astar exepriment now uses real filters based on before mentioned map.
2016-08-09 20:29:03 +01:00
Kruno Tomola Fabro
c3c8fb6620 Commit before branching to chane EdgeModel and EdgeRecord. 2016-08-09 16:44:39 +01:00
Kruno Tomola Fabro
3016494669 Added RobinHood HashMap and unit tested. 2016-08-09 11:53:10 +01:00
Marko Budiselic
95aa385e31 bolt binary was removed (src/examples/bolt) 2016-08-08 09:34:28 +01:00
Marko Budiselic
e4d9258df9 Merge branch 'dev' of https://phabricator.tomicevic.com/diffusion/MG/memgraph into dev 2016-08-08 09:32:45 +01:00
Marko Budiselic
84e69bb1d3 fmt wrapper + proof of concept folder 2016-08-08 09:32:34 +01:00
Dominik Tomičević
2a12335246 added features to bolt 2016-08-07 21:19:04 +01:00
Kruno Tomola Fabro
36019f561b Implemented lockfree list and added unit test for it. 2016-08-03 10:27:18 +01:00
Kruno Tomola Fabro
e4238d5871 First implementation of Conncurent lockfree list. 2016-08-02 22:00:30 +01:00
Marko Budiselic
b5f884d428 Merge branch 'dev' of https://phabricator.tomicevic.com/diffusion/MG/memgraph into dev 2016-08-02 17:05:15 +01:00
Kruno Tomola Fabro
f226a9d6c5 Added Bitset tests. 2016-08-02 17:05:10 +01:00
Kruno Tomola Fabro
0dfb8d13c3 Merge branch 'dev' of https://phabricator.tomicevic.com/diffusion/MG/memgraph into tests 2016-08-02 15:45:12 +01:00
Marko Budiselic
3b8746573d Merge branch 'dev' of https://phabricator.tomicevic.com/diffusion/MG/memgraph into dev 2016-08-02 15:42:38 +01:00
Marko Budiselic
f05c1f6dab CRU operations are fully supported, D (delete) is missing 2016-08-02 15:41:53 +01:00
Kruno Tomola Fabro
e16b576a6e Added support for multiset.
Minor fixes to tests.

MultiIterator & MultiMap work.
There are some unfinished optimizations in the code commented.

All tests pass. Some common parts from tests have been moved.
2016-08-02 13:23:39 +01:00
Dominik Tomičević
da15775afa Merge branch 'bolt-protocol' into dev
* bolt-protocol:
  implemented bolt protocol
2016-08-01 22:21:49 +01:00
Dominik Tomičević
eda9d67bbe implemented bolt protocol 2016-08-01 22:14:09 +01:00
Marko Budiselic
d04cf101b4 Cypher CRUD support is becomes bigger and bigger. Implemented: create relationship, match relationship and update relationship 2016-07-31 18:58:12 +01:00
Kruno Tomola Fabro
bf174644de Reformated code acording to format rules in .clang-format. 2016-07-31 13:56:13 +01:00
Kruno Tomola Fabro
246cf1fd78 Added some comments. 2016-07-31 11:40:38 +01:00
Kruno Tomola Fabro
b32a727b75 Removed old SkipListMap and skiplist directory. 2016-07-30 23:06:51 +01:00