CalDescent
0111747016
Added debug logging of new file list stats.
2022-02-25 13:30:07 +00:00
CalDescent
eac4b0d87b
Maintain backwards support for pre-3.2.0 peers by only including new file list message params when sending to newer peers.
...
These params are optional and the process will function without them, just less efficiently.
2022-02-25 12:24:02 +00:00
CalDescent
3dadce4da4
Renamed a reference
2022-02-25 12:24:02 +00:00
CalDescent
1864468818
Prefer the route with the least number of hops when relaying.
2022-02-25 12:24:02 +00:00
CalDescent
1a59379162
Optionally include requestTime, requestHops, peerAddress, and isRelayPossible flag in ArbitraryDataFileListMessage
2022-02-25 12:24:02 +00:00
CalDescent
3cc394f02d
Merge pull request #70 from catbref/synchronizer-newchaintipevent
...
Modify TradeBot to trigger when chain tip changes instead of with every new block
2022-02-24 20:04:26 +00:00
CalDescent
53c4fe9e80
Fixed another ElectrumX issue found in unit tests.
...
Peers that were thought to be missing output address data may actually have just been using a different key - "address" instead of "addresses". Now reading the addresses from both keys, which may remove the need for the previously added checks.
2022-02-24 20:01:56 +00:00
CalDescent
d5521068b0
Fixed issue in earlier commit, found in unit tests.
2022-02-24 19:45:37 +00:00
CalDescent
a63ef4010d
Disabled expired transaction data deletion code for now, as this was often causing data to be incorrectly deleted.
...
This will need to be re-enabled at some point, but only after it's modified to be much less aggressive.
2022-02-24 19:05:29 +00:00
catbref
8950bb7af9
Very slightly relax validity checks for TRANSFER_PRIVS to allow for skeletal account records, e.g. due to CHAT transactions, but account last reference still needs to be null. Example at block height 736196 / 7
2022-02-24 09:13:51 +00:00
catbref
9e6fe7ceb9
Modify TradeBot, some related websockets, to trigger when chain tip changes instead of with every new block
2022-02-24 09:06:21 +00:00
CalDescent
c333d18cd0
Merge branch 'segwit'
2022-02-23 20:07:07 +00:00
CalDescent
0271ef69c9
When submitting a new transaction, treat the chain as "synced" if the latest block is less than 30 minutes old. Increased from around 7.5 minutes.
2022-02-23 20:06:55 +00:00
CalDescent
2d493a4ea2
Added logging when no addresses are returned for a bitcoiny transaction output.
2022-02-23 09:29:16 +00:00
CalDescent
e339ab856f
Skip over Electrum servers that don't return any output addresses. Hopeful fix for BTC transactions that report a zero value due to incomplete data being returned from certain ElectrumX peers.
2022-02-23 08:34:38 +00:00
proto
782904a971
improvement to the search on hosted resources
...
1) use the cached version instead of rescanning all the files
2) separating the loading (which include files scanning) and listing logic
2022-02-22 17:54:08 +01:00
proto
a3753c01bc
Add search functionality to hosted resources
2022-02-22 15:50:46 +01:00
CalDescent
d5c3921846
Only show the red "synchronizing" systray icon if the latest block isn't recent.
...
This should fix issue where the icon unnecessarily jumps between synced and synchronizing.
2022-02-21 22:34:13 +00:00
CalDescent
a2c462b3da
Add <meta charset="UTF-8"> tag to websites. Fixed issue rendering emojis and other special characters.
2022-02-21 22:28:59 +00:00
CalDescent
8673c7ef6e
Fixed bug in GET /peers/summary API
2022-02-21 22:28:18 +00:00
CalDescent
8d7be7757f
Fixed incorrectly named tag.
2022-02-21 22:27:44 +00:00
proto
6b83927048
Persist MintingAccounts.json on minting accounts add/remove
...
this fix the behavior of the node, After adding or removing a minting account, allowing it to persist it to the backup folder
2022-02-21 16:17:17 +01:00
proto
e07adbd60e
online accounts api call, fix level zero accounts
...
Added online zero level accounts to the response of /addresses/online/levels api endpoints
2022-02-21 15:40:10 +01:00
CalDescent
7798b8dcdc
Keep items in arbitraryDataFileHashResponses if they are currently being requested by another thread. This should help to locate the higher numbered chunks from larger resources.
2022-02-20 11:33:09 +00:00
CalDescent
146e7970bf
Synchronize this.allKnownPeers and this.connectedPeers in Network.requestDataFromPeer(), to make the method thread-safe.
...
This could be further improved by taking an immutable copy, but I'll leave this until the same approach is applied to other Network methods.
2022-02-20 11:04:33 +00:00
CalDescent
f4f7cc58e3
Removed unused import.
2022-02-20 10:44:59 +00:00
CalDescent
21b4b494e7
Renamed method.
2022-02-20 10:44:38 +00:00
CalDescent
7307844bee
If UPnP is disabled in settings, close the existing external listenPort if a UPnP rule exists.
2022-02-20 10:44:20 +00:00
CalDescent
5d419dd4ec
Handle case where funds are sent to and from the same bitcoiny deterministic wallet.
2022-02-19 17:45:24 +00:00
CalDescent
6d0db7cc5e
Catch UncheckedIOException in findAllHostedPaths() which was seen when a file was deleted by another thread.
2022-02-19 17:18:51 +00:00
CalDescent
8de606588c
Attempt to open the listen port (default 12392) using UPnP, if the local network supports it.
2022-02-18 20:11:00 +00:00
CalDescent
35b0a85818
Increased WALLET_KEY_LOOKAHEAD_INCREMENT_BITCOINJ to 50
2022-02-18 18:42:06 +00:00
CalDescent
fcdd85af6c
Try a lookahead size of 20 (instead of 3) when asking Bitcoinj for the balance.
2022-02-18 18:39:47 +00:00
CalDescent
5aac2dc9df
ONLINE_ACCOUNTS_V2_PEER_VERSION set to 3.2.0
2022-02-18 18:34:00 +00:00
CalDescent
becb0b37e6
Merge branch 'master' into network-online-accounts-v2
2022-02-18 17:12:44 +00:00
CalDescent
67ca876567
Log if we're unable to process the received file.
2022-02-18 15:35:37 +00:00
CalDescent
464ce66fd5
Moved deletion retry code into ArbitraryDataFile
2022-02-18 15:09:50 +00:00
CalDescent
3e505481fe
Default minPeerVersion also increased to 3.1.0
2022-02-18 14:50:46 +00:00
CalDescent
c90c3a183e
Block peers below 3.1.0
2022-02-18 14:50:29 +00:00
CalDescent
85b3278c8a
Don't throttle the arbitrary data file request threads when there are items to process.
2022-02-15 19:39:26 +00:00
CalDescent
c90c287601
Increased ARBITRARY_REQUEST_TIMEOUT from 10 to 12 seconds, as some were coming back around 9-10 seconds later.
2022-02-15 19:38:30 +00:00
CalDescent
6ee395ed12
Stop bulk arbitrary signature broadcasts, as they were creating a lot of network traffic, and are in the process of being replaced with a better method.
2022-02-15 19:10:20 +00:00
CalDescent
6275ac2b81
Increased numberOfAdditionalBatchesToSearch from 5 to 7.
...
This is the equivalent of increasing the max address gap from 15 to 21. The electrum standalone wallet uses 20, so this should be the most we will ever need.
2022-02-14 22:58:37 +00:00
CalDescent
fd0a6ec71f
Fix for invalid balance (and transaction amount) when there are no outputs relating to this wallet.
2022-02-14 22:53:30 +00:00
CalDescent
43791f00aa
Wait 2 minutes on node startup before trying to fetch followed QDN data.
2022-02-14 19:33:58 +00:00
CalDescent
538ac30b4e
Request only the missing hashes, not all of them.
2022-02-14 19:33:36 +00:00
CalDescent
acddf36467
Handle missing includeMetadata parameter.
2022-02-13 19:27:12 +00:00
CalDescent
166d32032a
Fixed message IDs.
2022-02-13 19:22:20 +00:00
CalDescent
e4238a62c9
Exclude metadata-only transactions in the data management page (but added an API parameter to allow them to optionally be included).
...
This ensures that the list will only show resources where there is at least 1 chunk.
2022-02-13 19:21:16 +00:00
CalDescent
ad9c466712
Fall back to UNCATEGORIZED if the parsed category doesn't match any available categories.
...
This allows for deletion of categories, as the resources will just move into UNCATEGORIZED until they are next updated.
2022-02-13 18:10:56 +00:00
CalDescent
a3d31bbaf1
Category updates based on feedback so far.
2022-02-13 17:56:47 +00:00
CalDescent
4821139501
Merge branch 'master' into qdn-metadata
...
# Conflicts:
# src/main/java/org/qortal/controller/arbitrary/ArbitraryDataFileListManager.java
2022-02-13 15:50:12 +00:00
CalDescent
83213800b9
Use the timestamp from the registerNameTransactionData in unit tests, rather than the current time.
2022-02-13 15:05:28 +00:00
CalDescent
265ae19591
Fixed other failing tests due to increased REGISTER_NAME transaction fee. At some point we should determine the correct fee inside of generateBase(), but setting it explicitly adds confidence in testing for now.
2022-02-13 14:31:21 +00:00
CalDescent
c1598d20b5
Name registration fee increase timestamp set to Sunday, 20 February 2022 16:00:00 UTC
2022-02-13 13:47:00 +00:00
CalDescent
0712259057
Implemented REGISTER_NAME transaction fee increase from 0.001 to 5 QORT (average value based on community vote).
2022-02-13 13:45:48 +00:00
CalDescent
ea42a5617f
Fixed ElectrumX log spam and errors
2022-02-13 10:58:45 +00:00
CalDescent
58a690e2c3
Route through new getAddressTransactions() wrapper.
2022-02-11 18:15:27 +00:00
CalDescent
3ae2f0086e
Removed unusably slow electrum peer
2022-02-11 18:13:45 +00:00
CalDescent
19c83cc54d
MAX_AVG_RESPONSE_TIME reduced to 500, as one peer regularly takes around 600ms to reply.
2022-02-11 18:12:34 +00:00
CalDescent
8ac298e07d
Allow 3 retries for getTransaction() and getAddressTransactions() requests
2022-02-11 18:11:00 +00:00
CalDescent
9b43e4ea3d
Time electrum requests, and move on to another server if one takes more than 1000ms on average to respond (measured over the last 5 requests).
2022-02-11 18:02:56 +00:00
CalDescent
dbacfb964b
Increased TX_CACHE_SIZE from 200 to 1000, to speed up loading times on large wallets.
2022-02-11 16:55:29 +00:00
CalDescent
a664a6a790
Added more LTC Electrum peers from https://1209k.com/bitcoin-eye/ele.php?chain=ltc
2022-02-11 16:44:34 +00:00
CalDescent
ee1f072056
Improvement to last commit, so that caller class names are preserved.
2022-02-11 15:34:31 +00:00
CalDescent
a6aabaa7f0
Reduce build queue log spam by only logging high priority items (5 and above).
2022-02-11 15:28:41 +00:00
CalDescent
49b307db60
Treat a null priority as 0
2022-02-11 15:17:02 +00:00
CalDescent
f7341cd9ab
Increased /arbitrary priority to 1
2022-02-11 15:13:53 +00:00
CalDescent
6932fb9935
Added "priority" property to build queue items.
...
/render APIs use priority 10, whereas /arbitrary use priority 0, to prevent thumbnail downloads from holding up website loading. The priorities can be adjusted later, with maybe some service types being given higher priority than others.
2022-02-11 15:08:12 +00:00
CalDescent
2343e739d1
Handle case where a file cannot be unzipped.
2022-02-11 14:35:46 +00:00
CalDescent
fc82f0b622
Use 5 builder threads, so that one slow resource (e.g. a thumbnail) doesn't hold up the other queued build items.
...
This can be replaced with a task-based approach longer term.
2022-02-11 13:58:45 +00:00
CalDescent
c0c50f2e18
Updated bootstrap hosts
2022-02-11 13:33:25 +00:00
CalDescent
9332d7207e
Fixed bug in cache clearing logic, which was often preventing resource updates from being detected.
2022-02-10 09:22:54 +00:00
CalDescent
a8c79b807b
Discard any uncommitted changes as a result of the higher weight chain detection
2022-02-10 08:16:30 +00:00
CalDescent
2637311ef5
Prevent potential ConcurrentModificationException in the build queue
2022-02-09 20:20:30 +00:00
CalDescent
06b5b8f793
Reduced time between processing build tasks, to prevent builds with invalid criteria from holding up legitimate builds too much.
2022-02-09 20:17:56 +00:00
CalDescent
61f58173cb
Revert "Removed transaction caching. Can be reintroduced later."
...
This reverts commit 9804eccbf0
.
2022-02-09 19:46:20 +00:00
CalDescent
b7b66f6cba
Revert "Removed getWalletTransactions() synchronization. Again, can be re-added later."
...
This reverts commit 70c864bc2f
.
2022-02-09 19:46:16 +00:00
CalDescent
dda2316884
Revert "Try a lookahead size of 20 (instead of 3) when asking Bitcoinj for the balance."
...
This reverts commit d7658ee9f9
.
2022-02-09 19:46:10 +00:00
CalDescent
b782679d1f
Revert "Revert "Calculate wallet balances from the transactions (ElectrumX) rather than using bitcoinj.""
...
This reverts commit 214f49e356
.
2022-02-09 19:46:06 +00:00
CalDescent
b0f19f8f70
Merge branch 'block-minter-updates'
...
# Conflicts:
# src/main/java/org/qortal/controller/arbitrary/ArbitraryDataFileRequestThread.java
2022-02-09 19:42:39 +00:00
CalDescent
de5f31ac58
Don't process file hashes if we're stopping
2022-02-09 19:40:20 +00:00
CalDescent
214f49e356
Revert "Calculate wallet balances from the transactions (ElectrumX) rather than using bitcoinj."
...
This reverts commit 892612c084
.
# Conflicts:
# src/main/java/org/qortal/crosschain/Bitcoiny.java
2022-02-08 18:29:32 +00:00
CalDescent
d7658ee9f9
Try a lookahead size of 20 (instead of 3) when asking Bitcoinj for the balance.
2022-02-08 18:27:44 +00:00
CalDescent
70c864bc2f
Removed getWalletTransactions() synchronization. Again, can be re-added later.
2022-02-08 18:27:08 +00:00
CalDescent
9804eccbf0
Removed transaction caching. Can be reintroduced later.
2022-02-08 18:26:15 +00:00
CalDescent
d1f24d45da
Added defensiveness in convertToSimpleTransaction()
2022-02-08 18:24:42 +00:00
CalDescent
9630625449
Rework of processIncomingTransactionsQueue() so that it no longer holds the lock while processing.
...
This should fix an issue where network threads could be blocked when new transactions arrived, due to waiting for the incomingTransactions lock to free up.
2022-02-08 09:18:14 +00:00
CalDescent
b72153f62b
Renamed main thread from "Controller" to "Qortal"
2022-02-08 09:02:20 +00:00
CalDescent
0a88a0c95e
Perform the base58 decoding outside of the arbitraryDataFileHashResponses lock, to reduce the amount of waiting around by other threads.
2022-02-08 08:45:58 +00:00
CalDescent
ab4ba9bb17
Don't re-fetch unconfirmed transactions that are already in the queue
2022-02-08 08:36:45 +00:00
CalDescent
a49218a840
Optimized ArbitraryDataFileRequestThread - only start a database transaction when there's something to process.
2022-02-07 22:06:45 +00:00
CalDescent
b6d633ab24
Break out of incoming transactions processing loop if we need to sync.
2022-02-07 22:05:13 +00:00
CalDescent
133943cd4e
Reduce log spam
2022-02-07 22:03:41 +00:00
CalDescent
f8ffb1a179
Updated thread names
2022-02-07 22:03:26 +00:00
CalDescent
41c4e0c83e
Merge branch 'master' into block-minter-updates
2022-02-06 18:40:32 +00:00
CalDescent
99f6bb5ac6
Reorganized some controller methods.
2022-02-06 18:32:43 +00:00
CalDescent
3e0306f646
Increased minPeerConnectionTime and maxPeerConnectionTime to reduce the chances of forced connections during relays.
...
An alternate option would be to avoid force disconnecting while relays are in progress, but some nodes could have active relays 100% of the time and therefore would never recycle their peers. So it is simpler to just increase the average peer connection time for everyone.
2022-02-06 17:29:00 +00:00
CalDescent
84e4f9a1c1
Rework of arbitraryRelayMap to keep track of multiple responses.
...
Previously, only one peer's response for a hash would be remembered, even if multiple others reported back too. This would cause useful mapping to be lost.
2022-02-06 17:20:01 +00:00
CalDescent
cd5ce6dd5e
Don't remove from the relay map after a file is requested, as it may be needed by other peers.
...
It will be cleaned up automatically after 60 seconds, so it is best to keep the data intact until then.
2022-02-06 16:04:54 +00:00