-
Notifications
You must be signed in to change notification settings - Fork 37.7k
added option -forceresendtx #421
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This will retransmit everything upon startup, and never afterwards? |
This retransmits immediately after starting up or receiving the rpc call. And then proceeds as normal resending every 0 to 30 minutes. |
One nit to pick: Can you add -forceresendtx to the -? help output? |
The pull has become unmergeable (without conflicts), and will be closed in 15 days from this message if action is not taken. To prevent closure, kindly rebase the pull to merge cleanly with the current codebase. If a time extension is needed, please respond to this comment or contact QA@BitcoinTesting.org. EDIT: Awaiting phantomcircuit's clean rebased pull |
I suggest using a JSON-RPC call instead. |
This patch includes a JSON-RPC call resendtxs which does the same thing as the cli option. I believe that I messed up this patch and included another patch I'll resubmit a clean rebased pull request... later. |
Any update/rebase on this? |
I have rebased this in my own 'forceresendtx' branch. |
Looking closer at this... I think it needs some reworking.
I think either the RPC call or the command-line argument is wrong; if -forceresendtx is specified, then SendMessages() will repeatedly call ResendWalletTransactions(true). If that CONSTANTLY resends, then it is a bug. |
Why not just make this the default? Is there any downside to announcing all pending transactions on startup? |
It makes it clear which txes belong to the local node, if they are getting announced all at once at startup. |
@@ -697,7 +697,7 @@ void CWallet::ResendWalletTransactions() | |||
CWalletTx& wtx = item.second; | |||
// Don't rebroadcast until it's had plenty of time that | |||
// it should have gotten in already by now. | |||
if (nTimeBestReceived - (int64)wtx.nTimeReceived > 5 * 60) | |||
if (nTimeBestReceived - (int64)wtx.nTimeReceived > 5 * 60 || forceResend) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So this is for people who don't want to wait 5 hours, and instead they can quit bitcoin-qt and run it again with this flag? First question that comes to my mind is: how frequent to resend txs is deemed too frequent?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Rebroadcasts already happen every (at most) 30 minutes, on average faster.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can't see much use in this change if that's the case then - why not introduce a menu option instead to resend? Is this fixing a problem that actually exists? If it does exist, is it fixing it in the right place?
dfa501b Fix edge case of DEx over-accepts (dexX7)
8225239 Merge bitcoin#433: Make the libcrypto detection fail the newer API. 12de863 Make the libcrypto detection fail the newer API. 2928420 Merge bitcoin#427: Remove Schnorr from travis as well 8eecc4a Remove Schnorr from travis as well a8abae7 Merge bitcoin#310: Add exhaustive test for group functions on a low-order subgroup b4ceedf Add exhaustive test for verification 83836a9 Add exhaustive tests for group arithmetic, signing, and ecmult on a small group 20b8877 Add exhaustive test for group functions on a low-order subgroup 80773a6 Merge bitcoin#425: Remove Schnorr experiment e06e878 Remove Schnorr experiment 04c8ef3 Merge bitcoin#407: Modify parameter order of internal functions to match API parameter order 6e06696 Merge bitcoin#411: Remove guarantees about memcmp-ability 40c8d7e Merge bitcoin#421: Update scalar_4x64_impl.h a922365 Merge bitcoin#422: Restructure nonce clearing 3769783 Restructure nonce clearing 0f9e69d Restructure nonce clearing 9d67afa Update scalar_4x64_impl.h 7d15cd7 Merge bitcoin#413: fix auto-enabled static precompuatation 00c5d2e fix auto-enabled static precompuatation 91219a1 Remove guarantees about memcmp-ability 353c1bf Fix secp256k1_ge_set_table_gej_var parameter order 541b783 Fix secp256k1_ge_set_all_gej_var parameter order 7d893f4 Fix secp256k1_fe_inv_all_var parameter order git-subtree-dir: src/secp256k1 git-subtree-split: 8225239
8225239 Merge bitcoin#433: Make the libcrypto detection fail the newer API. 12de863 Make the libcrypto detection fail the newer API. 2928420 Merge bitcoin#427: Remove Schnorr from travis as well 8eecc4a Remove Schnorr from travis as well a8abae7 Merge bitcoin#310: Add exhaustive test for group functions on a low-order subgroup b4ceedf Add exhaustive test for verification 83836a9 Add exhaustive tests for group arithmetic, signing, and ecmult on a small group 20b8877 Add exhaustive test for group functions on a low-order subgroup 80773a6 Merge bitcoin#425: Remove Schnorr experiment e06e878 Remove Schnorr experiment 04c8ef3 Merge bitcoin#407: Modify parameter order of internal functions to match API parameter order 6e06696 Merge bitcoin#411: Remove guarantees about memcmp-ability 40c8d7e Merge bitcoin#421: Update scalar_4x64_impl.h a922365 Merge bitcoin#422: Restructure nonce clearing 3769783 Restructure nonce clearing 0f9e69d Restructure nonce clearing 9d67afa Update scalar_4x64_impl.h 7d15cd7 Merge bitcoin#413: fix auto-enabled static precompuatation 00c5d2e fix auto-enabled static precompuatation 91219a1 Remove guarantees about memcmp-ability 7a49cac Merge bitcoin#410: Add string.h include to ecmult_impl 0bbd5d4 Add string.h include to ecmult_impl 353c1bf Fix secp256k1_ge_set_table_gej_var parameter order 541b783 Fix secp256k1_ge_set_all_gej_var parameter order 7d893f4 Fix secp256k1_fe_inv_all_var parameter order c5b32e1 Merge bitcoin#405: Make secp256k1_fe_sqrt constant time 926836a Make secp256k1_fe_sqrt constant time e2a8e92 Merge bitcoin#404: Replace 3M + 4S doubling formula with 2M + 5S one 8ec49d8 Add note about 2M + 5S doubling formula 5a91bd7 Merge bitcoin#400: A couple minor cleanups ac01378 build: add -DSECP256K1_BUILD to benchmark_internal build flags a6c6f99 Remove a bunch of unused stdlib #includes 65285a6 Merge bitcoin#403: configure: add flag to disable OpenSSL tests a9b2a5d configure: add flag to disable OpenSSL tests b340123 Merge bitcoin#402: Add support for testing quadratic residues e6e9805 Add function for testing quadratic residue field/group elements. efd953a Add Jacobi symbol test via GMP fa36a0d Merge bitcoin#401: ecmult_const: unify endomorphism and non-endomorphism skew cases c6191fd ecmult_const: unify endomorphism and non-endomorphism skew cases 0b3e618 Merge bitcoin#378: .gitignore build-aux cleanup 6042217 Merge bitcoin#384: JNI: align shared files copyright/comments to bitcoinj's 24ad20f Merge bitcoin#399: build: verify that the native compiler works for static precomp b3be852 Merge bitcoin#398: Test whether ECDH and Schnorr are enabled for JNI aa0b1fd build: verify that the native compiler works for static precomp eee808d Test whether ECDH and Schnorr are enabled for JNI 7b0fb18 Merge bitcoin#366: ARM assembly implementation of field_10x26 inner (rebase of bitcoin#173) 001f176 ARM assembly implementation of field_10x26 inner 0172be9 Merge bitcoin#397: Small fixes for sha256 3f8b78e Fix undefs in hash_impl.h 2ab4695 Fix state size in sha256 struct 6875b01 Merge bitcoin#386: Add some missing `VERIFY_CHECK(ctx != NULL)` 2c52b5d Merge bitcoin#389: Cast pointers through uintptr_t under JNI 43097a4 Merge bitcoin#390: Update bitcoin-core GitHub links 31c9c12 Merge bitcoin#391: JNI: Only call ecdsa_verify if its inputs parsed correctly 1cb2302 Merge bitcoin#392: Add testcase which hits additional branch in secp256k1_scalar_sqr d2ee340 Merge #388: bench_ecdh: fix call to secp256k1_context_create 093a497 Add testcase which hits additional branch in secp256k1_scalar_sqr a40c701 JNI: Only call ecdsa_verify if its inputs parsed correctly faa2a11 Update bitcoin-core GitHub links 47b9e78 Cast pointers through uintptr_t under JNI f36f9c6 bench_ecdh: fix call to secp256k1_context_create bcc4881 Add some missing `VERIFY_CHECK(ctx != NULL)` for functions that use `ARG_CHECK` 6ceea2c align shared files copyright/comments to bitcoinj's 70141a8 Update .gitignore 7b549b1 Merge bitcoin#373: build: fix x86_64 asm detection for some compilers bc7c93c Merge bitcoin#374: Add note about y=0 being possible on one of the sextic twists e457018 Merge bitcoin#364: JNI rebased 86e2d07 JNI library: cleanup, removed unimplemented code 3093576 JNI library bd2895f Merge pull request bitcoin#371 e72e93a Add note about y=0 being possible on one of the sextic twists 3f8fdfb build: fix x86_64 asm detection for some compilers e5a9047 [Trivial] Remove double semicolons c18b869 Merge pull request bitcoin#360 3026daa Merge pull request bitcoin#302 03d4611 Add sage verification script for the group laws a965937 Merge pull request bitcoin#361 83221ec Add experimental features to configure 5d4c5a3 Prevent damage_array in the signature test from going out of bounds. 419bf7f Merge pull request bitcoin#356 03d84a4 Benchmark against OpenSSL verification git-subtree-dir: src/secp256k1 git-subtree-split: 8225239
9d67afa Update scalar_4x64_impl.h (Alex-GR)
Bump to 0.14.9
adds an option to force resending wallet transactions immediately upon startup