graph/db: add v2 policy fields to database layer
Extend channel policy queries and structs to support v2-specific fields: - Add BlockHeight field to track the block height for v2 policy updates. - Add DisableFlags field for v2 channel disable messages. Both fields are nullable (sql.NullInt64/Int16) to maintain backwards compatibility with v1 channels. The fields are initialized as null in updateChanEdgePolicy and threaded through all policy-related queries (GetChannelBySCIDWithPolicies, ListChannelsByNodeID, UpsertEdgePolicy, etc.) and the extractChannelPolicies helper. This commit includes both the hand-written SQL query updates and the corresponding sqlc-generated Go code.
This commit is contained in:
3 files changed
+214
-24
No files matched your search
@@ -3517,6 +3517,8 @@ func updateChanEdgePolicy(ctx context.Context, tx SQLQueries,
|
||||
InboundBaseFeeMsat: inboundBase,
|
||||
InboundFeeRateMilliMsat: inboundRate,
|
||||
Signature: edge.SigBytes,
|
||||
BlockHeight: sql.NullInt64{},
|
||||
DisableFlags: sql.NullInt16{},
|
||||
})
|
||||
if err != nil {
|
||||
return node1Pub, node2Pub, isNode1,
|
||||
@@ -4830,6 +4832,8 @@ func extractChannelPolicies(row any) (*sqlc.GraphChannelPolicy,
|
||||
Disabled: r.Policy1Disabled,
|
||||
MessageFlags: r.Policy1MessageFlags,
|
||||
ChannelFlags: r.Policy1ChannelFlags,
|
||||
BlockHeight: r.Policy1BlockHeight,
|
||||
DisableFlags: r.Policy1DisableFlags,
|
||||
}
|
||||
}
|
||||
if r.Policy2Timelock.Valid {
|
||||
@@ -4844,6 +4848,8 @@ func extractChannelPolicies(row any) (*sqlc.GraphChannelPolicy,
|
||||
Disabled: r.Policy2Disabled,
|
||||
MessageFlags: r.Policy2MessageFlags,
|
||||
ChannelFlags: r.Policy2ChannelFlags,
|
||||
BlockHeight: r.Policy2BlockHeight,
|
||||
DisableFlags: r.Policy2DisableFlags,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4868,6 +4874,8 @@ func extractChannelPolicies(row any) (*sqlc.GraphChannelPolicy,
|
||||
MessageFlags: r.Policy1MessageFlags,
|
||||
ChannelFlags: r.Policy1ChannelFlags,
|
||||
Signature: r.Policy1Signature,
|
||||
BlockHeight: r.Policy1BlockHeight,
|
||||
DisableFlags: r.Policy1DisableFlags,
|
||||
}
|
||||
}
|
||||
if r.Policy2ID.Valid {
|
||||
@@ -4888,6 +4896,8 @@ func extractChannelPolicies(row any) (*sqlc.GraphChannelPolicy,
|
||||
MessageFlags: r.Policy2MessageFlags,
|
||||
ChannelFlags: r.Policy2ChannelFlags,
|
||||
Signature: r.Policy2Signature,
|
||||
BlockHeight: r.Policy2BlockHeight,
|
||||
DisableFlags: r.Policy2DisableFlags,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4912,6 +4922,8 @@ func extractChannelPolicies(row any) (*sqlc.GraphChannelPolicy,
|
||||
MessageFlags: r.Policy1MessageFlags,
|
||||
ChannelFlags: r.Policy1ChannelFlags,
|
||||
Signature: r.Policy1Signature,
|
||||
BlockHeight: r.Policy1BlockHeight,
|
||||
DisableFlags: r.Policy1DisableFlags,
|
||||
}
|
||||
}
|
||||
if r.Policy2ID.Valid {
|
||||
@@ -4932,6 +4944,8 @@ func extractChannelPolicies(row any) (*sqlc.GraphChannelPolicy,
|
||||
MessageFlags: r.Policy2MessageFlags,
|
||||
ChannelFlags: r.Policy2ChannelFlags,
|
||||
Signature: r.Policy2Signature,
|
||||
BlockHeight: r.Policy2BlockHeight,
|
||||
DisableFlags: r.Policy2DisableFlags,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4956,6 +4970,8 @@ func extractChannelPolicies(row any) (*sqlc.GraphChannelPolicy,
|
||||
MessageFlags: r.Policy1MessageFlags,
|
||||
ChannelFlags: r.Policy1ChannelFlags,
|
||||
Signature: r.Policy1Signature,
|
||||
BlockHeight: r.Policy1BlockHeight,
|
||||
DisableFlags: r.Policy1DisableFlags,
|
||||
}
|
||||
}
|
||||
if r.Policy2ID.Valid {
|
||||
@@ -4976,6 +4992,8 @@ func extractChannelPolicies(row any) (*sqlc.GraphChannelPolicy,
|
||||
MessageFlags: r.Policy2MessageFlags,
|
||||
ChannelFlags: r.Policy2ChannelFlags,
|
||||
Signature: r.Policy2Signature,
|
||||
BlockHeight: r.Policy2BlockHeight,
|
||||
DisableFlags: r.Policy2DisableFlags,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5000,6 +5018,8 @@ func extractChannelPolicies(row any) (*sqlc.GraphChannelPolicy,
|
||||
MessageFlags: r.Policy1MessageFlags,
|
||||
ChannelFlags: r.Policy1ChannelFlags,
|
||||
Signature: r.Policy1Signature,
|
||||
BlockHeight: r.Policy1BlockHeight,
|
||||
DisableFlags: r.Policy1DisableFlags,
|
||||
}
|
||||
}
|
||||
if r.Policy2ID.Valid {
|
||||
@@ -5020,6 +5040,8 @@ func extractChannelPolicies(row any) (*sqlc.GraphChannelPolicy,
|
||||
MessageFlags: r.Policy2MessageFlags,
|
||||
ChannelFlags: r.Policy2ChannelFlags,
|
||||
Signature: r.Policy2Signature,
|
||||
BlockHeight: r.Policy2BlockHeight,
|
||||
DisableFlags: r.Policy2DisableFlags,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5044,6 +5066,8 @@ func extractChannelPolicies(row any) (*sqlc.GraphChannelPolicy,
|
||||
MessageFlags: r.Policy1MessageFlags,
|
||||
ChannelFlags: r.Policy1ChannelFlags,
|
||||
Signature: r.Policy1Signature,
|
||||
BlockHeight: r.Policy1BlockHeight,
|
||||
DisableFlags: r.Policy1DisableFlags,
|
||||
}
|
||||
}
|
||||
if r.Policy2ID.Valid {
|
||||
@@ -5064,6 +5088,8 @@ func extractChannelPolicies(row any) (*sqlc.GraphChannelPolicy,
|
||||
MessageFlags: r.Policy2MessageFlags,
|
||||
ChannelFlags: r.Policy2ChannelFlags,
|
||||
Signature: r.Policy2Signature,
|
||||
BlockHeight: r.Policy2BlockHeight,
|
||||
DisableFlags: r.Policy2DisableFlags,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5088,6 +5114,8 @@ func extractChannelPolicies(row any) (*sqlc.GraphChannelPolicy,
|
||||
MessageFlags: r.Policy1MessageFlags,
|
||||
ChannelFlags: r.Policy1ChannelFlags,
|
||||
Signature: r.Policy1Signature,
|
||||
BlockHeight: r.Policy1BlockHeight,
|
||||
DisableFlags: r.Policy1DisableFlags,
|
||||
}
|
||||
}
|
||||
if r.Policy2ID.Valid {
|
||||
@@ -5108,6 +5136,8 @@ func extractChannelPolicies(row any) (*sqlc.GraphChannelPolicy,
|
||||
MessageFlags: r.Policy2MessageFlags,
|
||||
ChannelFlags: r.Policy2ChannelFlags,
|
||||
Signature: r.Policy2Signature,
|
||||
BlockHeight: r.Policy2BlockHeight,
|
||||
DisableFlags: r.Policy2DisableFlags,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5132,6 +5162,8 @@ func extractChannelPolicies(row any) (*sqlc.GraphChannelPolicy,
|
||||
MessageFlags: r.Policy1MessageFlags,
|
||||
ChannelFlags: r.Policy1ChannelFlags,
|
||||
Signature: r.Policy1Signature,
|
||||
BlockHeight: r.Policy1BlockHeight,
|
||||
DisableFlags: r.Policy1DisableFlags,
|
||||
}
|
||||
}
|
||||
if r.Policy2ID.Valid {
|
||||
@@ -5152,6 +5184,8 @@ func extractChannelPolicies(row any) (*sqlc.GraphChannelPolicy,
|
||||
MessageFlags: r.Policy2MessageFlags,
|
||||
ChannelFlags: r.Policy2ChannelFlags,
|
||||
Signature: r.Policy2Signature,
|
||||
BlockHeight: r.Policy2BlockHeight,
|
||||
DisableFlags: r.Policy2DisableFlags,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5176,6 +5210,8 @@ func extractChannelPolicies(row any) (*sqlc.GraphChannelPolicy,
|
||||
MessageFlags: r.Policy1MessageFlags,
|
||||
ChannelFlags: r.Policy1ChannelFlags,
|
||||
Signature: r.Policy1Signature,
|
||||
BlockHeight: r.Policy1BlockHeight,
|
||||
DisableFlags: r.Policy1DisableFlags,
|
||||
}
|
||||
}
|
||||
if r.Policy2ID.Valid {
|
||||
@@ -5196,6 +5232,8 @@ func extractChannelPolicies(row any) (*sqlc.GraphChannelPolicy,
|
||||
MessageFlags: r.Policy2MessageFlags,
|
||||
ChannelFlags: r.Policy2ChannelFlags,
|
||||
Signature: r.Policy2Signature,
|
||||
BlockHeight: r.Policy2BlockHeight,
|
||||
DisableFlags: r.Policy2DisableFlags,
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user