From c1cd82355dfa3e325a77e525d63e81a5b370604a Mon Sep 17 00:00:00 2001 From: Anatoly Rodionov <103588129+arodionov53@users.noreply.github.com> Date: Mon, 25 Mar 2024 14:09:26 -0400 Subject: [PATCH] Spike/dega 1748 (#7) * new function betree_write_dot added * new functionality - search with id lists, added * new test added; using latest be-tree * new feature with using event created as C object is added * change betree_make_event to make usage from rtb-gateway more convinient * some more simplifications for rtb_gateway usage * betree_make_event returns execution time * memory allocation for event fixed * now all betree_search return sorted id list * using v1.2.1 be-tree * no changes almost * betree_search_tests - added tests with multiple Betrees * added 'with_event' related benchmark functions * betree.c - re-ordered functions according to 'nif_functions' table * be-tree tag changed --------- Co-authored-by: Victor Savkov --- benchmarks/be_bm.erl | 46 ++ c_src/Makefile | 2 + c_src/betree.c | 1272 ++++++++++++++++++++++------------ c_src/build_betree | 2 +- rebar3 | Bin 942316 -> 800027 bytes src/erl_betree.erl | 42 +- src/erl_betree_nif.erl | 16 + test/betree_search_tests.erl | 305 ++++++++ 8 files changed, 1237 insertions(+), 448 deletions(-) create mode 100644 test/betree_search_tests.erl diff --git a/benchmarks/be_bm.erl b/benchmarks/be_bm.erl index a6965c0..a187ef3 100644 --- a/benchmarks/be_bm.erl +++ b/benchmarks/be_bm.erl @@ -19,6 +19,9 @@ iterated_next/2, iterated_next_stats/3, iterated_next_output/3, + with_event/2, + with_event_stats/3, + with_event_output/3, std_betree_search/2, iterated_betree_search_all/2, @@ -109,6 +112,32 @@ iterated_next_output(BetreeFile, EventsFile, EventEvalOutputFile) -> be_eval:stop(PidEval), Ret. +with_event(BetreeFile, EventsFile) -> + {ok, PidEval} = be_eval:start_link(), + Ret = be_eval:run(PidEval, "BE-Tree search 'with event'", + BetreeFile, EventsFile, + fun with_event_betree_search/2, fun stats_collector/2), + be_eval:stop(PidEval), + Ret. + +with_event_stats(BetreeFile, EventsFile, StatsFile) -> + {ok, PidEval} = be_eval:start_link(), + Ret = be_eval:run(PidEval, "BE-Tree search 'with event'", + BetreeFile, + EventsFile, fun with_event_betree_search/2, _EventEvalOutputFile = undefined, + fun stats_collector/2, StatsFile), + be_eval:stop(PidEval), + Ret. + +with_event_output(BetreeFile, EventsFile, EventEvalOutputFile) -> + {ok, PidEval} = be_eval:start_link(), + Ret = be_eval:run(PidEval, "BE-Tree search 'with event'", + BetreeFile, + EventsFile, fun with_event_betree_search/2, EventEvalOutputFile, + fun stats_collector/2, undefined), + be_eval:stop(PidEval), + Ret. + std_betree_search(Term, #be_evaluator{betree = Betree} = Context) -> Event = [list_to_tuple( [event | [case N of 1 -> true; _ -> false end|| N <- Term]])], @@ -165,6 +194,23 @@ iterated_betree_search_next(Iterator) -> X -> {error, {search_next, X}} end. +with_event_betree_search(Term, #be_evaluator{betree = Betree} = Context) -> + Event = [list_to_tuple( + [event | [case N of 1 -> true; _ -> false end|| N <- Term]])], + BeginNano = erlang:monotonic_time(nanosecond), + case erl_betree:betree_make_event(Betree, Event) of + {{ok, Evt}, _} -> + case erl_betree:betree_search(Betree, Evt, 0) of + {{ok, Ids}, _} -> + EndNano = erlang:monotonic_time(nanosecond), + CurrentAllocations = be_bm_utils:betree_allocations(), + DiffNano = EndNano - BeginNano, + {{ok, {Ids, {DiffNano, CurrentAllocations}}}, Context}; + X -> {{error, {betree_search_with_event, X}}, Context} + end; + X -> {{error, {betree_make_event, X}}, Context} + end. + stats_collector({DiffNano, Allocations}, #be_evaluator_stats{ info = Info, index = Index, diff --git a/c_src/Makefile b/c_src/Makefile index 53753bf..ec0a536 100644 --- a/c_src/Makefile +++ b/c_src/Makefile @@ -26,6 +26,8 @@ CFLAGS = -O3 -std=gnu11 -finline-functions -Wall -Wmissing-prototypes CFLAGS += -fPIC -I $(ERTS_INCLUDE_DIR) -I $(ERL_INTERFACE_INCLUDE_DIR) -I $(BETREE_INCLUDE_DIR) +# CFLAGS += -Wno-incompatible-pointer-types + LDLIBS += -L $(ERL_INTERFACE_LIB_DIR) -lei -L $(BETREE_LIB_DIR) -lbetree ifeq ($(UNAME), Darwin) diff --git a/c_src/betree.c b/c_src/betree.c index 0545615..c3b1563 100644 --- a/c_src/betree.c +++ b/c_src/betree.c @@ -12,6 +12,7 @@ #define NIF true #include "betree.h" +#include "debug.h" // return values static ERL_NIF_TERM atom_ok; @@ -51,12 +52,20 @@ static ERL_NIF_TERM atom_unknown; static ErlNifResourceType* MEM_BETREE; static ErlNifResourceType* MEM_SUB; +static ErlNifResourceType* MEM_EVENT; static ErlNifResourceType* MEM_SEARCH_ITERATOR; struct sub { const struct betree_sub* sub; }; +struct evt { + struct betree_event* event; +}; + +static ERL_NIF_TERM ids_from_report(ErlNifEnv* env, const struct report* report); +static ERL_NIF_TERM make_time(ErlNifEnv* env, const struct timespec* start, const struct timespec* done); + #include "alloc.h" #include "hashmap.h" #include "tree.h" @@ -149,6 +158,14 @@ static void cleanup_betree(ErlNifEnv* env, void* obj) betree_deinit(betree); } +static void cleanup_event(ErlNifEnv* env, void* obj) +{ + (void)env; + struct evt* evt = obj; + betree_free_event(evt->event); + evt->event = NULL; +} + static void cleanup_search_iterator(ErlNifEnv* env, void* obj) { (void)env; @@ -202,6 +219,10 @@ static int load(ErlNifEnv* env, void **priv_data, ERL_NIF_TERM load_info) if(MEM_SUB == NULL) { return -1; } + MEM_EVENT = enif_open_resource_type(env, NULL, "event", cleanup_event, flags, NULL); + if(MEM_EVENT == NULL) { + return -1; + } MEM_SEARCH_ITERATOR = enif_open_resource_type(env, NULL, "search_iterator", cleanup_search_iterator, flags, NULL); if(MEM_SEARCH_ITERATOR == NULL) { return -1; @@ -217,6 +238,13 @@ static struct betree* get_betree(ErlNifEnv* env, const ERL_NIF_TERM term) return betree; } +static struct evt* get_evt(ErlNifEnv* env, const ERL_NIF_TERM term) +{ + struct evt* evt = NULL; + enif_get_resource(env, term, MEM_EVENT, (void*)&evt); + return evt; +} + static struct search_iterator* get_search_iterator(ErlNifEnv* env, const ERL_NIF_TERM term) { struct search_iterator* search_iterator = NULL; @@ -243,415 +271,117 @@ static char *alloc_string(ErlNifBinary bin) return key; } -#define DOMAIN_NAME_LEN 256 - -static bool add_domains(ErlNifEnv* env, struct betree* betree, ERL_NIF_TERM list, unsigned int list_len) +static bool get_binary(ErlNifEnv* env, ERL_NIF_TERM term, const char* name, struct betree_variable** variable) { - ERL_NIF_TERM head; - ERL_NIF_TERM tail = list; - const ERL_NIF_TERM* tuple; - int tuple_len; - char domain_name[DOMAIN_NAME_LEN]; - bool allow_undefined; - for(unsigned int i = 0; i < list_len; i++) { - if(!enif_get_list_cell(env, tail, &head, &tail)) { - return false; - } + ErlNifBinary bin; + if (!enif_inspect_binary(env, term, &bin)) { + return false; + } + char* value = alloc_string(bin); + *variable = betree_make_string_variable(name, value); + enif_free(value); + return true; +} - if(!enif_get_tuple(env, head, &tuple_len, &tuple)) { - return false; - } - if(tuple_len < 3) { - return false; - } +static bool get_boolean(ErlNifEnv* env, ERL_NIF_TERM term, const char* name, struct betree_variable** variable) +{ + (void)env; + bool value = false; + if(enif_is_identical(atom_true, term)) { + value = true; + } + else if(enif_is_identical(atom_false, term)) { + value = false; + } + else { + return false; + } - if(!enif_get_atom(env, tuple[0], domain_name, DOMAIN_NAME_LEN, ERL_NIF_LATIN1)) { - return false; - } + *variable = betree_make_boolean_variable(name, value); - if(enif_is_identical(atom_allow_undefined, tuple[2])) { - allow_undefined = true; - } - else if(enif_is_identical(atom_disallow_undefined, tuple[2])) { - allow_undefined = false; - } - else { - return false; - } + return true; +} - if(enif_is_identical(atom_int, tuple[1]) || enif_is_identical(atom_int64, tuple[1])) { - int64_t min = INT64_MIN; - int64_t max = INT64_MAX; - if(tuple_len == 5) { - if(!enif_get_int64(env, tuple[3], &min) || !enif_get_int64(env, tuple[4], &max)) { - return false; - } - } - betree_add_integer_variable(betree, domain_name, allow_undefined, min, max); - } - else if(enif_is_identical(atom_int_list, tuple[1])) { - int64_t min = INT64_MIN; - int64_t max = INT64_MAX; - if(tuple_len == 5) { - int64_t min, max; - if(!enif_get_int64(env, tuple[3], &min) || !enif_get_int64(env, tuple[4], &max)) { - return false; - } - } - betree_add_integer_list_variable(betree, domain_name, allow_undefined, min, max); - } - else if(enif_is_identical(atom_int_enum, tuple[1])) { - size_t max = SIZE_MAX; - if(tuple_len == 4) { - uint64_t u64_max; - if(!enif_get_uint64(env, tuple[3], &u64_max)) { - return false; - } - max = (size_t)u64_max; - } - betree_add_integer_enum_variable(betree, domain_name, allow_undefined, max); - } - else if(enif_is_identical(atom_bin, tuple[1])) { - size_t max = SIZE_MAX; - if(tuple_len == 4) { - uint64_t u64_max; - if(!enif_get_uint64(env, tuple[3], &u64_max)) { - return false; - } - max = (size_t)u64_max; - } - betree_add_string_variable(betree, domain_name, allow_undefined, max); - } - else if(enif_is_identical(atom_bin_list, tuple[1])) { - size_t max = SIZE_MAX; - if(tuple_len == 4) { - uint64_t u64_max; - if(!enif_get_uint64(env, tuple[3], &u64_max)) { - return false; - } - max = (size_t)u64_max; - } - betree_add_string_list_variable(betree, domain_name, allow_undefined, max); - } - else if(enif_is_identical(atom_bool, tuple[1])) { - betree_add_boolean_variable(betree, domain_name, allow_undefined); - } - else if(enif_is_identical(atom_float, tuple[1])) { - double min = -DBL_MAX; - double max = DBL_MAX; - if(tuple_len == 5) { - if(!enif_get_double(env, tuple[3], &min) || !enif_get_double(env, tuple[4], &max)) { - return false; - } - } - betree_add_float_variable(betree, domain_name, allow_undefined, min, max); - } - else if(enif_is_identical(atom_frequency_caps, tuple[1])) { - betree_add_frequency_caps_variable(betree, domain_name, allow_undefined); - } - else if(enif_is_identical(atom_segments, tuple[1])) { - betree_add_segments_variable(betree, domain_name, allow_undefined); - } - else { - return false; - } +static bool get_int(ErlNifEnv* env, ERL_NIF_TERM term, const char* name, struct betree_variable** variable) +{ + int64_t value; + if(!enif_get_int64(env, term, &value)) { + return false; } + + *variable = betree_make_integer_variable(name, value); + return true; } -static ERL_NIF_TERM nif_betree_make(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) +static bool get_float(ErlNifEnv* env, ERL_NIF_TERM term, const char* name, struct betree_variable** variable) { - ERL_NIF_TERM retval; - if(argc != 1) { - retval = enif_make_badarg(env); - goto cleanup; + double value; + if(!enif_get_double(env, term, &value)) { + return false; } - struct betree* betree = enif_alloc_resource(MEM_BETREE, sizeof(*betree)); - betree_init(betree); + *variable = betree_make_float_variable(name, value); - ERL_NIF_TERM term = enif_make_resource(env, betree); + return true; +} - enif_release_resource(betree); +static bool get_bin_list(ErlNifEnv* env, ERL_NIF_TERM term, const char* name, struct betree_variable** variable) +{ + ERL_NIF_TERM head; + ERL_NIF_TERM tail = term; + ErlNifBinary bin; + const char* value; + unsigned int length; - unsigned int list_len; - if(!enif_get_list_length(env, argv[0], &list_len)) { - retval = enif_make_badarg(env); - goto cleanup; + if (!enif_get_list_length(env, term, &length)) { + return false; } - ERL_NIF_TERM head; - ERL_NIF_TERM tail = argv[0]; + struct betree_string_list* list = betree_make_string_list(length); - for(unsigned int i = 0; i < list_len; i++) { + for (unsigned int i = 0; i < length; i++) { if(!enif_get_list_cell(env, tail, &head, &tail)) { + betree_free_string_list(list); return false; } - unsigned int inner_list_len; - if(!enif_get_list_length(env, head, &inner_list_len)) { - retval = enif_make_badarg(env); - goto cleanup; + if(!enif_inspect_binary(env, head, &bin)) { + betree_free_string_list(list); + return false; } - if(!add_domains(env, betree, head, inner_list_len)) { - retval = enif_make_badarg(env); - goto cleanup; - } + value = alloc_string(bin); + betree_add_string(list, i, value); + enif_free((char*)value); } - retval = enif_make_tuple(env, 2, atom_ok, term); -cleanup: - return retval; -} + *variable = betree_make_string_list_variable(name, list); -#define CONSTANT_NAME_LEN 256 + return true; +} -static ERL_NIF_TERM nif_betree_make_sub(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) +static bool get_int_list(ErlNifEnv* env, ERL_NIF_TERM term, const char* name, struct betree_variable** variable) { - ERL_NIF_TERM retval; - ErlNifBinary bin; - char* expr = NULL; - size_t constant_count = 0; - struct betree_constant** constants = NULL; - if(argc != 4) { - retval = enif_make_tuple2(env, atom_error, atom_bad_arity); - goto cleanup; - } - - struct betree* betree = get_betree(env, argv[0]); - - betree_sub_t sub_id; - if(!enif_get_uint64(env, argv[1], &sub_id)) { - retval = enif_make_tuple2(env, atom_error, atom_bad_id); - goto cleanup; - } - ERL_NIF_TERM head; - ERL_NIF_TERM tail = argv[2]; + ERL_NIF_TERM tail = term; + int64_t value; unsigned int length; - if (!enif_get_list_length(env, argv[2], &length)) { - retval = enif_make_tuple2(env, atom_error, atom_bad_constant_list); - goto cleanup; + if (!enif_get_list_length(env, term, &length)) { + return false; } - constants = enif_alloc(length * sizeof(*constants)); - constant_count = length; - for (unsigned int i = 0; i < length; i++) { - constants[i] = NULL; - } + struct betree_integer_list* list = betree_make_integer_list(length); for (unsigned int i = 0; i < length; i++) { if(!enif_get_list_cell(env, tail, &head, &tail)) { - retval = enif_make_tuple2(env, atom_error, atom_bad_constant_list); - goto cleanup; + betree_free_integer_list(list); + return false; } - const ERL_NIF_TERM* tuple; - int tuple_len; - - if(!enif_get_tuple(env, head, &tuple_len, &tuple)) { - retval = enif_make_tuple4(env, atom_error, atom_bad_constant, enif_make_int64(env, i), atom_unknown); - goto cleanup; - } - - if(tuple_len != 2) { - retval = enif_make_tuple4(env, atom_error, atom_bad_constant, enif_make_int64(env, i), atom_unknown); - goto cleanup; - } - char constant_name[CONSTANT_NAME_LEN]; - if(!enif_get_atom(env, tuple[0], constant_name, CONSTANT_NAME_LEN, ERL_NIF_LATIN1)) { - retval = enif_make_tuple4(env, atom_error, atom_bad_constant, enif_make_int64(env, i), atom_unknown); - goto cleanup; - } - - int64_t value; - if(!enif_get_int64(env, tuple[1], &value)) { - retval = enif_make_tuple4(env, atom_error, atom_bad_constant, enif_make_int64(env, i), make_atom(env, constant_name)); - goto cleanup; - } - constants[i] = betree_make_integer_constant(constant_name, value); - } - - if(!enif_inspect_iolist_as_binary(env, argv[3], &bin)) { - retval = enif_make_tuple2(env, atom_error, atom_bad_binary); - goto cleanup; - } - expr = alloc_string(bin); - if (expr == NULL) { - retval = enif_make_tuple2(env, atom_error, atom_bad_binary); - goto cleanup; - } - - const struct betree_sub* betree_sub = betree_make_sub(betree, sub_id, constant_count, (const struct betree_constant**)constants, expr); - if(betree_sub == NULL) { - retval = enif_make_tuple2(env, atom_error, atom_failed); - goto cleanup; - } - - struct sub* sub = enif_alloc_resource(MEM_SUB, sizeof(*sub)); - sub->sub = betree_sub; - - ERL_NIF_TERM sub_term = enif_make_resource(env, sub); - - enif_release_resource(sub); - - retval = enif_make_tuple(env, 2, atom_ok, sub_term); -cleanup: - if(expr != NULL) { - enif_free(expr); - } - if(constants != NULL) { - betree_free_constants(constant_count, constants); - enif_free(constants); - } - - return retval; -} - -static ERL_NIF_TERM nif_betree_insert_sub(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) -{ - ERL_NIF_TERM retval; - - if(argc != 2) { - retval = enif_make_badarg(env); - goto cleanup; - } - - struct betree* betree = get_betree(env, argv[0]); - if(betree == NULL) { - retval = enif_make_badarg(env); - goto cleanup; - } - - struct sub* sub = get_sub(env, argv[1]); - if(sub == NULL) { - retval = enif_make_badarg(env); - goto cleanup; - } - - bool result = betree_insert_sub(betree, sub->sub); - if(result) { - retval = atom_ok; - } - else { - retval = atom_error; - } -cleanup: - return retval; -} - -static bool get_binary(ErlNifEnv* env, ERL_NIF_TERM term, const char* name, struct betree_variable** variable) -{ - ErlNifBinary bin; - if (!enif_inspect_binary(env, term, &bin)) { - return false; - } - char* value = alloc_string(bin); - *variable = betree_make_string_variable(name, value); - enif_free(value); - return true; -} - -static bool get_boolean(ErlNifEnv* env, ERL_NIF_TERM term, const char* name, struct betree_variable** variable) -{ - (void)env; - bool value = false; - if(enif_is_identical(atom_true, term)) { - value = true; - } - else if(enif_is_identical(atom_false, term)) { - value = false; - } - else { - return false; - } - - *variable = betree_make_boolean_variable(name, value); - - return true; -} - -static bool get_int(ErlNifEnv* env, ERL_NIF_TERM term, const char* name, struct betree_variable** variable) -{ - int64_t value; - if(!enif_get_int64(env, term, &value)) { - return false; - } - - *variable = betree_make_integer_variable(name, value); - - return true; -} - -static bool get_float(ErlNifEnv* env, ERL_NIF_TERM term, const char* name, struct betree_variable** variable) -{ - double value; - if(!enif_get_double(env, term, &value)) { - return false; - } - - *variable = betree_make_float_variable(name, value); - - return true; -} - -static bool get_bin_list(ErlNifEnv* env, ERL_NIF_TERM term, const char* name, struct betree_variable** variable) -{ - ERL_NIF_TERM head; - ERL_NIF_TERM tail = term; - ErlNifBinary bin; - const char* value; - unsigned int length; - - if (!enif_get_list_length(env, term, &length)) { - return false; - } - - struct betree_string_list* list = betree_make_string_list(length); - - for (unsigned int i = 0; i < length; i++) { - if(!enif_get_list_cell(env, tail, &head, &tail)) { - betree_free_string_list(list); - return false; - } - - if(!enif_inspect_binary(env, head, &bin)) { - betree_free_string_list(list); - return false; - } - - value = alloc_string(bin); - betree_add_string(list, i, value); - enif_free((char*)value); - } - - *variable = betree_make_string_list_variable(name, list); - - return true; -} - -static bool get_int_list(ErlNifEnv* env, ERL_NIF_TERM term, const char* name, struct betree_variable** variable) -{ - ERL_NIF_TERM head; - ERL_NIF_TERM tail = term; - int64_t value; - unsigned int length; - - if (!enif_get_list_length(env, term, &length)) { - return false; - } - - struct betree_integer_list* list = betree_make_integer_list(length); - - for (unsigned int i = 0; i < length; i++) { - if(!enif_get_list_cell(env, tail, &head, &tail)) { - betree_free_integer_list(list); - return false; - } - if (!enif_get_int64(env, head, &value)) { - betree_free_integer_list(list); - return false; + if (!enif_get_int64(env, head, &value)) { + betree_free_integer_list(list); + return false; } betree_add_integer(list, i, value); @@ -662,7 +392,7 @@ static bool get_int_list(ErlNifEnv* env, ERL_NIF_TERM term, const char* name, st return true; } -static bool get_frequency_cap(ErlNifEnv* env, ERL_NIF_TERM term, struct betree_frequency_cap **ptr) +static bool get_frequency_cap(ErlNifEnv* env, ERL_NIF_TERM term, struct betree_frequency_cap **ptr) { int cap_arity; int key_arity; @@ -725,7 +455,7 @@ static bool get_frequency_cap(ErlNifEnv* env, ERL_NIF_TERM term, struct betree_f goto cleanup; } *ptr = frequency_cap; -cleanup: + cleanup: if(type_str != NULL) { enif_free(type_str); } @@ -736,7 +466,7 @@ static bool get_frequency_cap(ErlNifEnv* env, ERL_NIF_TERM term, struct betree_f return success; } -static bool get_frequency_caps_list(ErlNifEnv* env, ERL_NIF_TERM term, const char* name, struct betree_variable** variable) +static bool get_frequency_caps_list(ErlNifEnv* env, ERL_NIF_TERM term, const char* name, struct betree_variable** variable) { ERL_NIF_TERM head; ERL_NIF_TERM tail = term; @@ -790,7 +520,7 @@ static bool get_segment(ErlNifEnv* env, ERL_NIF_TERM term, struct betree_segment return true; } -static bool get_segments_list(ErlNifEnv* env, ERL_NIF_TERM term, const char* name, struct betree_variable** variable) +static bool get_segments_list(ErlNifEnv* env, ERL_NIF_TERM term, const char* name, struct betree_variable** variable) { ERL_NIF_TERM head; ERL_NIF_TERM tail = term; @@ -821,62 +551,434 @@ static bool get_segments_list(ErlNifEnv* env, ERL_NIF_TERM term, const char* nam return true; } -static bool add_variables(ErlNifEnv* env, struct betree* betree, struct betree_event* event, const ERL_NIF_TERM* tuple, int tuple_len, size_t initial_domain_index) +#define DOMAIN_NAME_LEN 256 + +static bool add_domains(ErlNifEnv* env, struct betree* betree, ERL_NIF_TERM list, unsigned int list_len) { - // Start at 1 to not use the record name - for(int i = 1; i < tuple_len; i++) { - ERL_NIF_TERM element = tuple[i]; - if(enif_is_identical(atom_undefined, element)) { - continue; + ERL_NIF_TERM head; + ERL_NIF_TERM tail = list; + const ERL_NIF_TERM* tuple; + int tuple_len; + char domain_name[DOMAIN_NAME_LEN]; + bool allow_undefined; + for(unsigned int i = 0; i < list_len; i++) { + if(!enif_get_list_cell(env, tail, &head, &tail)) { + return false; } - size_t domain_index = initial_domain_index + i - 1; - struct betree_variable_definition def = betree_get_variable_definition(betree, domain_index); - bool result; - struct betree_variable* variable = NULL; - switch(def.type) { - case BETREE_BOOLEAN: - result = get_boolean(env, element, def.name, &variable); - break; - case BETREE_INTEGER: - result = get_int(env, element, def.name, &variable); - break; - case BETREE_FLOAT: - result = get_float(env, element, def.name, &variable); - break; - case BETREE_STRING: - result = get_binary(env, element, def.name, &variable); - break; - case BETREE_INTEGER_LIST: - result = get_int_list(env, element, def.name, &variable); - break; - case BETREE_STRING_LIST: - result = get_bin_list(env, element, def.name, &variable); - break; - case BETREE_SEGMENTS: - result = get_segments_list(env, element, def.name, &variable); - break; - case BETREE_FREQUENCY_CAPS: - result = get_frequency_caps_list(env, element, def.name, &variable); - break; - case BETREE_INTEGER_ENUM: - result = get_int(env, element, def.name, &variable); - break; - default: - result = false; - break; + + if(!enif_get_tuple(env, head, &tuple_len, &tuple)) { + return false; } - if(result == false) { - if(variable != NULL) { - betree_free_variable(variable); - } + if(tuple_len < 3) { return false; } - betree_set_variable(event, domain_index, variable); - } - return true; -} -static ERL_NIF_TERM nif_betree_search(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) + if(!enif_get_atom(env, tuple[0], domain_name, DOMAIN_NAME_LEN, ERL_NIF_LATIN1)) { + return false; + } + + if(enif_is_identical(atom_allow_undefined, tuple[2])) { + allow_undefined = true; + } + else if(enif_is_identical(atom_disallow_undefined, tuple[2])) { + allow_undefined = false; + } + else { + return false; + } + + if(enif_is_identical(atom_int, tuple[1]) || enif_is_identical(atom_int64, tuple[1])) { + int64_t min = INT64_MIN; + int64_t max = INT64_MAX; + if(tuple_len == 5) { + if(!enif_get_int64(env, tuple[3], &min) || !enif_get_int64(env, tuple[4], &max)) { + return false; + } + } + betree_add_integer_variable(betree, domain_name, allow_undefined, min, max); + } + else if(enif_is_identical(atom_int_list, tuple[1])) { + int64_t min = INT64_MIN; + int64_t max = INT64_MAX; + if(tuple_len == 5) { + int64_t min, max; + if(!enif_get_int64(env, tuple[3], &min) || !enif_get_int64(env, tuple[4], &max)) { + return false; + } + } + betree_add_integer_list_variable(betree, domain_name, allow_undefined, min, max); + } + else if(enif_is_identical(atom_int_enum, tuple[1])) { + size_t max = SIZE_MAX; + if(tuple_len == 4) { + uint64_t u64_max; + if(!enif_get_uint64(env, tuple[3], &u64_max)) { + return false; + } + max = (size_t)u64_max; + } + betree_add_integer_enum_variable(betree, domain_name, allow_undefined, max); + } + else if(enif_is_identical(atom_bin, tuple[1])) { + size_t max = SIZE_MAX; + if(tuple_len == 4) { + uint64_t u64_max; + if(!enif_get_uint64(env, tuple[3], &u64_max)) { + return false; + } + max = (size_t)u64_max; + } + betree_add_string_variable(betree, domain_name, allow_undefined, max); + } + else if(enif_is_identical(atom_bin_list, tuple[1])) { + size_t max = SIZE_MAX; + if(tuple_len == 4) { + uint64_t u64_max; + if(!enif_get_uint64(env, tuple[3], &u64_max)) { + return false; + } + max = (size_t)u64_max; + } + betree_add_string_list_variable(betree, domain_name, allow_undefined, max); + } + else if(enif_is_identical(atom_bool, tuple[1])) { + betree_add_boolean_variable(betree, domain_name, allow_undefined); + } + else if(enif_is_identical(atom_float, tuple[1])) { + double min = -DBL_MAX; + double max = DBL_MAX; + if(tuple_len == 5) { + if(!enif_get_double(env, tuple[3], &min) || !enif_get_double(env, tuple[4], &max)) { + return false; + } + } + betree_add_float_variable(betree, domain_name, allow_undefined, min, max); + } + else if(enif_is_identical(atom_frequency_caps, tuple[1])) { + betree_add_frequency_caps_variable(betree, domain_name, allow_undefined); + } + else if(enif_is_identical(atom_segments, tuple[1])) { + betree_add_segments_variable(betree, domain_name, allow_undefined); + } + else { + return false; + } + } + return true; +} + +static bool add_variables(ErlNifEnv* env, struct betree* betree, struct betree_event* event, const ERL_NIF_TERM* tuple, int tuple_len, size_t initial_domain_index) +{ + // Start at 1 to not use the record name + for(int i = 1; i < tuple_len; i++) { + ERL_NIF_TERM element = tuple[i]; + if(enif_is_identical(atom_undefined, element)) { + continue; + } + size_t domain_index = initial_domain_index + i - 1; + struct betree_variable_definition def = betree_get_variable_definition(betree, domain_index); + bool result; + struct betree_variable* variable = NULL; + switch(def.type) { + case BETREE_BOOLEAN: + result = get_boolean(env, element, def.name, &variable); + break; + case BETREE_INTEGER: + result = get_int(env, element, def.name, &variable); + break; + case BETREE_FLOAT: + result = get_float(env, element, def.name, &variable); + break; + case BETREE_STRING: + result = get_binary(env, element, def.name, &variable); + break; + case BETREE_INTEGER_LIST: + result = get_int_list(env, element, def.name, &variable); + break; + case BETREE_STRING_LIST: + result = get_bin_list(env, element, def.name, &variable); + break; + case BETREE_SEGMENTS: + result = get_segments_list(env, element, def.name, &variable); + break; + case BETREE_FREQUENCY_CAPS: + result = get_frequency_caps_list(env, element, def.name, &variable); + break; + case BETREE_INTEGER_ENUM: + result = get_int(env, element, def.name, &variable); + break; + default: + result = false; + break; + } + if(result == false) { + if(variable != NULL) { + betree_free_variable(variable); + } + return false; + } + betree_set_variable(event, domain_index, variable); + } + return true; +} + +static ERL_NIF_TERM nif_betree_make(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) +{ + ERL_NIF_TERM retval; + if(argc != 1) { + retval = enif_make_badarg(env); + goto cleanup; + } + + struct betree* betree = enif_alloc_resource(MEM_BETREE, sizeof(*betree)); + betree_init(betree); + + ERL_NIF_TERM term = enif_make_resource(env, betree); + + enif_release_resource(betree); + + unsigned int list_len; + if(!enif_get_list_length(env, argv[0], &list_len)) { + retval = enif_make_badarg(env); + goto cleanup; + } + + ERL_NIF_TERM head; + ERL_NIF_TERM tail = argv[0]; + + for(unsigned int i = 0; i < list_len; i++) { + if(!enif_get_list_cell(env, tail, &head, &tail)) { + return false; + } + + unsigned int inner_list_len; + if(!enif_get_list_length(env, head, &inner_list_len)) { + retval = enif_make_badarg(env); + goto cleanup; + } + + if(!add_domains(env, betree, head, inner_list_len)) { + retval = enif_make_badarg(env); + goto cleanup; + } + } + + retval = enif_make_tuple(env, 2, atom_ok, term); +cleanup: + return retval; +} + +static ERL_NIF_TERM nif_betree_make_event(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) +{ + ERL_NIF_TERM retval; + int clock_type = 0; + struct betree_event* event = NULL; + struct evt* evt = NULL; + + if(argc != 3) { + retval = enif_make_badarg(env); + goto cleanup; + } + + if (!enif_get_int(env, argv[2], &clock_type)) { + return enif_make_badarg(env); + } + struct timespec start, done; + clock_gettime(clock_type, &start); + + struct betree* betree = get_betree(env, argv[0]); + if(betree == NULL) { + retval = enif_make_badarg(env); + goto cleanup; + } + + unsigned int list_len; + if(!enif_get_list_length(env, argv[1], &list_len)) { + retval = enif_make_badarg(env); + goto cleanup; + } + + evt = enif_alloc_resource(MEM_EVENT, sizeof(*evt)); + if (evt == NULL) { + retval = enif_make_badarg(env); + goto cleanup; + } + evt->event = event = betree_make_event(betree); + ERL_NIF_TERM erl_event = enif_make_resource(env, evt); + + ERL_NIF_TERM head; + ERL_NIF_TERM tail = argv[1]; + const ERL_NIF_TERM* tuple; + + size_t pred_index = 0; + int tuple_len; + + for(unsigned int i = 0; i < list_len; i++) { + if(!enif_get_list_cell(env, tail, &head, &tail)) { + retval = enif_make_badarg(env); + goto cleanup; + } + + if(!enif_get_tuple(env, head, &tuple_len, &tuple)) { + retval = enif_make_badarg(env); + goto cleanup; + } + + if(!add_variables(env, betree, event, tuple, tuple_len, pred_index)) { + retval = enif_make_badarg(env); + goto cleanup; + } + pred_index += (tuple_len - 1); + } + + retval = enif_make_tuple(env, 2, atom_ok, erl_event); + + cleanup: + if (evt != NULL) { + enif_release_resource(evt); + } + clock_gettime(clock_type, &done); + ERL_NIF_TERM etspent = make_time(env, &start, &done); + return enif_make_tuple2(env, retval, etspent); +} + +#define CONSTANT_NAME_LEN 256 + +static ERL_NIF_TERM nif_betree_make_sub(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) +{ + ERL_NIF_TERM retval; + ErlNifBinary bin; + char* expr = NULL; + size_t constant_count = 0; + struct betree_constant** constants = NULL; + if(argc != 4) { + retval = enif_make_tuple2(env, atom_error, atom_bad_arity); + goto cleanup; + } + + struct betree* betree = get_betree(env, argv[0]); + + betree_sub_t sub_id; + if(!enif_get_uint64(env, argv[1], &sub_id)) { + retval = enif_make_tuple2(env, atom_error, atom_bad_id); + goto cleanup; + } + + ERL_NIF_TERM head; + ERL_NIF_TERM tail = argv[2]; + unsigned int length; + + if (!enif_get_list_length(env, argv[2], &length)) { + retval = enif_make_tuple2(env, atom_error, atom_bad_constant_list); + goto cleanup; + } + + constants = enif_alloc(length * sizeof(*constants)); + constant_count = length; + for (unsigned int i = 0; i < length; i++) { + constants[i] = NULL; + } + + for (unsigned int i = 0; i < length; i++) { + if(!enif_get_list_cell(env, tail, &head, &tail)) { + retval = enif_make_tuple2(env, atom_error, atom_bad_constant_list); + goto cleanup; + } + const ERL_NIF_TERM* tuple; + int tuple_len; + + if(!enif_get_tuple(env, head, &tuple_len, &tuple)) { + retval = enif_make_tuple4(env, atom_error, atom_bad_constant, enif_make_int64(env, i), atom_unknown); + goto cleanup; + } + + if(tuple_len != 2) { + retval = enif_make_tuple4(env, atom_error, atom_bad_constant, enif_make_int64(env, i), atom_unknown); + goto cleanup; + } + char constant_name[CONSTANT_NAME_LEN]; + if(!enif_get_atom(env, tuple[0], constant_name, CONSTANT_NAME_LEN, ERL_NIF_LATIN1)) { + retval = enif_make_tuple4(env, atom_error, atom_bad_constant, enif_make_int64(env, i), atom_unknown); + goto cleanup; + } + + int64_t value; + if(!enif_get_int64(env, tuple[1], &value)) { + retval = enif_make_tuple4(env, atom_error, atom_bad_constant, enif_make_int64(env, i), make_atom(env, constant_name)); + goto cleanup; + } + constants[i] = betree_make_integer_constant(constant_name, value); + } + + if(!enif_inspect_iolist_as_binary(env, argv[3], &bin)) { + retval = enif_make_tuple2(env, atom_error, atom_bad_binary); + goto cleanup; + } + expr = alloc_string(bin); + if (expr == NULL) { + retval = enif_make_tuple2(env, atom_error, atom_bad_binary); + goto cleanup; + } + + const struct betree_sub* betree_sub = betree_make_sub(betree, sub_id, constant_count, (const struct betree_constant**)constants, expr); + if(betree_sub == NULL) { + retval = enif_make_tuple2(env, atom_error, atom_failed); + goto cleanup; + } + + struct sub* sub = enif_alloc_resource(MEM_SUB, sizeof(*sub)); + sub->sub = betree_sub; + + ERL_NIF_TERM sub_term = enif_make_resource(env, sub); + + enif_release_resource(sub); + + retval = enif_make_tuple(env, 2, atom_ok, sub_term); +cleanup: + if(expr != NULL) { + enif_free(expr); + } + if(constants != NULL) { + betree_free_constants(constant_count, constants); + enif_free(constants); + } + + return retval; +} + +static ERL_NIF_TERM nif_betree_insert_sub(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) +{ + ERL_NIF_TERM retval; + + if(argc != 2) { + retval = enif_make_badarg(env); + goto cleanup; + } + + struct betree* betree = get_betree(env, argv[0]); + if(betree == NULL) { + retval = enif_make_badarg(env); + goto cleanup; + } + + struct sub* sub = get_sub(env, argv[1]); + if(sub == NULL) { + retval = enif_make_badarg(env); + goto cleanup; + } + + bool result = betree_insert_sub(betree, sub->sub); + if(result) { + retval = atom_ok; + } + else { + retval = atom_error; + } +cleanup: + return retval; +} + +static ERL_NIF_TERM nif_betree_search(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { ERL_NIF_TERM retval; struct report* report = NULL; @@ -934,12 +1036,7 @@ static ERL_NIF_TERM nif_betree_search(ErlNifEnv* env, int argc, const ERL_NIF_TE goto cleanup; } - ERL_NIF_TERM res = enif_make_list(env, 0); - - for (size_t i = report->matched; i;) { - i--; - res = enif_make_list_cell(env, enif_make_uint64(env, report->subs[i]), res); - } + ERL_NIF_TERM res = ids_from_report(env, report); retval = enif_make_tuple2(env, atom_ok, res); cleanup: @@ -969,13 +1066,247 @@ static ERL_NIF_TERM nif_betree_search_t(ErlNifEnv* env, int argc, const ERL_NIF_ return search_res; } clock_gettime(clock_type, &done); - // Convert to microseconds - ErlNifSInt64 tspent = (done.tv_sec - start.tv_sec) * 1000000 + (done.tv_nsec - start.tv_nsec) / 1000; - ERL_NIF_TERM etspent = enif_make_int64(env, tspent); + ERL_NIF_TERM etspent = make_time(env, &start, &done); ERL_NIF_TERM retval = enif_make_tuple2(env, search_res, etspent); return retval; } +static ERL_NIF_TERM nif_betree_search_evt(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) +{ + ERL_NIF_TERM retval; + struct report* report = NULL; + int clock_type = 0; + + if(argc != 3) { + retval = enif_make_badarg(env); + goto cleanup; + } + + if (!enif_get_int(env, argv[2], &clock_type)) { + return enif_make_badarg(env); + } + struct timespec start, done; + clock_gettime(clock_type, &start); + + struct betree* betree = get_betree(env, argv[0]); + if(betree == NULL) { + retval = enif_make_badarg(env); + goto cleanup; + } + + struct evt* evt = get_evt(env, argv[1]); + if(evt == NULL) { + retval = enif_make_badarg(env); + goto cleanup; + } + struct betree_event* event = evt->event; + + report = make_report(); + bool result = betree_search_with_event(betree, event, report); + + if(result == false) { + retval = enif_make_badarg(env); + goto cleanup; + } + + ERL_NIF_TERM res = ids_from_report(env, report); + + retval = enif_make_tuple2(env, atom_ok, res); +cleanup: + if(report != NULL) { + free_report(report); + } + clock_gettime(clock_type, &done); + ERL_NIF_TERM etspent = make_time(env, &start, &done); + return enif_make_tuple2(env, retval, etspent); +} + +static ERL_NIF_TERM nif_betree_search_evt_ids(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) +{ + ERL_NIF_TERM retval; + struct report* report = NULL; + uint64_t * ids = NULL; + int clock_type = 0; + + if(argc != 4) { + retval = enif_make_badarg(env); + goto cleanup; + } + + if (!enif_get_int(env, argv[3], &clock_type)) { + return enif_make_badarg(env); + } + struct timespec start, done; + clock_gettime(clock_type, &start); + + struct betree* betree = get_betree(env, argv[0]); + if(betree == NULL) { + retval = enif_make_badarg(env); + goto cleanup; + } + + struct evt* evt = get_evt(env, argv[1]); + if(evt == NULL) { + retval = enif_make_badarg(env); + goto cleanup; + } + struct betree_event* event = evt->event; + + unsigned int sz; + if(!enif_get_list_length(env, argv[2], &sz) || sz == 0) { + retval = enif_make_badarg(env); + goto cleanup; + } + + ERL_NIF_TERM head; + ERL_NIF_TERM tail = argv[2]; + ids = enif_alloc(sz * sizeof(uint64_t)); + + for(unsigned int i = 0; i < sz; i++) { + if(!enif_get_list_cell(env, tail, &head, &tail)) { + retval = enif_make_badarg(env); + goto cleanup; + } + + if(!enif_get_uint64(env, head, &ids[i])) { + retval = enif_make_badarg(env); + goto cleanup; + } + } + + report = make_report(); + bool result = betree_search_with_event_ids(betree, event, report, ids, sz); + + + if(result == false) { + retval = enif_make_badarg(env); + goto cleanup; + } + + ERL_NIF_TERM res = ids_from_report(env, report); + + retval = enif_make_tuple2(env, atom_ok, res); +cleanup: + if(report != NULL) { + free_report(report); + } + if(ids != NULL) { + enif_free((void *) ids); + } + + clock_gettime(clock_type, &done); + ERL_NIF_TERM etspent = make_time(env, &start, &done); + return enif_make_tuple2(env, retval, etspent); +} + + +static ERL_NIF_TERM nif_betree_search_ids(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) +{ + ERL_NIF_TERM retval; + struct report* report = NULL; + size_t pred_index = 0; + struct betree_event* event = NULL; + uint64_t * ids = NULL; + int clock_type = 0; + + if(argc != 4) { + retval = enif_make_badarg(env); + goto cleanup; + } + + if (!enif_get_int(env, argv[3], &clock_type)) { + return enif_make_badarg(env); + } + struct timespec start, done; + clock_gettime(clock_type, &start); + + struct betree* betree = get_betree(env, argv[0]); + if(betree == NULL) { + retval = enif_make_badarg(env); + goto cleanup; + } + + unsigned int list_len; + if(!enif_get_list_length(env, argv[1], &list_len)) { + retval = enif_make_badarg(env); + goto cleanup; + } + + unsigned int sz; + if(!enif_get_list_length(env, argv[2], &sz) || sz == 0) { + retval = enif_make_badarg(env); + goto cleanup; + } + + event = betree_make_event(betree); + + ERL_NIF_TERM head; + ERL_NIF_TERM tail = argv[1]; + + const ERL_NIF_TERM* tuple; + int tuple_len; + + for(unsigned int i = 0; i < list_len; i++) { + if(!enif_get_list_cell(env, tail, &head, &tail)) { + retval = enif_make_badarg(env); + goto cleanup; + } + + if(!enif_get_tuple(env, head, &tuple_len, &tuple)) { + retval = enif_make_badarg(env); + goto cleanup; + } + + if(!add_variables(env, betree, event, tuple, tuple_len, pred_index)) { + retval = enif_make_badarg(env); + goto cleanup; + } + pred_index += (tuple_len - 1); + } + + tail = argv[2]; + ids = enif_alloc(sz * sizeof(uint64_t)); + + for(unsigned int i = 0; i < sz; i++) { + if(!enif_get_list_cell(env, tail, &head, &tail)) { + retval = enif_make_badarg(env); + goto cleanup; + } + + if(!enif_get_uint64(env, head, &ids[i])) { + retval = enif_make_badarg(env); + goto cleanup; + } + } + + report = make_report(); + bool result = betree_search_with_event_ids(betree, event, report, ids, sz); + + if(result == false) { + retval = enif_make_badarg(env); + goto cleanup; + } + + ERL_NIF_TERM res = ids_from_report(env, report); + + retval = enif_make_tuple2(env, atom_ok, res); + +cleanup: + if(event != NULL) { + betree_free_event(event); + } + if(report != NULL) { + free_report(report); + } + if(ids != NULL) { + enif_free((void *) ids); + } + + clock_gettime(clock_type, &done); + ERL_NIF_TERM etspent = make_time(env, &start, &done); + return enif_make_tuple2(env, retval, etspent); +} + static ERL_NIF_TERM nif_betree_exists(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) { ERL_NIF_TERM retval; @@ -1037,6 +1368,60 @@ static ERL_NIF_TERM nif_betree_exists(ErlNifEnv* env, int argc, const ERL_NIF_TE return retval; } +static ERL_NIF_TERM betree_write_dot(ErlNifEnv* env, int argc, const ERL_NIF_TERM argv[]) +{ + char file_name[1024]; + + if(argc != 2) { + return enif_make_badarg(env); + } + struct betree* betree = get_betree(env, argv[0]); + if(betree == NULL) { + return enif_make_badarg(env); + } + if (!enif_get_string(env, argv[1], file_name, 1024, ERL_NIF_UTF8)) { + return enif_make_badarg(env); + } + + write_dot_to_file(betree, file_name); + return enif_make_atom(env, "ok"); +} + +// Convert to microseconds +static ERL_NIF_TERM make_time(ErlNifEnv* env, const struct timespec* start, const struct timespec* done) { + ErlNifSInt64 tspent = (done->tv_sec - start->tv_sec) * 1000000 + (done->tv_nsec - start->tv_nsec) / 1000; + ERL_NIF_TERM etspent = enif_make_int64(env, tspent); + return etspent; +} + +static int cmpfunc(const void * a, const void * b) { + uint64_t f = *((uint64_t*)a); + uint64_t s = *((uint64_t*)b); + if (f > s) return 1; + if (f < s) return -1; + return 0; +} + +static ERL_NIF_TERM ids_from_report(ErlNifEnv* env, const struct report* report) { + ERL_NIF_TERM res = enif_make_list(env, 0); + size_t sz = report->matched; + if(sz > 0){ + uint64_t * ids = enif_alloc(sz * sizeof(uint64_t)); + if (ids == NULL) return res; + for (size_t i = sz; i;) { + i--; + ids[i] = report->subs[i]; + } + qsort(ids, sz, sizeof(uint64_t), cmpfunc); + for (size_t i = sz; i;) { + i--; + res = enif_make_list_cell(env, enif_make_uint64(env, ids[i]), res); + } + enif_free((void *) ids); + } + return res; +} + static void bump_used_reductions(ErlNifEnv* env, int count) { const int reduction_per_count = 1; @@ -1178,7 +1563,7 @@ static ERL_NIF_TERM nif_betree_search_next(ErlNifEnv* env, int argc, const ERL_N } search_iterator->index++; int count_diff = (search_iterator->report->node_count + search_iterator->report->ops_count) - - count_before; + - count_before; bump_used_reductions(env, count_diff); if (search_iterator->index == search_iterator->subs.count) { @@ -1224,11 +1609,11 @@ static ERL_NIF_TERM nif_betree_search_all(ErlNifEnv* env, int argc, const ERL_NI const struct betree_sub* sub = search_iterator->subs.subs[i]; search_iterator->report->evaluated++; if(match_sub_counting(search_iterator->attr_domain_count, - search_iterator->variables, - sub, - search_iterator->report, - &search_iterator->memoize, - search_iterator->undefined) == true) { + search_iterator->variables, + sub, + search_iterator->report, + &search_iterator->memoize, + search_iterator->undefined) == true) { add_sub_counting(sub->id, search_iterator->report); } } @@ -1247,7 +1632,7 @@ static ERL_NIF_TERM nif_betree_search_all(ErlNifEnv* env, int argc, const ERL_NI } bump_used_reductions(env, - search_iterator->report->node_count + search_iterator->report->ops_count); + search_iterator->report->node_count + search_iterator->report->ops_count); return enif_make_tuple2(env, atom_ok, matched); } @@ -1292,11 +1677,16 @@ static ERL_NIF_TERM nif_betree_search_iterator_release(ErlNifEnv* env, int argc, static ErlNifFunc nif_functions[] = { {"betree_make", 1, nif_betree_make, 0}, + {"betree_make_event", 3, nif_betree_make_event, 0}, {"betree_make_sub", 4, nif_betree_make_sub, 0}, {"betree_insert_sub", 2, nif_betree_insert_sub, 0}, {"betree_exists", 2, nif_betree_exists, 0}, {"betree_search", 2, nif_betree_search, 0}, {"betree_search", 3, nif_betree_search_t, 0}, + {"betree_search_evt", 3, nif_betree_search_evt, 0}, + {"betree_search_evt", 4, nif_betree_search_evt_ids, 0}, + {"betree_search_ids", 4, nif_betree_search_ids, 0}, + {"betree_write_dot", 2, betree_write_dot, ERL_DIRTY_JOB_IO_BOUND}, {"search_iterator", 2, nif_betree_search_iterator, 0}, {"search_next", 1, nif_betree_search_next, 0}, {"search_all", 1, nif_betree_search_all, 0}, diff --git a/c_src/build_betree b/c_src/build_betree index ca89c39..2760832 100755 --- a/c_src/build_betree +++ b/c_src/build_betree @@ -3,7 +3,7 @@ set -x if [ ! -d "be-tree" ]; then - git clone -b 'v1.2.0' --single-branch --depth 1 http://github.com/adgear/be-tree + git clone -b 'v1.3.0' --single-branch --depth 1 http://github.com/adgear/be-tree cd be-tree make NIF=true fi diff --git a/rebar3 b/rebar3 index 9bb538c0b9df2b218bbac9bef1d97f8c5a12c04b..0cccbb6f92c71730d00bfac0ee7d6197b58e2210 100755 GIT binary patch delta 780178 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