Commit Graph

18077 Commits

Author SHA1 Message Date
Steven Barclay
6ae9831818
Parallelise signature checking in VoteResultView.doFillCycleList()
Run through the 'DecryptedBallotsWithMerits' list of each cycle in
parallel, when filling the cycle list of the Vote Result view, to speed
up the signature verification of all the 'Merit' objects found in the
DAO state. Checking all the signatures is necessary to correctly compute
the total merit stake and hence the vote weight of each ballot list, and
profiling shows that it is by far the biggest bottleneck during the
initial view load (with all subsequent activations of the view skipping
'doFillCycleList()', when outside of the Vote Result DAO phase).

(Since each signature is checked only once from 'doFillCycleList()' and
skipping the checks could potentially affect the computed vote weights,
we cannot obviously do any better than parallelise the checks, to speed
up this method.)

(Even though it may be a little more efficient to parallelise the outer
loop of the method, over the cycles instead of the decrypted votes of
each cycle, each individual signature check is expensive enough that it
probably wouldn't give much improvement over this one-line change.)
2024-05-05 00:20:09 +02:00
Alejandro García
c6a8d82e64
Merge pull request #7085 from bisq-network/dependabot/github_actions/gradle/gradle-build-action-3.3.2
build(deps): bump gradle/gradle-build-action from 3.2.0 to 3.3.2
2024-04-30 03:14:40 +00:00
Alejandro García
e4fa5d1022
Merge pull request #7084 from bisq-network/dependabot/github_actions/actions/checkout-4.1.4
build(deps): bump actions/checkout from 4.1.2 to 4.1.4
2024-04-30 03:14:02 +00:00
Alejandro García
add2f983f2
Merge pull request #7050 from devinbileck/scan-qr-code
Restore QR code scanner feature for mobile notification pairing
2024-04-30 03:13:31 +00:00
dependabot[bot]
ff5816e180
build(deps): bump gradle/gradle-build-action from 3.2.0 to 3.3.2
Bumps [gradle/gradle-build-action](https://github.com/gradle/gradle-build-action) from 3.2.0 to 3.3.2.
- [Release notes](https://github.com/gradle/gradle-build-action/releases)
- [Commits](https://github.com/gradle/gradle-build-action/compare/v3.2.0...v3.3.2)

---
updated-dependencies:
- dependency-name: gradle/gradle-build-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-29 14:15:06 +00:00
dependabot[bot]
efe3be6b56
build(deps): bump actions/checkout from 4.1.2 to 4.1.4
Bumps [actions/checkout](https://github.com/actions/checkout) from 4.1.2 to 4.1.4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4.1.2...v4.1.4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-29 14:15:02 +00:00
Alejandro García
4fc0ab5d19
Merge pull request #7071 from bisq-network/dependabot/github_actions/gradle/gradle-build-action-3.2.0
build(deps): bump gradle/gradle-build-action from 3.1.0 to 3.2.0
2024-04-09 20:02:22 +00:00
Alejandro García
b223388ab2
Merge pull request #7070 from HenrikJannsen/increase_maxItems_for_tradestatistics
Increase maxItems at requesting  trade statistic items
2024-04-09 20:01:40 +00:00
Alejandro García
54b75cee7b
Merge pull request #7069 from HenrikJannsen/improve-handling-of-MAX_REPEATED_REQUESTS
Increase MAX_REPEATED_REQUESTS
2024-04-09 20:01:14 +00:00
dependabot[bot]
ec3a0717e1
build(deps): bump gradle/gradle-build-action from 3.1.0 to 3.2.0
Bumps [gradle/gradle-build-action](https://github.com/gradle/gradle-build-action) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/gradle/gradle-build-action/releases)
- [Commits](https://github.com/gradle/gradle-build-action/compare/v3.1.0...v3.2.0)

---
updated-dependencies:
- dependency-name: gradle/gradle-build-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-08 14:17:57 +00:00
Devin Bileck
5f3f692b2f
Fix SIGSEGV encountered on macOS
When attempting to close the frame grabber from a separate thread,
the application would crash due to a SIGSEGV.
2024-04-01 21:52:40 -07:00
Devin Bileck
e6e9608473
Fix image loading from resources on Windows
This should hopefully resolve images failing to load from resources
on Windows due to problems with imread encountering "can't open/read
file: check file path/integrity".
2024-04-01 21:52:40 -07:00
Devin Bileck
0f373cee43
Restore QR code scanner feature for mobile notification pairing
This restores the functionality that was removed in b5beea58. However,
this implementation utilizes the JavaCV library rather than the
webcam-capture library as discussed in #4940. As a result, this should
now provide macOS support.
2024-04-01 21:52:40 -07:00
HenrikJannsen
31ce213a98
Increase MAX_REPEATED_REQUESTS from 20 to 30 and in case we are a seed node to 100.
In case the other seed node has not updated the historical data is not taken into account, thus we would get more repeated requests until all data is received. To avoid that we get stuck we increase the limit.

Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2024-04-01 14:50:59 +07:00
HenrikJannsen
bf6128306f
Increase maxItems from 3000 to 15000.
3000 items are about 180.325 kB.

For nodes not being online for longer the repeated requests consumes quite some time.
With 15k we can expect a 1 MB payload which is still acceptable.

Signed-off-by: HenrikJannsen <boilingfrog@gmx.com>
2024-04-01 11:50:08 +07:00
Alejandro García
92283de42a
Merge pull request #7060 from bisq-network/dependabot/github_actions/actions/setup-java-4.2.1
build(deps): bump actions/setup-java from 4.0.0 to 4.2.1
2024-03-27 09:13:46 +00:00
Alejandro García
fcb625cbb4
Merge pull request #7059 from bisq-network/dependabot/github_actions/actions/checkout-4.1.2
build(deps): bump actions/checkout from 4.1.1 to 4.1.2
2024-03-27 09:13:19 +00:00
Alejandro García
0e50d241ee
Merge pull request #7057 from jmacxx/rename_role_community_admin
Rename Keybase admin to Community admin
2024-03-27 09:12:52 +00:00
Alejandro García
7eb4c5231c
Merge pull request #7054 from HenrikJannsen/add-sha-hash-for-protoc-for-aarch_64
Add sha hash for protoc-3.19.1-osx-aarch_64.exe
2024-03-27 09:12:26 +00:00
Alejandro García
dc9f039593
Merge pull request #7040 from alvasw/persistence_rolling_backups
persistence: Implement Rolling Backups
2024-03-27 09:10:32 +00:00
Alejandro García
85e7f495b5
Merge pull request #7036 from jmacxx/api_confirm_payment_xmr
Add API for payment started with XMR auto conf params
2024-03-27 09:10:00 +00:00
Alejandro García
ee987bef1c
Merge pull request #7005 from jmacxx/sepa_qr_code
Add SEPA QR Code for buyer payment
2024-03-27 09:09:23 +00:00
dependabot[bot]
8a96dcfba4
build(deps): bump actions/setup-java from 4.0.0 to 4.2.1
Bumps [actions/setup-java](https://github.com/actions/setup-java) from 4.0.0 to 4.2.1.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](https://github.com/actions/setup-java/compare/v4.0.0...v4.2.1)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-18 14:30:07 +00:00
dependabot[bot]
170cd53690
build(deps): bump actions/checkout from 4.1.1 to 4.1.2
Bumps [actions/checkout](https://github.com/actions/checkout) from 4.1.1 to 4.1.2.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4.1.1...v4.1.2)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-03-18 14:30:04 +00:00
jmacxx
5c8204ab83
Rename Keybase admin to Community admin fixes #7048. 2024-03-16 09:53:18 -05:00
HenrikJannsen
4e13cd3934
Add sha hash for protoc-3.19.1-osx-aarch_64.exe 2024-03-08 18:29:34 +07:00
jmacxx
e75fc1ce79
Add SEPA QR Code for buyer payment. 2024-02-27 14:23:43 -06:00
jmacxx
9738d5387e
Add API for payment started with XMR auto conf params. 2024-02-26 08:39:39 -06:00
Alva Swanson
9d4d39650f
persistence: Implement RollingBackups 2024-02-26 08:39:21 +01:00
Alejandro García
f941ef300f
Merge pull request #7047 from stejbac/fix-remaining-accounting-store-data-race
Fix remaining data race in BurningManAccountingStore
2024-02-25 14:34:35 +00:00
Alejandro García
42d40e56a1
Merge pull request #7041 from jmacxx/remove_wiz_bsq_explorer
Remove reference to non-functioning BSQ explorer
2024-02-25 14:33:51 +00:00
Alejandro García
a3f5bf5901
Merge pull request #7039 from alvasw/async_persistence_truncate_before_write
AsyncFileWriter: Truncate before write
2024-02-25 14:33:21 +00:00
Alejandro García
e53fb3521f
Merge pull request #7023 from jmacxx/fix_issue_7022
GetTrades should not filter open failed trades
2024-02-25 14:31:39 +00:00
Alejandro García
c86d965b33
Merge pull request #7012 from jmacxx/api_get_dao_status
Add API call to get DAO status
2024-02-25 14:31:06 +00:00
Alejandro García
29c4999f36
Merge pull request #7008 from jmacxx/fix_issue_7006
Refactor detectMultipleHolderNames for efficient use of RAM.
2024-02-25 14:30:31 +00:00
Alejandro García
51f5414831
Merge pull request #7043 from stejbac/fix-and-optimise-price-and-dao-chart-views
Account for invalid tx BSQ burns in supply & market cap charts and optimise the latter
2024-02-24 15:17:55 +00:00
Alejandro García
267d57d4ac
Merge pull request #7042 from bisq-network/dependabot/github_actions/gradle/gradle-build-action-3.1.0
build(deps): bump gradle/gradle-build-action from 3.0.0 to 3.1.0
2024-02-24 15:16:12 +00:00
Alejandro García
ebc987b8a4
Merge pull request #7045 from wiz/wiz/20240222-remove-wiz-bitcoin-nodes
Remove 2 more of wiz Bitcoin nodes
2024-02-24 15:15:37 +00:00
Alejandro García
7de6edfc44
Merge pull request #7046 from Emzy/remove-add-seeds
Remove seednodes from jmacxx and add 403State
2024-02-24 15:15:08 +00:00
Steven Barclay
0214566619
Simplify & optimise BurningManAccountingStore.purgeLastTenBlocks
Remove the last 10 blocks one-by-one from the end of the internal linked
list of blocks, instead of rebuilding a truncated list from scratch.
(This all takes place within a write-lock anyway, so it's atomic.)
2024-02-24 11:26:16 +08:00
Steven Barclay
02ee5bc6ea
Fix remaining data race in BurningManAccountingStore
Add missing synchronisation to the 'toProtoMessage' method, by first
copying the internal list of blocks inside a read-lock, prior to
serialisation (still outside the lock, to maximise concurrency). Since
we only make a shallow copy, this should be fast and take no more than a
MB or so of extra memory.

This prevents a race seen to cause a ConcurrentModificationException
during store persistence, that sometimes occurred when the application
resumed from a long suspension.
2024-02-24 11:12:33 +08:00
Stephan Oeste
79571aa99f
Remove seednodes from jmacxx and add 403State 2024-02-23 17:59:27 +01:00
wiz
8d1aea62fe
Remove 2 more of wiz Bitcoin nodes 2024-02-22 15:09:14 +09:00
Steven Barclay
e584c77f9e
Replace Predicate<Long> with LongPredicate in *ChartDataModel
Use the slightly more efficient primitive type specialisation for the
date filters in 'ChartDataModel' and its subclasses.
2024-02-20 18:32:19 +08:00
Steven Barclay
d97636eaad
Don't ignore BSQ burned by invalid txs in chart data models
Use 'Tx::getBurntBsq' instead of 'Tx::getBurntFee', so as not to exclude
BSQ burned by invalid txs from the supply calculations. There are no
invalid BSQ txs at present on mainchain, but accidentally burned BSQ
should definitely count as a reduction in supply, so this fixes a bug.
2024-02-20 16:21:07 +08:00
Steven Barclay
712c97826b
Clean up & optimise (Dao|Price)ChartDataModel
1. Tidy up the stream pipelines which sum over time intervals, by
   summing directly with a grouping collector, instead of wastefully
   collecting to an intermediate map of lists;

2. Move duplicate 'memoize' static method to the base class;

3. Factor out 'getDateFilteredMap' static method, to replace the
   repeated pattern of filtering date keys by a provided predicate and
   collecting into a new map;

4. Use 'Map::replaceAll' instead of the pattern:

      map.entrySet().forEach(e -> e.setValue(updateFn(e.getValue())));

5. Fix a quadratic time bug in 'getBsqMarketCapByInterval' by passing an
   ordered map to 'issuanceAsOfDate', so that it doesn't have to
   repeatedly sort or linearly scan the entire keyset of time intervals,
   to find the latest one before the provided date.
2024-02-20 15:48:39 +08:00
dependabot[bot]
8cab1d0c51
build(deps): bump gradle/gradle-build-action from 3.0.0 to 3.1.0
Bumps [gradle/gradle-build-action](https://github.com/gradle/gradle-build-action) from 3.0.0 to 3.1.0.
- [Release notes](https://github.com/gradle/gradle-build-action/releases)
- [Commits](https://github.com/gradle/gradle-build-action/compare/v3.0.0...v3.1.0)

---
updated-dependencies:
- dependency-name: gradle/gradle-build-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-19 14:02:34 +00:00
jmacxx
b151d11e00
Remove non-available BSQ explorer. 2024-02-17 16:50:38 -06:00
Alva Swanson
d38bb701e7
Implement DirectoryHasNChildren Hamcrest Matcher 2024-02-16 14:48:32 +01:00
Alva Swanson
fd6b446544
Implement AtomicFileWriterIntegrationTests
- singleWrite
- twoWritesSecondSmaller
- twoWriteSecondLarger
2024-02-15 14:41:53 +01:00