From e1cca548ba2d4b294271a51538e92b5f86930851 Mon Sep 17 00:00:00 2001 From: Marko Budiselic Date: Sun, 14 Aug 2016 18:49:56 +0100 Subject: [PATCH] alpha release script + bolt serialization works (nodes and edges) --- .gitignore | 2 + CMakeLists.txt | 13 ++++-- .../bolt/v1/serialization/bolt_serializer.hpp | 1 + include/query_engine/code_generator.hpp | 2 +- include/query_engine/traverser/code.hpp | 5 ++- release/alpha.sh | 42 +++++++++++++++++++ release/beta.sh | 3 -- src/examples/bolt_py_client/initial_test.py | 21 +++++----- src/memgraph_bolt.cpp | 2 +- 9 files changed, 70 insertions(+), 21 deletions(-) create mode 100755 release/alpha.sh delete mode 100755 release/beta.sh diff --git a/.gitignore b/.gitignore index 73bd3a458..0bde88a87 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,5 @@ tags .gdb_history Testing/ ve/ +release/memgraph_* +release/libs/ diff --git a/CMakeLists.txt b/CMakeLists.txt index 74df3c068..b48f2b6a9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -434,17 +434,22 @@ endif() # memgraph build name execute_process( - OUTPUT_VARIABLE COMMIT_NO - COMMAND git rev-list --count HEAD + OUTPUT_VARIABLE COMMIT_BRANCH + COMMAND git rev-parse --abbrev-ref HEAD ) execute_process( OUTPUT_VARIABLE COMMIT_HASH COMMAND git rev-parse --short HEAD ) -string(STRIP ${COMMIT_HASH} COMMIT_HASH) +execute_process( + OUTPUT_VARIABLE COMMIT_NO + COMMAND git rev-list --count HEAD +) +string(STRIP ${COMMIT_BRANCH} COMMIT_BRANCH) string(STRIP ${COMMIT_NO} COMMIT_NO) +string(STRIP ${COMMIT_HASH} COMMIT_HASH) set(MEMGRAPH_BUILD_NAME - "memgraph_${COMMIT_HASH}_${COMMIT_NO}_${CMAKE_BUILD_TYPE}") + "memgraph_${COMMIT_BRANCH}_${COMMIT_HASH}_${COMMIT_NO}_${CMAKE_BUILD_TYPE}") # memgraph main executable if (MEMGRAPH) diff --git a/include/communication/bolt/v1/serialization/bolt_serializer.hpp b/include/communication/bolt/v1/serialization/bolt_serializer.hpp index 6d7248b6f..76dc8256f 100644 --- a/include/communication/bolt/v1/serialization/bolt_serializer.hpp +++ b/include/communication/bolt/v1/serialization/bolt_serializer.hpp @@ -56,6 +56,7 @@ public: encoder.write_map_header(props.size()); for(auto& prop : props) { + // std::cout << prop.first << " " << *prop.second << std::endl; write(prop.first); write(*prop.second); } diff --git a/include/query_engine/code_generator.hpp b/include/query_engine/code_generator.hpp index e010c7a3c..305097858 100644 --- a/include/query_engine/code_generator.hpp +++ b/include/query_engine/code_generator.hpp @@ -55,7 +55,7 @@ public: {"query", query}, {"code", cpp_traverser.code}}); - logger.trace("generated code: {}", generated); + // logger.trace("generated code: {}", generated); utils::write_file(generated, path); } diff --git a/include/query_engine/traverser/code.hpp b/include/query_engine/traverser/code.hpp index 412716167..a6b89e6a1 100644 --- a/include/query_engine/traverser/code.hpp +++ b/include/query_engine/traverser/code.hpp @@ -45,14 +45,15 @@ const std::string vertex_accessor_args_id = const std::string match_vertex_by_id = "auto {0} = db.graph.vertices.find(t, args[{1}]->as().value);\n" - " if (!{0}) return t.commit(), std::make_shared();"; + " if (!{0}) return t.commit(), false;"; const std::string match_edge_by_id = "auto {0} = db.graph.edges.find(t, args[{1}]->as().value);\n" - " if (!{0}) return t.commit(), std::make_shared();"; + " if (!{0}) return t.commit(), false;"; const std::string write_entity = "stream.write_field(\"{0}\");\n" " stream.write_record();\n" + " stream.write_list_header(1);\n" " stream.write({0});\n" " stream.write_success_empty();\n"; diff --git a/release/alpha.sh b/release/alpha.sh new file mode 100755 index 000000000..f0e3085bd --- /dev/null +++ b/release/alpha.sh @@ -0,0 +1,42 @@ +#!/bin/bash + +# Initial version of script that is going to be used for release build. + +# TODO: enable options related to lib + +echo "Memgraph Release Building..." + +cd ../build +# get most recent version of memgraph exe +exe_name=`ls -t memgraph_* | head -1` + +cd ../release +# create libs dir +mkdir -p libs + +# initialize all libs +# cp ../libs/setup.sh libs/setup.sh +# ./libs/setup.sh + +# just copy all libs +cp -r ../libs ./ + +# compile memgraph +cd ../build +# rm -rf ./* +# cmake -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_BUILD_TYPE:String=debug .. +# make -j 4 + +# create dst directory +mkdir -p ../release/${exe_name} + +# copy all relevant files +cp ${exe_name} ../release/${exe_name}/memgraph +cp libmemgraph_pic.a ../release/${exe_name}/libmemgraph_pic.a +cp -r include ../release/${exe_name}/include +cp -r template ../release/${exe_name}/template +mkdir -p ../release/${exe_name}/compiled/cpu + +echo "Memgraph Release Building DONE" + + diff --git a/release/beta.sh b/release/beta.sh deleted file mode 100755 index 01f07e895..000000000 --- a/release/beta.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/bash - -echo "TODO: build beta version of Memgraph" diff --git a/src/examples/bolt_py_client/initial_test.py b/src/examples/bolt_py_client/initial_test.py index 75dfad463..1f23412a6 100644 --- a/src/examples/bolt_py_client/initial_test.py +++ b/src/examples/bolt_py_client/initial_test.py @@ -9,16 +9,16 @@ session = driver.session() queries = []; queries.append((True, "CREATE (n {name: \"Max\", age: 21}) RETURN n")) -queries.append((False, "CREATE (n {name: \"Paul\", age: 21}) RETURN n")) -queries.append((False, "CREATE (n:PERSON {name: \"Chris\", age: 20}) RETURN n")) -queries.append((False, "CREATE (n:PERSON:STUDENT {name: \"Marko\", age: 19}) RETURN n")) -queries.append((False, "CREATE (n:TEST {string: \"Properties test\", integer: 100, float: 232.2323, bool: True}) RETURN n")) +queries.append((True, "CREATE (n {name: \"Paul\", age: 21}) RETURN n")) +queries.append((True, "CREATE (n:PERSON {name: \"Chris\", age: 20}) RETURN n")) +queries.append((True, "CREATE (n:PERSON:STUDENT {name: \"Marko\", age: 19}) RETURN n")) +queries.append((True, "CREATE (n:TEST {string: \"Properties test\", integer: 100, float: 232.2323, bool: True}) RETURN n")) -queries.append((False, "MATCH (n) WHERE ID(n)=0 RETURN n")) -queries.append((False, "MATCH (n) WHERE ID(n)=1 RETURN n")) -queries.append((False, "MATCH (n) WHERE ID(n)=2 RETURN n")) -queries.append((False, "MATCH (n) WHERE ID(n)=3 RETURN n")) -queries.append((False, "MATCH (n) WHERE ID(n)=4 RETURN n")) +queries.append((True, "MATCH (n) WHERE ID(n)=0 RETURN n")) +queries.append((True, "MATCH (n) WHERE ID(n)=1 RETURN n")) +queries.append((True, "MATCH (n) WHERE ID(n)=2 RETURN n")) +queries.append((True, "MATCH (n) WHERE ID(n)=3 RETURN n")) +queries.append((True, "MATCH (n) WHERE ID(n)=4 RETURN n")) queries.append((False, "MATCH (n1), (n2) WHERE ID(n1)=0 AND ID(n2)=1 CREATE (n1)-[r:IS]->(n2) RETURN r")) queries.append((False, "MATCH (n1), (n2) WHERE ID(n1)=0 AND ID(n2)=1 CREATE (n1)-[r:IS {name: \"test\", age: 23}]->(n2) RETURN r")) @@ -35,4 +35,5 @@ queries.append((False, "MATCH ()-[r]-() WHERE ID(r)=1 RETURN r")) for active, query in queries: if active: - session.run(query) + for record in session.run(query): + print(record) diff --git a/src/memgraph_bolt.cpp b/src/memgraph_bolt.cpp index 64797e160..2411b5eaf 100644 --- a/src/memgraph_bolt.cpp +++ b/src/memgraph_bolt.cpp @@ -34,7 +34,7 @@ int main(void) // that are configured below std::set_terminate(&terminate_handler); - logging::init_async(); + logging::init_sync(); logging::log->pipe(std::make_unique()); logger = logging::log->logger("Main");