What happens to my transaction if it is not accepted by miners? Let's say I haven't any fee or I paid a little fee. Miner didn't accept my transaction and still haven't got one confirmation. What will happen to that transaction? Will it rollback or Will it be in an unconfirmed state forever? Please explain.
Nodes will eventually drop transactions if they remain unconfirmed for too long (or if the inputs for a tx are confirmed in an alternate transaction). The time this takes to happen can vary from 3-14 days usually, depending on the nodes' config. Block explorers may cache transactions for longer than that, however, and may continue displaying them long after they have been dropped from the mempool.