From 33769128710220b526b944143c621cd69ff798b6 Mon Sep 17 00:00:00 2001 From: Lorenz Herzberger Date: Tue, 21 Jun 2022 15:24:59 +0200 Subject: [PATCH] fixed pattern search for meta_data Signed-off-by: Lorenz Herzberger --- planetmint/backend/tarantool/query.py | 3 ++- planetmint/backend/tarantool/schema.py | 2 +- planetmint/web/views/metadata.py | 1 - 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/planetmint/backend/tarantool/query.py b/planetmint/backend/tarantool/query.py index 32bd560..499c1c3 100644 --- a/planetmint/backend/tarantool/query.py +++ b/planetmint/backend/tarantool/query.py @@ -262,8 +262,9 @@ def get_txids_filtered(connection, asset_id: str, operation: str = None, @register_query(TarantoolDBConnection) def text_search(conn, search, table='assets', limit=0): pattern = ".{}.".format(search) + field_no = 1 if table == 'assets' else 2 # 2 for meta_data res = conn.run( - conn.space(table).call('indexed_pattern_search', (table, 1, pattern)) + conn.space(table).call('indexed_pattern_search', (table, field_no, pattern)) ) return res[0] if limit == 0 else res[0][:limit] diff --git a/planetmint/backend/tarantool/schema.py b/planetmint/backend/tarantool/schema.py index bf7017b..8f74084 100644 --- a/planetmint/backend/tarantool/schema.py +++ b/planetmint/backend/tarantool/schema.py @@ -62,7 +62,7 @@ INDEX_COMMANDS = { "meta_data": { "id_search": "meta_datas:create_index('id_search', { type='hash' , parts={'transaction_id'}})", - "text_search": "meta_datas:create_index('secondary', {unique=false,parts={2,'string'}}" + "text_search": "meta_datas:create_index('secondary', {unique=false,parts={2,'string'}})" }, "pre_commits": { diff --git a/planetmint/web/views/metadata.py b/planetmint/web/views/metadata.py index d8faf19..171c258 100644 --- a/planetmint/web/views/metadata.py +++ b/planetmint/web/views/metadata.py @@ -46,7 +46,6 @@ class MetadataApi(Resource): metadata = planet.text_search(**args) try: - # This only works with MongoDB as the backend return list(metadata) except OperationError as e: return make_error(