diff --git a/planetmint/backend/tarantool/query.py b/planetmint/backend/tarantool/query.py index 8284d5d..5e1f964 100644 --- a/planetmint/backend/tarantool/query.py +++ b/planetmint/backend/tarantool/query.py @@ -145,26 +145,17 @@ def store_assets(connection, assets: list): def get_asset(connection, asset_id: str): space = connection.space("assets") _data = space.select(asset_id, index="txid_search") - data1 = _data _data = _data.data - print(f"DATA : {data1}") - return _data[0] if len(_data) == 1 else [] + return _data[0] if len(_data) > 0 else [] @register_query(TarantoolDB) def get_assets(connection, assets_ids: list) -> list: _returned_data = [] -# space = connection.space("assets") for _id in list(set(assets_ids)): -# asset = space.select(str(_id), index="txid_search") -# print(f"DATA : {asset}") -# if len(asset) == 0: -# continue -# asset = asset.data[0] asset = get_asset(connection, _id) - _returned_data.append(asset) - - return sorted(_returned_data, key=lambda k: k["id"], reverse=False) + _returned_data.append(tuple(asset)) + return sorted(_returned_data, key=lambda k: k[0]["id"], reverse=False) @register_query(TarantoolDB) diff --git a/planetmint/common/transaction.py b/planetmint/common/transaction.py index b5f110c..9961b67 100644 --- a/planetmint/common/transaction.py +++ b/planetmint/common/transaction.py @@ -1261,8 +1261,7 @@ class Transaction(object): assets = list(planet.get_assets(tx_ids)) for asset in assets: if asset is not None: - tx = tx_map[asset['id']] - del asset['id'] + tx = tx_map[asset[1]] tx['asset'] = asset tx_ids = list(tx_map.keys()) diff --git a/tests/backend/tarantool/test_queries.py b/tests/backend/tarantool/test_queries.py index d803e8e..9337f95 100644 --- a/tests/backend/tarantool/test_queries.py +++ b/tests/backend/tarantool/test_queries.py @@ -51,11 +51,11 @@ def test_write_assets(db_conn): # conn = Connection().get_connection() conn = db_conn.get_connection() assets = [ - {'id': "1", 'data': '1'}, - {'id': "2", 'data': '2'}, - {'id': "3", 'data': '3'}, + ({'id': '1', 'data': '1'}, '1', '1'), + ({'id': '2', 'data': '2'}, '2', '2'), + ({'id': '3', 'data': '3'}, '3', '3'), # Duplicated id. Should not be written to the database - {'id': "1", 'data': '1'}, + ({'id': '1', 'data': '1'}, '1', '1'), ] # write the assets @@ -63,7 +63,7 @@ def test_write_assets(db_conn): query.store_asset(connection=conn, asset=asset) # check that 3 assets were written to the database - documents = query.get_assets(assets_ids=[asset["id"] for asset in assets], connection=conn) + documents = query.get_assets(assets_ids=[asset[2] for asset in assets], connection=conn) assert len(documents) == 3 assert list(documents) == assets[:-1]