mirror of
https://github.com/lightningnetwork/lnd.git
synced 2025-12-04 18:01:57 +01:00
graph/db+sqldb: implement FetchChannelEdgesByOutpoint/SCID
And run `TestEdgeInsertionDeletion` against our SQL backends.
This commit is contained in:
@@ -262,6 +262,51 @@ ORDER BY
|
||||
ELSE COALESCE(cp2.last_update, 0)
|
||||
END ASC;
|
||||
|
||||
-- name: GetChannelByOutpointWithPolicies :one
|
||||
SELECT
|
||||
sqlc.embed(c),
|
||||
|
||||
n1.pub_key AS node1_pubkey,
|
||||
n2.pub_key AS node2_pubkey,
|
||||
|
||||
-- Node 1 policy
|
||||
cp1.id AS policy_1_id,
|
||||
cp1.node_id AS policy_1_node_id,
|
||||
cp1.version AS policy_1_version,
|
||||
cp1.timelock AS policy_1_timelock,
|
||||
cp1.fee_ppm AS policy_1_fee_ppm,
|
||||
cp1.base_fee_msat AS policy_1_base_fee_msat,
|
||||
cp1.min_htlc_msat AS policy_1_min_htlc_msat,
|
||||
cp1.max_htlc_msat AS policy_1_max_htlc_msat,
|
||||
cp1.last_update AS policy_1_last_update,
|
||||
cp1.disabled AS policy_1_disabled,
|
||||
cp1.inbound_base_fee_msat AS policy1_inbound_base_fee_msat,
|
||||
cp1.inbound_fee_rate_milli_msat AS policy1_inbound_fee_rate_milli_msat,
|
||||
cp1.signature AS policy_1_signature,
|
||||
|
||||
-- Node 2 policy
|
||||
cp2.id AS policy_2_id,
|
||||
cp2.node_id AS policy_2_node_id,
|
||||
cp2.version AS policy_2_version,
|
||||
cp2.timelock AS policy_2_timelock,
|
||||
cp2.fee_ppm AS policy_2_fee_ppm,
|
||||
cp2.base_fee_msat AS policy_2_base_fee_msat,
|
||||
cp2.min_htlc_msat AS policy_2_min_htlc_msat,
|
||||
cp2.max_htlc_msat AS policy_2_max_htlc_msat,
|
||||
cp2.last_update AS policy_2_last_update,
|
||||
cp2.disabled AS policy_2_disabled,
|
||||
cp2.inbound_base_fee_msat AS policy2_inbound_base_fee_msat,
|
||||
cp2.inbound_fee_rate_milli_msat AS policy2_inbound_fee_rate_milli_msat,
|
||||
cp2.signature AS policy_2_signature
|
||||
FROM channels c
|
||||
JOIN nodes n1 ON c.node_id_1 = n1.id
|
||||
JOIN nodes n2 ON c.node_id_2 = n2.id
|
||||
LEFT JOIN channel_policies cp1
|
||||
ON cp1.channel_id = c.id AND cp1.node_id = c.node_id_1 AND cp1.version = c.version
|
||||
LEFT JOIN channel_policies cp2
|
||||
ON cp2.channel_id = c.id AND cp2.node_id = c.node_id_2 AND cp2.version = c.version
|
||||
WHERE c.outpoint = $1 AND c.version = $2;
|
||||
|
||||
-- name: HighestSCID :one
|
||||
SELECT scid
|
||||
FROM channels
|
||||
@@ -540,3 +585,11 @@ SELECT *
|
||||
FROM zombie_channels
|
||||
WHERE scid = $1
|
||||
AND version = $2;
|
||||
|
||||
-- name: IsZombieChannel :one
|
||||
SELECT EXISTS (
|
||||
SELECT 1
|
||||
FROM zombie_channels
|
||||
WHERE scid = $1
|
||||
AND version = $2
|
||||
) AS is_zombie;
|
||||
|
||||
Reference in New Issue
Block a user