graph/db: thread context through to LookupAlias
This commit is contained in:
5 files changed
+18
-13
No files matched your search
@@ -348,7 +348,7 @@ func TestAliasLookup(t *testing.T) {
|
|||||||
// the one which the test node was assigned.
|
// the one which the test node was assigned.
|
||||||
nodePub, err := testNode.PubKey()
|
nodePub, err := testNode.PubKey()
|
||||||
require.NoError(t, err, "unable to generate pubkey")
|
require.NoError(t, err, "unable to generate pubkey")
|
||||||
dbAlias, err := graph.LookupAlias(nodePub)
|
dbAlias, err := graph.LookupAlias(ctx, nodePub)
|
||||||
require.NoError(t, err, "unable to find alias")
|
require.NoError(t, err, "unable to find alias")
|
||||||
require.Equal(t, testNode.Alias, dbAlias)
|
require.Equal(t, testNode.Alias, dbAlias)
|
||||||
|
|
||||||
@@ -356,7 +356,7 @@ func TestAliasLookup(t *testing.T) {
|
|||||||
node := createTestVertex(t)
|
node := createTestVertex(t)
|
||||||
nodePub, err = node.PubKey()
|
nodePub, err = node.PubKey()
|
||||||
require.NoError(t, err, "unable to generate pubkey")
|
require.NoError(t, err, "unable to generate pubkey")
|
||||||
_, err = graph.LookupAlias(nodePub)
|
_, err = graph.LookupAlias(ctx, nodePub)
|
||||||
require.ErrorIs(t, err, ErrNodeAliasNotFound)
|
require.ErrorIs(t, err, ErrNodeAliasNotFound)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -111,7 +111,7 @@ type V1Store interface { //nolint:interfacebloat
|
|||||||
|
|
||||||
// LookupAlias attempts to return the alias as advertised by the target
|
// LookupAlias attempts to return the alias as advertised by the target
|
||||||
// node.
|
// node.
|
||||||
LookupAlias(pub *btcec.PublicKey) (string, error)
|
LookupAlias(ctx context.Context, pub *btcec.PublicKey) (string, error)
|
||||||
|
|
||||||
// DeleteLightningNode starts a new database transaction to remove a
|
// DeleteLightningNode starts a new database transaction to remove a
|
||||||
// vertex/node from the database according to the node's public key.
|
// vertex/node from the database according to the node's public key.
|
||||||
|
|||||||
@@ -997,7 +997,9 @@ func addLightningNode(tx kvdb.RwTx, node *models.LightningNode) error {
|
|||||||
|
|
||||||
// LookupAlias attempts to return the alias as advertised by the target node.
|
// LookupAlias attempts to return the alias as advertised by the target node.
|
||||||
// TODO(roasbeef): currently assumes that aliases are unique...
|
// TODO(roasbeef): currently assumes that aliases are unique...
|
||||||
func (c *KVStore) LookupAlias(pub *btcec.PublicKey) (string, error) {
|
func (c *KVStore) LookupAlias(_ context.Context,
|
||||||
|
pub *btcec.PublicKey) (string, error) {
|
||||||
|
|
||||||
var alias string
|
var alias string
|
||||||
|
|
||||||
err := kvdb.View(c.db, func(tx kvdb.RTx) error {
|
err := kvdb.View(c.db, func(tx kvdb.RTx) error {
|
||||||
|
|||||||
@@ -355,11 +355,10 @@ func (s *SQLStore) FetchNodeFeatures(nodePub route.Vertex) (
|
|||||||
// LookupAlias attempts to return the alias as advertised by the target node.
|
// LookupAlias attempts to return the alias as advertised by the target node.
|
||||||
//
|
//
|
||||||
// NOTE: part of the V1Store interface.
|
// NOTE: part of the V1Store interface.
|
||||||
func (s *SQLStore) LookupAlias(pub *btcec.PublicKey) (string, error) {
|
func (s *SQLStore) LookupAlias(ctx context.Context,
|
||||||
var (
|
pub *btcec.PublicKey) (string, error) {
|
||||||
ctx = context.TODO()
|
|
||||||
alias string
|
var alias string
|
||||||
)
|
|
||||||
err := s.db.ExecTx(ctx, sqldb.ReadTxOpt(), func(db SQLQueries) error {
|
err := s.db.ExecTx(ctx, sqldb.ReadTxOpt(), func(db SQLQueries) error {
|
||||||
dbNode, err := db.GetNodeByPubKey(
|
dbNode, err := db.GetNodeByPubKey(
|
||||||
ctx, sqlc.GetNodeByPubKeyParams{
|
ctx, sqlc.GetNodeByPubKeyParams{
|
||||||
|
|||||||
+8
-4
@@ -4645,7 +4645,7 @@ func (r *rpcServer) ListChannels(ctx context.Context,
|
|||||||
// our list depending on the type of channels requested to us.
|
// our list depending on the type of channels requested to us.
|
||||||
isActive := peerOnline && linkActive
|
isActive := peerOnline && linkActive
|
||||||
channel, err := createRPCOpenChannel(
|
channel, err := createRPCOpenChannel(
|
||||||
r, dbChannel, isActive, in.PeerAliasLookup,
|
ctx, r, dbChannel, isActive, in.PeerAliasLookup,
|
||||||
)
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
@@ -4761,7 +4761,10 @@ func encodeCustomChanData(lnChan *channeldb.OpenChannel) ([]byte, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// createRPCOpenChannel creates an *lnrpc.Channel from the *channeldb.Channel.
|
// createRPCOpenChannel creates an *lnrpc.Channel from the *channeldb.Channel.
|
||||||
func createRPCOpenChannel(r *rpcServer, dbChannel *channeldb.OpenChannel,
|
//
|
||||||
|
//nolint:funlen
|
||||||
|
func createRPCOpenChannel(ctx context.Context, r *rpcServer,
|
||||||
|
dbChannel *channeldb.OpenChannel,
|
||||||
isActive, peerAliasLookup bool) (*lnrpc.Channel, error) {
|
isActive, peerAliasLookup bool) (*lnrpc.Channel, error) {
|
||||||
|
|
||||||
nodePub := dbChannel.IdentityPub
|
nodePub := dbChannel.IdentityPub
|
||||||
@@ -4863,7 +4866,7 @@ func createRPCOpenChannel(r *rpcServer, dbChannel *channeldb.OpenChannel,
|
|||||||
|
|
||||||
// Look up our channel peer's node alias if the caller requests it.
|
// Look up our channel peer's node alias if the caller requests it.
|
||||||
if peerAliasLookup {
|
if peerAliasLookup {
|
||||||
peerAlias, err := r.server.graphDB.LookupAlias(nodePub)
|
peerAlias, err := r.server.graphDB.LookupAlias(ctx, nodePub)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
peerAlias = fmt.Sprintf("unable to lookup "+
|
peerAlias = fmt.Sprintf("unable to lookup "+
|
||||||
"peer alias: %v", err)
|
"peer alias: %v", err)
|
||||||
@@ -5307,7 +5310,8 @@ func (r *rpcServer) SubscribeChannelEvents(req *lnrpc.ChannelEventSubscription,
|
|||||||
}
|
}
|
||||||
case channelnotifier.OpenChannelEvent:
|
case channelnotifier.OpenChannelEvent:
|
||||||
channel, err := createRPCOpenChannel(
|
channel, err := createRPCOpenChannel(
|
||||||
r, event.Channel, true, false,
|
updateStream.Context(), r,
|
||||||
|
event.Channel, true, false,
|
||||||
)
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
|||||||
Reference in new issue
Block a user