Skip to content

Commit fe1d412

Browse files
authored
Merge pull request #19 from OpenRiak/nhse-o34-d34update
Don't require regex to be compiled (martinsumner#484)
2 parents fb03250 + dc7b958 commit fe1d412

File tree

4 files changed

+32
-3
lines changed

4 files changed

+32
-3
lines changed

src/leveled_codec.erl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@
138138
-type maybe_lookup() ::
139139
lookup | no_lookup.
140140
-type actual_regex() ::
141-
{re_pattern, term(), term(), term(), term()}.
141+
{re_pattern, term(), term(), term(), term()} | iodata().
142142
-type capture_value() :: binary() | integer().
143143
-type query_filter_fun() ::
144144
fun((#{binary() => capture_value()}) -> boolean()).

src/leveled_evalparser.yrl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,5 +80,5 @@ re_compile(RegexStr) ->
8080
re_compile(RegexStr, {pcre, element(2, RegexStr)}).
8181

8282
re_compile({string, _LN, Regex}, Method) ->
83-
{ok, CRE} = leveled_util:regex_compile(Regex, element(1, Method)),
84-
CRE.
83+
{ok, _CRE} = leveled_util:regex_compile(Regex, element(1, Method)),
84+
Regex.

test/end_to_end/iterator_SUITE.erl

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -764,7 +764,13 @@ query_count(_Config) ->
764764
{index_query, BucketBin, {fun testutil:foldkeysfun/3, []},
765765
{<<"idx2_bin">>, <<"2000">>, <<"2000|">>}, {false, RegMia}},
766766
{async, Mia2KFolder1} = leveled_bookie:book_returnfolder(Book2, Query1),
767+
Query1A =
768+
{index_query, BucketBin, {fun testutil:foldkeysfun/3, []},
769+
{<<"idx2_bin">>, <<"2000">>, <<"2000|">>},
770+
{false, <<"[0-9]+Mia">>}},
771+
{async, Mia2KFolder1A} = leveled_bookie:book_returnfolder(Book2, Query1A),
767772
Mia2000Count1 = length(Mia2KFolder1()),
773+
Mia2000Count1 = length(Mia2KFolder1A()),
768774
Query2 =
769775
{index_query, BucketBin, {fun testutil:foldkeysfun/3, []},
770776
{<<"idx2_bin">>, <<"2000">>, <<"2001">>}, {true, undefined}},

test/end_to_end/riak_SUITE.erl

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2032,6 +2032,29 @@ dollar_key_index(_Config) ->
20322032
true = 657 == length(FolderREMatch()),
20332033
true = 0 == length(FolderREMiss()),
20342034

2035+
% Repeat without pre-compiling the regex
2036+
{async, FolderREMatchIORE} =
2037+
leveled_bookie:book_keylist(
2038+
Bookie1,
2039+
?RIAK_TAG,
2040+
<<"Bucket1">>,
2041+
{StartKey, EndKey},
2042+
{FoldKeysFun, []},
2043+
<<"K.y">>
2044+
),
2045+
{async, FolderREMissIORE} =
2046+
leveled_bookie:book_keylist(
2047+
Bookie1,
2048+
?RIAK_TAG,
2049+
<<"Bucket1">>,
2050+
{StartKey, EndKey},
2051+
{FoldKeysFun, []},
2052+
<<"key">>
2053+
),
2054+
2055+
true = 657 == length(FolderREMatchIORE()),
2056+
true = 0 == length(FolderREMissIORE()),
2057+
20352058
% Delete an object - and check that it does not show in
20362059
% $key index query
20372060
DeleteFun =

0 commit comments

Comments
 (0)