bitcoind: descriptor walled disabled #92

Open
opened 2023-08-05 22:04:02 +01:00 by vincenzopalazzo · 2 comments
vincenzopalazzo commented 2023-08-05 22:04:02 +01:00 (Migrated from github.com)

While working with a testnet node I get that the descriptor wallet get disabled.

2023-08-05T21:01:49.042Z DEBUG bitcoincore_rpc JSON-RPC error for fundrawtransaction: RpcError { code: -4, message: "Transaction needs a change address, but we can't generate it. Error: No bech32 addresses available.", data: None }
2023-08-05T21:01:49.043Z ERROR lampod JSON-RPC error: RPC error response: RpcError { code: -4, message: "Transaction needs a change address, but we can't generate it. Error: No bech32 addresses available.", data: None }

We should find a reason of why this is disabled and re-enable it

While working with a testnet node I get that the descriptor wallet get disabled. ``` 2023-08-05T21:01:49.042Z DEBUG bitcoincore_rpc JSON-RPC error for fundrawtransaction: RpcError { code: -4, message: "Transaction needs a change address, but we can't generate it. Error: No bech32 addresses available.", data: None } 2023-08-05T21:01:49.043Z ERROR lampod JSON-RPC error: RPC error response: RpcError { code: -4, message: "Transaction needs a change address, but we can't generate it. Error: No bech32 addresses available.", data: None } ``` We should find a reason of why this is disabled and re-enable it
vincenzopalazzo commented 2023-08-15 20:03:47 +01:00 (Migrated from github.com)

This is the error that I am getting when I will go to create a channel

2023-08-15T19:02:39.126Z DEBUG bitcoincore_rpc JSON-RPC request: fundrawtransaction ["020000000001801a0600000000002200207360aa918f95ce7bbe295499b20c822528e30e6865c84aa604a43a76edc2b35800000000",{"fee_rate":4.0,"replaceable":false,"include_unsafe":true,"includeWatching":true,"add_inputs":true}]
2023-08-15T19:02:39.716Z DEBUG bitcoincore_rpc JSON-RPC error for fundrawtransaction: RpcError { code: -4, message: "Transaction needs a change address, but we can't generate it. Error: No bech32 addresses available.", data: None }
2023-08-15T19:02:39.716Z ERROR lampod JSON-RPC error: RPC error response: RpcError { code: -4, message: "Transaction needs a change address, but we can't generate it. Error: No bech32 addresses available.", data: None }
2023-08-15T19:02:39.716Z DEBUG ldk lightning_background_processor:779 TRACE Persisting ChannelManager...
2023-08-15T19:02:39.728Z DEBUG ldk lightning_background_processor:779 TRACE Done persisting ChannelManager.

This is the error that I am getting when I will go to create a channel ``` 2023-08-15T19:02:39.126Z DEBUG bitcoincore_rpc JSON-RPC request: fundrawtransaction ["020000000001801a0600000000002200207360aa918f95ce7bbe295499b20c822528e30e6865c84aa604a43a76edc2b35800000000",{"fee_rate":4.0,"replaceable":false,"include_unsafe":true,"includeWatching":true,"add_inputs":true}] 2023-08-15T19:02:39.716Z DEBUG bitcoincore_rpc JSON-RPC error for fundrawtransaction: RpcError { code: -4, message: "Transaction needs a change address, but we can't generate it. Error: No bech32 addresses available.", data: None } 2023-08-15T19:02:39.716Z ERROR lampod JSON-RPC error: RPC error response: RpcError { code: -4, message: "Transaction needs a change address, but we can't generate it. Error: No bech32 addresses available.", data: None } 2023-08-15T19:02:39.716Z DEBUG ldk lightning_background_processor:779 TRACE Persisting ChannelManager... 2023-08-15T19:02:39.728Z DEBUG ldk lightning_background_processor:779 TRACE Done persisting ChannelManager. ```

From my discussion inside the IRC

<vincenzopalazzo> I had a stupind question, there is any way to enable a description imported with `importdescriptors`?
<achow101> vincenzopalazzo: what do you mean by enable?
<furszy> active descriptor?
<furszy> murch: :).
<vincenzopalazzo> achow101, good question, I am debugging the `Transaction needs a change address, but we can't generate it. Error: No bech32 addresses available` and I found that the descriptor is disabled
<achow101> vincenzopalazzo: we call those "active". reimport it with "active": true
<vincenzopalazzo> Oh right sorry! I was just now grabbing the documentation
<furszy> an also "internal": true
<vincenzopalazzo> achow101, I am importing it as active: true
<furszy> *and
<vincenzopalazzo> furszy, yeah my code works as expected, but in one of my instances there is this problem where the descriptor is `inactive`
<achow101> vincenzopalazzo: you also imported with "internal": true?
<achow101> you can check all of that with listdescriptors
<vincenzopalazzo> achow101, yeah my code works as expected and I am able to build the transaction in the correct way
<vincenzopalazzo> BTW I will take a look at the core code to see what it is going on, I wanted just confirm that I was not missing information at the API level
<achow101> unsure what the problem would be then, could be a bug, could also be a corrupted wallet somehow
<vincenzopalazzo> I see, it is not too bad if I import always the same descriptor with the same configuration, or this can lead in a corrupted wallet?
<achow101> it shouldn't corrupt
<vincenzopalazzo> achow101, ok I will report what I will be able to find next week, thanks
From my discussion inside the IRC ``` <vincenzopalazzo> I had a stupind question, there is any way to enable a description imported with `importdescriptors`? <achow101> vincenzopalazzo: what do you mean by enable? <furszy> active descriptor? <furszy> murch: :). <vincenzopalazzo> achow101, good question, I am debugging the `Transaction needs a change address, but we can't generate it. Error: No bech32 addresses available` and I found that the descriptor is disabled <achow101> vincenzopalazzo: we call those "active". reimport it with "active": true <vincenzopalazzo> Oh right sorry! I was just now grabbing the documentation <furszy> an also "internal": true <vincenzopalazzo> achow101, I am importing it as active: true <furszy> *and <vincenzopalazzo> furszy, yeah my code works as expected, but in one of my instances there is this problem where the descriptor is `inactive` <achow101> vincenzopalazzo: you also imported with "internal": true? <achow101> you can check all of that with listdescriptors <vincenzopalazzo> achow101, yeah my code works as expected and I am able to build the transaction in the correct way <vincenzopalazzo> BTW I will take a look at the core code to see what it is going on, I wanted just confirm that I was not missing information at the API level <achow101> unsure what the problem would be then, could be a bug, could also be a corrupted wallet somehow <vincenzopalazzo> I see, it is not too bad if I import always the same descriptor with the same configuration, or this can lead in a corrupted wallet? <achow101> it shouldn't corrupt <vincenzopalazzo> achow101, ok I will report what I will be able to find next week, thanks ```
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: dev-crew/lampo.rs#92
No description provided.