On 12/4, I had a transaction broadcast from a node that is owned by my company. The node accepted the transaction and responded with a transaction hash. After some time, we looked the transaction up and noticed it had not gone out. It is not visible on the explorer
Each day I have queried our node for this transaction and receive similar replies (even when querying unconfirmed tx) that the tx is unknown. The leads me to this forum and wanting to know does ARDR have a mempool? when can we assume this transaction is really dead? is there a way to verify?
Hello @gregn . First of all, I would like to ask if your node is up to date? I suspect that the reason is the Ardor hard fork that occurred at block 3700000 on December 1st.
If you haven't updated your node to the latest version 2.5.0 you have been out of the mainnet.
I understand.... I have a case where bundlers on the childchains are not putting my transactions into the blocks. In the last few days I had a case where several transactions sended at the same time were entering each subsequent block separately. The default memory pool is set to 15 minutes, if they expire the transaction will not be confirmed.
I can't say exactly what your case is, but you can see the sender address of the transaction, whether a one has been recorded, if not, maybe something similar has happened to you.
hmmmmm.... this setting was used by Tarasca when they were testing the load on their game, but I don't remember, @petko.petkov can surely answer this question for you.
Please wait, I guess he will answer you very soon.
Yes, but we call it "unconfirmed transactions pool". It's the same concept though.
We don't have a Replace-by-fee feature like Bitcoin. Instead each transaction has a timestamp and a deadline that are specified by the creator of the transaction. The timestamp is in seconds, the deadline is in minutes. The expiration time can be easily calculated as timestamp + deadline * 60. After the expiration time, you can be sure that the transaction is really dead and no one can include it in a block.
The default deadline is 15 minutes as @ArdorBulgaria wrote. This can be seen in Constants.DEFAULT_TRANSACTION_DEADLINE. So, if you didn't specify a deadline when creating the transaction, it should be 15.