diff options
author | Marco Boss <bossm8@bfh.ch> | 2022-02-26 17:37:52 +0100 |
---|---|---|
committer | Marco Boss <bossm8@bfh.ch> | 2022-02-26 17:37:52 +0100 |
commit | 99dd36f7f6b22014ed671e661e6553ba7c41810b (patch) | |
tree | 486638498e13136c13a53a8f9774e9340a872f32 | |
parent | f11cab90fff2095713a0bd74a2db844147185463 (diff) |
add index on wire_targets
- better performance on local db
- many queries use wire_target_serial_id as join condition -> discussion use this as shard key?
-rw-r--r-- | src/exchangedb/exchange-0001.sql | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/exchangedb/exchange-0001.sql b/src/exchangedb/exchange-0001.sql index e8707fbff..184d62a7c 100644 --- a/src/exchangedb/exchange-0001.sql +++ b/src/exchangedb/exchange-0001.sql @@ -88,6 +88,14 @@ CREATE TABLE IF NOT EXISTS wire_targets_default PARTITION OF wire_targets FOR VALUES WITH (MODULUS 1, REMAINDER 0); +-- FIXME partition by serial_id rather than h_payto, +-- it is used more in join conditions - crucial for sharding to select this. +-- Author: (Boss Marco) +CREATE INDEX IF NOT EXISTS wire_targets_serial_id_index + ON wire_targets + (wire_target_serial_id + ); + CREATE TABLE IF NOT EXISTS reserves (reserve_uuid BIGINT GENERATED BY DEFAULT AS IDENTITY ,reserve_pub BYTEA PRIMARY KEY CHECK(LENGTH(reserve_pub)=32) |