Skip to content

Commit

Permalink
Fix ERC20 reindex
Browse files Browse the repository at this point in the history
- A `set` should be passed, not a list, so check can be instant
  • Loading branch information
Uxio0 committed Jun 21, 2024
1 parent fc72fe7 commit 11f8366
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 16 deletions.
9 changes: 5 additions & 4 deletions safe_transaction_service/history/services/index_service.py
Original file line number Diff line number Diff line change
Expand Up @@ -392,17 +392,18 @@ def _reindex(
# No issues on modifying the indexer as we should be provided with a new instance
indexer.IGNORE_ADDRESSES_ON_LOG_FILTER = False
else:
addresses = list(
indexer.database_queryset.values_list("address", flat=True)
)
addresses = set(indexer.database_queryset.values_list("address", flat=True))

element_number: int = 0
if not addresses:
logger.warning("No addresses to process")
else:
# Don't log all the addresses
addresses_len = len(addresses)
addresses_str = (
str(addresses) if len(addresses) < 10 else f"{addresses[:10]}..."
str(addresses)
if addresses_len < 10
else f"{addresses_len} addresses..."
)
logger.info("Start reindexing addresses %s", addresses_str)
current_block_number = self.ethereum_client.current_block_number
Expand Down
27 changes: 15 additions & 12 deletions safe_transaction_service/history/tests/test_commands.py
Original file line number Diff line number Diff line change
Expand Up @@ -209,22 +209,23 @@ def test_reindex_master_copies(self, current_block_number_mock: PropertyMock):
f"--from-block-number={from_block_number}",
stdout=buf,
)
expected_addresses = {safe_master_copy.address}
self.assertIn(
f"Start reindexing addresses {[safe_master_copy.address]}",
f"Start reindexing addresses {expected_addresses}",
cm.output[0],
)
self.assertIn("found 0 traces/events", cm.output[1])
self.assertIn(
f"End reindexing addresses {[safe_master_copy.address]}",
f"End reindexing addresses {expected_addresses}",
cm.output[3],
)
find_relevant_elements_mock.assert_any_call(
[safe_master_copy.address],
{safe_master_copy.address},
from_block_number,
from_block_number + block_process_limit - 1,
)
find_relevant_elements_mock.assert_any_call(
[safe_master_copy.address],
{safe_master_copy.address},
from_block_number + block_process_limit,
current_block_number_mock.return_value,
)
Expand All @@ -251,22 +252,23 @@ def test_reindex_master_copies(self, current_block_number_mock: PropertyMock):
f"--from-block-number={from_block_number}",
stdout=buf,
)
expected_addresses = {safe_l2_master_copy.address}
self.assertIn(
f"Start reindexing addresses {[safe_l2_master_copy.address]}",
f"Start reindexing addresses {expected_addresses}",
cm.output[0],
)
self.assertIn("found 0 traces/events", cm.output[1])
self.assertIn(
f"End reindexing addresses {[safe_l2_master_copy.address]}",
f"End reindexing addresses {expected_addresses}",
cm.output[3],
)
find_relevant_elements_mock.assert_any_call(
[safe_l2_master_copy.address],
{safe_l2_master_copy.address},
from_block_number,
from_block_number + block_process_limit - 1,
)
find_relevant_elements_mock.assert_any_call(
[safe_l2_master_copy.address],
{safe_l2_master_copy.address},
from_block_number + block_process_limit,
current_block_number_mock.return_value,
)
Expand Down Expand Up @@ -313,22 +315,23 @@ def test_reindex_erc20_events(self, current_block_number_mock: PropertyMock):
f"--from-block-number={from_block_number}",
stdout=buf,
)
expected_addresses = {safe_contract.address}
self.assertIn(
f"Start reindexing addresses {[safe_contract.address]}",
f"Start reindexing addresses {expected_addresses}",
cm.output[0],
)
self.assertIn("found 0 traces/events", cm.output[1])
self.assertIn(
f"End reindexing addresses {[safe_contract.address]}",
f"End reindexing addresses {expected_addresses}",
cm.output[3],
)
find_relevant_elements_mock.assert_any_call(
[safe_contract.address],
{safe_contract.address},
from_block_number,
from_block_number + block_process_limit - 1,
)
find_relevant_elements_mock.assert_any_call(
[safe_contract.address],
{safe_contract.address},
from_block_number + block_process_limit,
current_block_number_mock.return_value,
)
Expand Down

0 comments on commit 11f8366

Please sign in to comment.