Execution time: 2m 59s
Planning time: 4.35ms
Triggers: N/A
#1 Limit
#2 Nested Loop Join
#3  └ Gather Merge
#4   └ Sort
#5    └ Parallel Append
#6     └ Parallel Seq Scan

Limit

Nested Loop Join

Left join
0

Gather Merge

0

Sort

by transaction_8.block_number DESC, transaction_8.transaction_index
0

Parallel Append

0

Parallel Seq Scan

on _timescaledb_internal._hyper_2_11_chunk as transaction_8
Limit  (cost=4230410.31..4230410.32 rows=10 width=314) (actual time=178970.086..178970.306 rows=10 loops=1)
  Output: transaction_8.hash, transaction_8."from", transaction_8."to", transaction_8.block_hash, transaction_8.block_number, transaction_8.block_timestamp, transaction_8.nonce, transaction_8.transaction_index, transaction_8.type, transaction_8.value, transaction_8.method_id, transaction_8.gas, price_1.token_hash, price_1.block_timestamp, price_1.price
  ->  Nested Loop Left Join  (cost=4230410.31..52885556.52 rows=32017413498 width=314) (actual time=178970.085..178970.303 rows=10 loops=1)
        Output: transaction_8.hash, transaction_8."from", transaction_8."to", transaction_8.block_hash, transaction_8.block_number, transaction_8.block_timestamp, transaction_8.nonce, transaction_8.transaction_index, transaction_8.type, transaction_8.value, transaction_8.method_id, transaction_8.gas, price_1.token_hash, price_1.block_timestamp, price_1.price
        Inner Unique: true
        ->  Gather Merge  (cost=4230409.89..6611771.30 rows=20894526 width=265) (actual time=178963.056..178963.156 rows=10 loops=1)
              Output: transaction_8.hash, transaction_8."from", transaction_8."to", transaction_8.block_hash, transaction_8.block_number, transaction_8.block_timestamp, transaction_8.nonce, transaction_8.transaction_index, transaction_8.type, transaction_8.value, transaction_8.method_id, transaction_8.gas
              Workers Planned: 1
              Workers Launched: 0
              ->  Sort  (cost=4229409.88..4260137.12 rows=12290897 width=265) (actual time=178962.472..178962.483 rows=10 loops=1)
                    Output: transaction_8.hash, transaction_8."from", transaction_8."to", transaction_8.block_hash, transaction_8.block_number, transaction_8.block_timestamp, transaction_8.nonce, transaction_8.transaction_index, transaction_8.type, transaction_8.value, transaction_8.method_id, transaction_8.gas
                    Sort Key: transaction_8.block_number DESC, transaction_8.transaction_index
                    Sort Method: external merge  Disk: 5753312kB
                    ->  Parallel Append  (cost=0.00..961259.46 rows=12290897 width=265) (actual time=0.581..68685.070 rows=20894917 loops=1)
                          ->  Parallel Seq Scan on _timescaledb_internal._hyper_2_11_chunk transaction_8  (cost=0.00..132680.19 rows=1818019 width=264) (actual time=11.889..11274.967 rows=3091232 loops=1)
                                Output: transaction_8.hash, transaction_8."from", transaction_8."to", transaction_8.block_hash, transaction_8.block_number, transaction_8.block_timestamp, transaction_8.nonce, transaction_8.transaction_index, transaction_8.type, transaction_8.value, transaction_8.method_id, transaction_8.gas
                          ->  Parallel Seq Scan on _timescaledb_internal._hyper_2_9_chunk transaction_7  (cost=0.00..96123.71 rows=1277771 width=265) (actual time=0.914..5587.765 rows=2171987 loops=1)
                                Output: transaction_7.hash, transaction_7."from", transaction_7."to", transaction_7.block_hash, transaction_7.block_number, transaction_7.block_timestamp, transaction_7.nonce, transaction_7.transaction_index, transaction_7.type, transaction_7.value, transaction_7.method_id, transaction_7.gas
                          ->  Parallel Seq Scan on _timescaledb_internal._hyper_2_8_chunk transaction_6  (cost=0.00..80661.83 rows=1077583 width=265) (actual time=0.728..8692.922 rows=1831175 loops=1)
                                Output: transaction_6.hash, transaction_6."from", transaction_6."to", transaction_6.block_hash, transaction_6.block_number, transaction_6.block_timestamp, transaction_6.nonce, transaction_6.transaction_index, transaction_6.type, transaction_6.value, transaction_6.method_id, transaction_6.gas
                          ->  Parallel Seq Scan on _timescaledb_internal._hyper_2_18_chunk transaction_10  (cost=0.00..71055.45 rows=973445 width=266) (actual time=5.461..6002.372 rows=1654738 loops=1)
                                Output: transaction_10.hash, transaction_10."from", transaction_10."to", transaction_10.block_hash, transaction_10.block_number, transaction_10.block_timestamp, transaction_10.nonce, transaction_10.transaction_index, transaction_10.type, transaction_10.value, transaction_10.method_id, transaction_10.gas
                          ->  Parallel Seq Scan on _timescaledb_internal._hyper_2_12_chunk transaction_9  (cost=0.00..67049.72 rows=918872 width=265) (actual time=2.573..3536.932 rows=1561748 loops=1)
                                Output: transaction_9.hash, transaction_9."from", transaction_9."to", transaction_9.block_hash, transaction_9.block_number, transaction_9.block_timestamp, transaction_9.nonce, transaction_9.transaction_index, transaction_9.type, transaction_9.value, transaction_9.method_id, transaction_9.gas
                          ->  Parallel Seq Scan on _timescaledb_internal._hyper_2_5_chunk transaction_4  (cost=0.00..64819.39 rows=893639 width=265) (actual time=0.457..7127.724 rows=1519307 loops=1)
                                Output: transaction_4.hash, transaction_4."from", transaction_4."to", transaction_4.block_hash, transaction_4.block_number, transaction_4.block_timestamp, transaction_4.nonce, transaction_4.transaction_index, transaction_4.type, transaction_4.value, transaction_4.method_id, transaction_4.gas
                          ->  Parallel Seq Scan on _timescaledb_internal._hyper_2_2_chunk transaction_1  (cost=0.00..62008.76 rows=858076 width=266) (actual time=8.870..3902.187 rows=1459334 loops=1)
                                Output: transaction_1.hash, transaction_1."from", transaction_1."to", transaction_1.block_hash, transaction_1.block_number, transaction_1.block_timestamp, transaction_1.nonce, transaction_1.transaction_index, transaction_1.type, transaction_1.value, transaction_1.method_id, transaction_1.gas
                          ->  Parallel Seq Scan on _timescaledb_internal._hyper_2_4_chunk transaction_3  (cost=0.00..60013.55 rows=827255 width=266) (actual time=0.413..5725.602 rows=1406401 loops=1)
                                Output: transaction_3.hash, transaction_3."from", transaction_3."to", transaction_3.block_hash, transaction_3.block_number, transaction_3.block_timestamp, transaction_3.nonce, transaction_3.transaction_index, transaction_3.type, transaction_3.value, transaction_3.method_id, transaction_3.gas
                          ->  Parallel Seq Scan on _timescaledb_internal._hyper_2_20_chunk transaction_11  (cost=0.00..59475.71 rows=814971 width=265) (actual time=0.634..2728.157 rows=1385388 loops=1)
                                Output: transaction_11.hash, transaction_11."from", transaction_11."to", transaction_11.block_hash, transaction_11.block_number, transaction_11.block_timestamp, transaction_11.nonce, transaction_11.transaction_index, transaction_11.type, transaction_11.value, transaction_11.method_id, transaction_11.gas
                          ->  Parallel Seq Scan on _timescaledb_internal._hyper_2_6_chunk transaction_5  (cost=0.00..59351.00 rows=819400 width=266) (actual time=6.475..2877.401 rows=1392937 loops=1)
                                Output: transaction_5.hash, transaction_5."from", transaction_5."to", transaction_5.block_hash, transaction_5.block_number, transaction_5.block_timestamp, transaction_5.nonce, transaction_5.transaction_index, transaction_5.type, transaction_5.value, transaction_5.method_id, transaction_5.gas
                          ->  Parallel Seq Scan on _timescaledb_internal._hyper_2_3_chunk transaction_2  (cost=0.00..58056.10 rows=799610 width=266) (actual time=1.008..6863.462 rows=1359162 loops=1)
                                Output: transaction_2.hash, transaction_2."from", transaction_2."to", transaction_2.block_hash, transaction_2.block_number, transaction_2.block_timestamp, transaction_2.nonce, transaction_2.transaction_index, transaction_2.type, transaction_2.value, transaction_2.method_id, transaction_2.gas
                          ->  Parallel Seq Scan on _timescaledb_internal._hyper_2_25_chunk transaction_13  (cost=0.00..54714.70 rows=749270 width=265) (actual time=1.021..1930.668 rows=1274620 loops=1)
                                Output: transaction_13.hash, transaction_13."from", transaction_13."to", transaction_13.block_hash, transaction_13.block_number, transaction_13.block_timestamp, transaction_13.nonce, transaction_13.transaction_index, transaction_13.type, transaction_13.value, transaction_13.method_id, transaction_13.gas
                          ->  Parallel Seq Scan on _timescaledb_internal._hyper_2_21_chunk transaction_12  (cost=0.00..17268.36 rows=236536 width=265) (actual time=0.890..403.796 rows=401980 loops=1)
                                Output: transaction_12.hash, transaction_12."from", transaction_12."to", transaction_12.block_hash, transaction_12.block_number, transaction_12.block_timestamp, transaction_12.nonce, transaction_12.transaction_index, transaction_12.type, transaction_12.value, transaction_12.method_id, transaction_12.gas
                          ->  Parallel Seq Scan on _timescaledb_internal._hyper_2_26_chunk transaction_14  (cost=0.00..16526.50 rows=226450 width=265) (actual time=0.580..361.544 rows=384908 loops=1)
                                Output: transaction_14.hash, transaction_14."from", transaction_14."to", transaction_14.block_hash, transaction_14.block_number, transaction_14.block_timestamp, transaction_14.nonce, transaction_14.transaction_index, transaction_14.type, transaction_14.value, transaction_14.method_id, transaction_14.gas
        ->  Append  (cost=0.42..2.17 rows=5 width=49) (actual time=0.713..0.713 rows=0 loops=10)
              ->  Index Scan using _hyper_4_17_chunk_prices_unique_index on _timescaledb_internal._hyper_4_17_chunk price_1  (cost=0.42..0.46 rows=1 width=49) (actual time=0.236..0.236 rows=0 loops=10)
                    Output: price_1.token_hash, price_1.block_timestamp, price_1.price
                    Index Cond: ((price_1.token_hash = 'ETH'::text) AND (price_1.block_timestamp = transaction_8.block_timestamp))
              ->  Index Scan using _hyper_4_19_chunk_prices_unique_index on _timescaledb_internal._hyper_4_19_chunk price_2  (cost=0.42..0.46 rows=1 width=49) (actual time=0.200..0.200 rows=0 loops=10)
                    Output: price_2.token_hash, price_2.block_timestamp, price_2.price
                    Index Cond: ((price_2.token_hash = 'ETH'::text) AND (price_2.block_timestamp = transaction_8.block_timestamp))
              ->  Index Scan using _hyper_4_22_chunk_prices_block_timestamp_idx on _timescaledb_internal._hyper_4_22_chunk price_3  (cost=0.29..0.38 rows=1 width=49) (actual time=0.004..0.004 rows=0 loops=10)
                    Output: price_3.token_hash, price_3.block_timestamp, price_3.price
                    Index Cond: (price_3.block_timestamp = transaction_8.block_timestamp)
                    Filter: (price_3.token_hash = 'ETH'::text)
                    Rows Removed by Filter: 1
              ->  Index Scan using _hyper_4_24_chunk_prices_unique_index on _timescaledb_internal._hyper_4_24_chunk price_4  (cost=0.42..0.46 rows=1 width=49) (actual time=0.327..0.327 rows=0 loops=7)
                    Output: price_4.token_hash, price_4.block_timestamp, price_4.price
                    Index Cond: ((price_4.token_hash = 'ETH'::text) AND (price_4.block_timestamp = transaction_8.block_timestamp))
              ->  Index Scan using _hyper_4_27_chunk_prices_block_timestamp_idx on _timescaledb_internal._hyper_4_27_chunk price_5  (cost=0.29..0.38 rows=1 width=49) (actual time=0.060..0.060 rows=0 loops=7)
                    Output: price_5.token_hash, price_5.block_timestamp, price_5.price
                    Index Cond: (price_5.block_timestamp = transaction_8.block_timestamp)
                    Filter: (price_5.token_hash = 'ETH'::text)
Query Identifier: -1528467526897173124
Planning Time: 4.352 ms
Execution Time: 179720.454 ms
explain analyze verbose
select 
    transaction.*,
    price.*
from chain.transactions transaction
left join chain.prices price on price.block_timestamp=transaction.block_timestamp and price.token_hash='ETH'
order by transaction.block_number desc, transaction.transaction_index asc
limit 10
Table Count Time
_timescaledb_internal._hyper_2_11_chunk 1 5s 637ms 3%
#6 Seq Scan 5s 637ms 3%
Function Count Time
No function used
Node Type Count Time
Gather Merge 1 1m 29s 50%
#3 Gather Merge 1m 29s 50%
Sort 1 55s 139ms 31%
#4 Sort 55s 139ms 31%
Append 1 28s 705ms 16%
#5 Append 28s 705ms 16%
Seq Scan 1 5s 637ms 3%
#6 Seq Scan 5s 637ms 3%
Nested Loop Join 1 7.15ms 0%
#2 Nested Loop Join 7.15ms 0%
Limit 1 0.003ms 0%
#1 Limit 0.003ms 0%
Index Count Time
No index used