i read the answer to this question and got some new one.
As far as i understand how a soft fork works, it means that post-softfork clients with new consensus rules accept only blocks that follow those new consensus rules, while older, pre-softfork clients accept both, pre- and post-softfork blocks. If a old client mines a block, that gets rejected by the newer clients, therefore causing a temporary blockchain fork that is resolved eventually after at least 51% of all clients are upgraded, because the clients then switch to the blockchain fork of the newer clients.
My questions are:
Don't this bear the risk of invalidating all transactions still made by the old clients, but that where rejected by the newer ones? If i made a transaction that gets mined by an old client by the time the old clients still have 51% of the hashing power, but it then switches to the chain of the new ones that previously rejected this block, it disappears from the chain altogether, doesn't it?
Since the blockchain don't change, a lot of old blocks that were following old consensus rules are still in there. When i'm starting a new, post-fork client and download the whole blockchain, how isn't this causing problems for the client when it tries to validate the whole blockchain with all the old blocks in it? Isn't it checking for old blocks following new rules?
Thanks for any help.