Pages:
Author

Topic: Altcoin: transactions stuck in pending state (Read 315 times)

full member
Activity: 615
Merit: 154
CEO of Metaisland.gg and W.O.K Corp
It is not stratum who add the transactions to a block, it is the coin itself. I am not familiar with Litecoin, but with latest Bitcoin, it is located in 2 places, validation.cpp where the block is validated, and mining.cpp where the block are deciding what to add to a block or not and take save the final product to the blockchain.
There are several problems, the blockchain is complex.
- when a transaction is created, be sure that the fees are enough and not too much. Transactions generated by the pool for example will by default have a wrong fee.
- be sure that the Stale is not too large or the blocks cannot be included
- check IsTrusted
- remove the Witness checks since it cannot work with a new blockchain.
etc...

You have not lost your 300 tx, if they are not confirmed for a while (3000 seconds I think) they will be cancelled. If they are in mempool, they are not in the blockchain yet, so your blockchain is clean.

Also be sure that all your nodes have the same proof of work algorithm, the same GetSubsidary functions, so that they can confirm the transaction, if one is different it will reject the transaction and the tx will stay in mempool until cancelled.

Also all the tx generated by yiimp have a wrong fee at starting so enable the fallbackfees.
newbie
Activity: 3
Merit: 0
Yeah, auto ready is already checked :/

I really have no idea why this is happening. My TTF is 2 minutes.
I tried to find some config to force stratum to give priority to mine transactions blocks.

The "default" config is looking for profit. I would like to change it to make the network go on.

We are really in trouble here. More than 300 txs stucked Sad
full member
Activity: 615
Merit: 154
CEO of Metaisland.gg and W.O.K Corp
Stratum should mine if your coin is working correctly.
Check that your coin has "auto ready" checkbox on. Stratum disabled it if the coin was not mining correctly.
newbie
Activity: 3
Merit: 0
Thanks for the reply.

I think this is probably a problem with Yiimp/Stratum itself. We mined almost 2000 blocks in the latest 24 hours and have no success getting any transaction mined.
Just new blocks. My altcoin is forked from Litecoin 0.16.

There's any way to kinda force stratum to mine transactions first?

Until our listing in an exchange we don't use to have this kind of trouble.
But now that we have lots of transactions/day there's a lot of tx's on mempool.

Grateful!

full member
Activity: 615
Merit: 154
CEO of Metaisland.gg and W.O.K Corp
I think I'm having the same problem. My Yiimp pool is only mining new blocks.
I have 159 transactions on the mempool. The pool hashrate is good.

But no matter what I can't mine transactions in blocks. Only new blocks with regular reward.

The last mined transactions are from 5 days ago.

Can anyone help me?


It is related to an incorrect fee or difficulty. Bitcoin does not check the old transactions to avoid these kind of problems but altcoins cannot avoid them.

Check in mining.cpp the TestPackage and TestPackageTransactions functions. Add a printf to know what is the false condition that is blocking the tx to be accepted. Comment the one that poses a problem -> your coins are saved and spendable.
newbie
Activity: 3
Merit: 0
I think I'm having the same problem. My Yiimp pool is only mining new blocks.
I have 159 transactions on the mempool. The pool hashrate is good.

But no matter what I can't mine transactions in blocks. Only new blocks with regular reward.

The last mined transactions are from 5 days ago.

Can anyone help me?
jr. member
Activity: 170
Merit: 1
I don't understand what you are saying, and apart are you sending the token from etherwallet or blockchain?? Kindly provide us with full details of what really happens so as to know how to help you on this.
newbie
Activity: 12
Merit: 0
Thank you for your support. The issue has been resolved. It was related to YIIMP pool.
full member
Activity: 615
Merit: 154
CEO of Metaisland.gg and W.O.K Corp
What coin do you fork? Bitcoin is not using solo mining. You need to use Stratum.
Generate is deprecated for a couple of years now.

About being stuck in the memory pool that means that you do not have enough confirmations. You need to mine 6 block or more (depending on your settings) to get the transaction confirmed and available (saved in the blockchain).
Proof of work not met error can block a transaction too. This can happen if you changed the Subsidy code in validation.cpp, this is a hard fork of the blockchain and will block your coin.
newbie
Activity: 12
Merit: 0
I made my own coin and hosted the node. I have already made the changes earlier suggested by you. Now the problem is that the transaction stuck in memory pool and once I generate the coin using generate the transaction are done. Please help
hero member
Activity: 1414
Merit: 516
Can you answer to a question OP if you don't mind? What coin you sent and was stucked? Or you created own coin for test and you host own node and all what is needed?
member
Activity: 714
Merit: 11
BountyMarketCap
just cancel it, if it's still possible and wait a few more hours or days, then do the transaction again. I have experienced that, and the reason they often say that wallet is being maintenence.
full member
Activity: 615
Merit: 154
CEO of Metaisland.gg and W.O.K Corp
my miner is generating coins and not mining transaction they keep stuck in memory pool and when I generate the coin in the console then these transaction reaches to confirmed state can you please guide me on this. Please help me out I will be very grateful of you.

check my post here: https://bitcointalksearch.org/topic/complete-guide-on-how-to-create-a-new-alt-coin-update-2019-5134256

