Commit graph

1777 commits

Author SHA1 Message Date
Boris Nagaev
3abd2d2235
make: add targets unit-race and unit-postgres-race 2025-03-19 15:00:31 +01:00
Boris Nagaev
dc4a5641ac
multi: initialize block height in New, not in Run
If Run sets the current height field, it is technically a race between Run and
other methods reading the field. Setting in New is a safer option.

Removed a check that height is not 0 from static address manager.
2025-03-19 15:00:31 +01:00
Boris Nagaev
3cbfadd27a
loop: fix race in loopOutSwap.payInvoiceAsync
The function used to call the method swapKit.swapInfo() which accessed many
fields of the swapKit which may change in parallel by handlePaymentResult called
by executeSwap (payInvoiceAsync is called in a goroutine). The fields are: cost,
state, and update time.
2025-03-19 15:00:31 +01:00
Boris Nagaev
ce77fcc12c
instantout/reservation: fix data race in test 2025-03-19 15:00:30 +01:00
Boris Nagaev
4c292f179f
staticaddr: fix race conditions in current height
Make the current height an atomic variable in staticaddr/address/manager.go and
in staticaddr/withdraw/manager.go.
Removed the initiation height from staticaddr/deposit/manager.go (not needed).
2025-03-19 15:00:30 +01:00
Boris Nagaev
e0e66a9b38
loopd: fix data races of logger 2025-03-19 15:00:30 +01:00
Boris Nagaev
2249c41d2f
loopdb: switch to go.etcd.io/bbolt
github.com/coreos/bbolt has race conditions:
https://github.com/golang/go/issues/54690
2025-03-19 15:00:30 +01:00
Alex Bosworth
d2c08bbb51
Merge pull request #900 from lightninglabs/alexbosworth-patch-9
version: bump version to v0.29.1-beta
2025-03-18 11:04:28 -07:00
Alex Bosworth
c5666ae3a6
version: bump version to v0.29.1-beta
increment version number
2025-03-18 08:11:05 -07:00
Boris Nagaev
5f5c6cb6ed
Merge pull request #899 from starius/min-conf-target-2
loopout: fix fee estimate failure if conf_target=1
2025-03-18 11:32:59 -03:00
Boris Nagaev
ddeb43d293
loopout: fix fee estimate failure if conf_target=1
The fee estimator fails if conf_target=1. Use conf_target=2 instead.

Fix https://github.com/lightninglabs/loop/issues/898
2025-03-18 10:58:23 -03:00
Boris Nagaev
a253b40062
Merge pull request #897 from starius/cleanup-without-cancel
loopin: use context.WithoutCancel in cleanup
2025-03-17 12:03:24 -03:00
Boris Nagaev
c2dddf0dfe
loopin: use context.WithoutCancel in cleanup
Ensure that MuSig2 cleanup does happen even if a context expires.
2025-03-16 18:21:32 -03:00
András Bánki-Horváth
db090960b2
Merge pull request #896 from bhandras/ci-go-runner-bump
github: update `setup-go` remove `cache`
2025-03-13 17:32:58 +01:00
Konstantin Nick
db4eb637a6
Merge pull request #895 from lightninglabs/dependabot/go_modules/looprpc/golang.org/x/net-0.36.0
build(deps): bump golang.org/x/net from 0.33.0 to 0.36.0
2025-03-13 17:29:06 +01:00
Andras Banki-Horvath
300ffa97d6
github: update setup-go remove cache
The setup-go@v5 has built in caching support.
2025-03-13 11:20:55 -05:00
dependabot[bot]
c8072e874a
build(deps): bump golang.org/x/net from 0.33.0 to 0.36.0
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.33.0 to 0.36.0.
- [Commits](https://github.com/golang/net/compare/v0.33.0...v0.36.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-13 11:51:53 -03:00
Oliver Gugger
3e46aff01c
Merge pull request #894 from lightninglabs/lnd-19
Update compile-time dependency of lnd to 0.19.0, update linter
2025-03-11 10:32:23 -06:00
Oliver Gugger
65251e8821
multi: update linter, fix issues 2025-03-10 22:59:50 +01:00
Oliver Gugger
722ad8839d
multi: update lnd compile-time dependency to v0.19.0 2025-03-10 22:59:49 +01:00
Boris Nagaev
800f0e0fba
Merge pull request #889 from starius/fix-unit-test-races
sweepbatcher: fix race conditions in unit tests
2025-03-04 14:10:34 -03:00
Boris Nagaev
60f49067cc
ci, Dockerfile: update Go to 1.24.0
Try to catch more race conditions in unit tests.
2025-03-04 13:45:08 -03:00
Boris Nagaev
a333031bf9
sweepbatcher: fix race conditions in UseLogger 2025-03-04 13:45:08 -03:00
Boris Nagaev
a2cee86783
sweepbatcher/test: fix races in require.Eventually
The code inside require.Eventually runs in parallel with the event loops
of the batcher and its batches. Accessing fields of the batcher and batches
must be done within an event loop.

To address this, testRunInEventLoop methods were added to the Batcher and batch
types. Unit tests were then rewritten to use this approach when accessing
batcher and batch fields.

Additionally, in many cases, receive operations from RegisterSpendChannel
were moved before require.Eventually. This prevents testRunInEventLoop from
getting stuck in an event loop while blocked on a RegisterSpendChannel send
operation.
2025-03-04 13:45:03 -03:00
Boris Nagaev
026890a1ea
sweepbatcher/test: protect mock data with mutex
Several structures were accessed without protection causing crashes under -race.
2025-03-04 12:57:27 -03:00
Boris Nagaev
ab59bdafd2
sweepbatcher: replace batch logger atomically
This is needed to fix crashes in unit tests under -race.
2025-03-04 12:56:54 -03:00
Boris Nagaev
a0f87241da
sweepbatcher: remove all completed batches
Previously, if a completed batch was visited after a batch to which the
sweep was added, it was not deleted because the function returned early.

This has been separated into two loops: the first one removes completed batches,
and the second one adds the sweep to a batch.
2025-03-04 11:17:39 -03:00
Boris Nagaev
a64f4610ab
sweepbatcher: fix usage of EventuallyWithT
It should use the c variable passed into the lambda, not the parent t.
It should use assert, not require package.
2025-03-04 10:25:30 -03:00
Boris Nagaev
f0f64f83c3
sweepbatcher: fix race in store_mock 2025-03-04 10:25:30 -03:00
Slyghtning
e86ccb9bfc
Merge pull request #893 from hieblmi/fix-withdraw-request-params
staticaddr: fix withdraw backwards compat
2025-03-04 11:54:58 +01:00
Slyghtning
c1c809d729
staticaddr: re-add feeRate to withdrawal request 2025-03-03 16:17:38 +01:00
Slyghtning
ca9acf3074
swapserverrpc: restore old withdrawal params 2025-03-03 16:15:14 +01:00
András Bánki-Horváth
10c15c0d88
Merge pull request #885 from lightninglabs/cache-update
github: update cache version from deprecated v1 to v4
2025-02-11 19:14:08 +01:00
Andras Banki-Horvath
f8d5f02f23
github: update cache version from deprecated v1 to v4 2025-02-11 16:21:28 +01:00
Slyghtning
e41e7f5195
Merge pull request #860 from hieblmi/withdraw-amounts
StaticAddr: Withdraw arbitrary amounts
2025-02-09 16:06:12 +01:00
Slyghtning
c7cc47bdc3
loopd: arbitrary withdrawal amount for static address deposits 2025-02-09 15:57:26 +01:00
Slyghtning
2622882d76
staticaddr: arbitrary withdrawal amount 2025-02-09 15:57:24 +01:00
Slyghtning
e8d1a43c01
swapserverrpc: static address amount and change amount for withdrawals 2025-02-09 15:40:17 +01:00
Slyghtning
e17e5522ac
looprpc: static address amount for withdrawals 2025-02-09 15:40:16 +01:00
András Bánki-Horváth
c8546d90b3
Merge pull request #884 from bhandras/notification-no-busy-wait
notifications: do not hog the CPU if there's no L402 token yet
2025-02-07 12:27:46 +01:00
Konstantin Nick
992884cc47
Merge pull request #881 from sputn1ck/autoloop_ignore_asset_chans
autoloop: ignore asset channels
2025-02-07 10:34:36 +01:00
sputn1ck
4dd3074a68
autoloop: ignore asset channels 2025-02-07 10:23:54 +01:00
Boris Nagaev
1f07c375d4
Merge pull request #882 from starius/always-mixed-batches
sweepbatcher: always enabled mixed batches
2025-02-06 20:36:46 -03:00
Andras Banki-Horvath
0591a941a7
notifications: do not hog the CPU if there's no L402 token yet 2025-02-06 20:03:55 +01:00
Boris Nagaev
2c38de121c
sweepbatcher: always enabled mixed batches
Mixed batches approach covers the case where all the inputs are cooperative
(function publishBatchCoop) and it is better than fully non-cooperative case
(function publishBatch), but it can also create such transaction if needed, i.e.
if all the sweeps are non-cooperative. So we can remove functions publishBatch,
publishBatchCoop, option WithMixedBatch and associated code in greedy batch
selection algorithm.
2025-02-05 15:16:57 -03:00
András Bánki-Horváth
a5e7a5057d
Merge pull request #880 from lightninglabs/dependabot/go_modules/looprpc/golang.org/x/net-0.33.0
build(deps): bump golang.org/x/net from 0.27.0 to 0.33.0 in /looprpc
2025-02-05 18:28:44 +01:00
dependabot[bot]
b54fc7181b
build(deps): bump golang.org/x/net from 0.27.0 to 0.33.0 in /looprpc
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.27.0 to 0.33.0.
- [Commits](https://github.com/golang/net/compare/v0.27.0...v0.33.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-31 14:43:35 +00:00
András Bánki-Horváth
7b8ce15fff
Merge pull request #875 from lightninglabs/dependabot/go_modules/golang.org/x/net-0.33.0
build(deps): bump golang.org/x/net from 0.27.0 to 0.33.0
2025-01-31 15:42:41 +01:00
András Bánki-Horváth
2b83f454bc
Merge pull request #879 from bhandras/notification-manager-backoff-fixup
notifications: implement incremental backoff for invalid L402 tokens
2025-01-29 21:40:36 +01:00
Andras Banki-Horvath
61e1528526
notifications: handle pending L402 payment 2025-01-29 20:48:30 +01:00