Hi, I did a few transactions using Bitcoin Core a month ago, they work ok but not this time.
Today I try to send 5 BTC to my exchange wallet and the transaction got stuck because I use the default fee per byte and it's still showing as unconfirmed transaction.
I tried Bitcoin-qt --zapwallettxes=1 at first on Bitcoin Core 0.12.1 and my balance shows my original amount. I then use Blockexplorer which doesn't provide up to date info and I thought I still have the original amount in the wallet address. I try to send my entire amount 6.93 to a new wallet address that I generate. The client show 0 after the sent, but using Blockchain.info show the new address never get the amount.
Keep in mind that blockchain.info is just a service, not the actual blockchain. What you see on that site is not necessarily representative of the actual blockchain or state of the network. Technically, until a transaction confirms, the Bitcoin is still "in your wallet", i.e. you can still create a conflicting transaction to send it elsewhere.
My concern is
1) I am not sure if this transaction will be forget by the network in a few days after I stop the client and wait for blockchain.info to report the transaction is gone.
There are 2 destination address, the 5 BTC going to my exchange wallet 3DgGLF..., the 0.516xxxx BTC is an unknown address 1DvNDL. Blockchain.info shows the 1DvNDL has 1 transaction only. The fee is shown as 0.0001107 BTC. Why is the 0.516xxx BTC so high and what address is this?
That most likely is a change address. When you spend Bitcoin, you are actually spending from a previous output which is associated with an address. Like a physical paper bill, you can't spend just some of that previous output at once, you have to spend it all at once and receive back some amount of change. So in order to make it so that you actually spend the amount that you want to and that you can keep the change, your wallet will generate a new Bitcoin address under its control and send the change to that address.
2) I try to make a new address and try to send all balance to myself using higher fee, but I still am not able to move the balance probably because my real balance is 1.37 currently as shown in blockchain.info?
No. Your "balance" doesn't really matter with what you are doing.
3) This is the balance shown in blockchain.info, if the transaction get cancel, the balance will be 6.8959193.
But my Bitcoin wallet is shown to have 6.93xxx. Why? I did a few transfer to myself previously.
It is probably because you have another change address in your wallet with the rest of the Bitcoin in your wallet.
You really should not be using a block explorer to keep track of your balance because it does not know of all of the addresses in your wallet. You will only see the balance of one address, not of all of the addresses in your wallet.
4) I upgrade Bitcoin Core to 0.14. It remember that I sent the 6.935 Bitcoin in my 2nd transaction and show my available as 0BTC, even when I -zapwallettxes=1. When I downgrade back to 0.12.1, it shows I still have 6.9354 BTC available, and the sync is up to date? Why?
IIRC zapwallettxes no longer works with 0.14 without a bit of finagling. With 0.12.0+, you shouldn't be using zapwallettxes anyways. Instead you should use the Abandon Transaction option that appears when you right click a transaction in the transactions list.