It is a problem with SEGWIT.
newbie
Activity: 12
Merit: 0
my miner is generating coins and not mining transaction they keep stuck in memory pool and when I generate the coin in the console then these transaction reaches to confirmed state can you please guide me on this. Please help me out I will be very grateful of you.
full member
Activity: 615
Merit: 154
CEO of Metaisland.gg and W.O.K Corp
You need be sure that Yiimp is setup using an address from the wallet installed on the same server.
Of course you must have stratum running.
And you need to run your coin with in command line yourcoin-qt -deprecatedrpc=accounts

If it is still not working, edit the stratum source code and remove the test that is shooting the error and see what happen.
Also to check if your coin is correctly configured, go in the backend of Yiimp click on the symbol of your coin and you will see an Option to open the CONSOLE.
Do it and type getblocktemplate.

If it does not get you an xml like answer, then you have not fixed the problem.

I was having the same issue and then I followed up your advice and things worked for me. Now when I am mining the coining it is showing that the address is not mine. Please help me out with it. I have tried YIIMP POOL.
newbie
Activity: 12
Merit: 0
I was having the same issue and then I followed up your advice and things worked for me. Now when I am mining the coining it is showing that the address is not mine. Please help me out with it. I have tried YIIMP POOL.
newbie
Activity: 12
Merit: 0
I have a problem with the transactions of my altcoin.
When I send a transaction in to another wallet (full node) the transaction is working correclty but end up in Pending forever.
I have tried to change the fees and rebroadcast, and I get the same result.

Periodically, the wallet rebroadcast the transaction to the network like this:

Code:
2019-03-17T18:40:42Z [default wallet] Relaying wtx 52b4b7dcb2f2e70fb18a6bf5403e8cf9fb0e5c9f2998575f308cf36829b08ec4
2019-03-17T18:40:42Z [default wallet] Relaying wtx d49a010079caa2471cdd07cc26396b6dd93ac9c05c4e2058768aeac09b03f5fd
2019-03-17T18:40:42Z [default wallet] Relaying wtx a952070a5d43d8d73fcf0608b858c673a7a94d9997ef246267267f23f269e451
2019-03-17T18:40:42Z [default wallet] ResendWalletTransactions: rebroadcast 3 unconfirmed transactions


Here is an example of transaction

Code:
Status: 0/unconfirmed, in memory pool
Date: 3/17/19 01:07
To: k7NFieCa6MBeTumzqnPMS9x9wocEhYBszj
Debit: -1287.86680000 KYF
Transaction fee: -0.10000000 KYF
Net amount: -1287.96680000 KYF
Transaction ID: a952070a5d43d8d73fcf0608b858c673a7a94d9997ef246267267f23f269e451
Transaction total size: 24699 bytes
Transaction virtual size: 13143 bytes
Output index: 1


Any clue about what could be the issue in the configuration of the coin? Huh

Thanks
full member
Activity: 615
Merit: 154
CEO of Metaisland.gg and W.O.K Corp
I will answer to my own question.

What is blocking the transactions is segwit...check

Code:
/rpc/mining.cpp
throw JSONRPCError(RPC_INVALID_PARAMETER, "getblocktemplate must be called with the segwit

/validation.cpp
return (VersionBitsState(pindexPrev, params, Consensus::DEPLOYMENT_SEGWIT, versionbitscache) == ThresholdState::ACTIVE);

and remove the seqwit security check at the early stage of the blockchain.
full member
Activity: 615
Merit: 154
CEO of Metaisland.gg and W.O.K Corp
The problem is simple, I mine a couple of blocks after the genesis, then I do a transaction (send let say 20KYF to another address), the transaction is showing in the mining wallet, the transaction is showing in the receiving wallet.
I mine 2000 blocks more, but the transaction stay pending.
nDepth=0 shows that the transaction is never added to a block.

I try to change the fees and resent the transaction everything is working normally except that again the transaction stay in Pending and I never get it confirmed.
I have changed the code to show it confirmed in the wallet, and also fake the confirmation, but the real issue is that the transaction is only in mempool and not added to a block.
Even if I use a huge amount for the fee.

I have 5 nodes running, but I guess only one node could confirm 1 time. But in my case nothing happen. I try to understand how the whole confirmation stuff is working, specially at the early stage of a blockchain.
I have the feeling that there are some test or some condition that prevent my transactions to be confirmed, because it is at a very starting, or maybe because the chain work is not big enough, something like this.

Note: I use Bitcoin Core 0.18 for my tests. These problem might not happen with a Litecoin or Dash fork, but the latest (0.17+) Bitcoin Core have an insane number of tests in validation.cpp, wallet.cpp, etc... that these "old" coins didn't had.

Maybe it is a normal behavior if you have only one node that is mining? Or the blockchain needs to have a minimum of blocks mined to be "mature"?

I don't really understand fully what you are trying to talk about, what do you mean by you mined thousands of block and it's still showing unconfirmed.

Please you should be more detailed about the problem you are facing so that we can help you properly, id you ran the miner and it mines a lot of block without you getting confirmation, then I think you should check to see how many blocks it would take to get one confirmation because some of the blockchain were actually fixed to 20 block mined before the a transaction is included in a block.
sr. member
Activity: 686
Merit: 277
I don't really understand fully what you are trying to talk about, what do you mean by you mined thousands of block and it's still showing unconfirmed.

Please you should be more detailed about the problem you are facing so that we can help you properly, id you ran the miner and it mines a lot of block without you getting confirmation, then I think you should check to see how many blocks it would take to get one confirmation because some of the blockchain were actually fixed to 20 block mined before the a transaction is included in a block.
Pages:
Jump to: