Let's say a miner pulls from the node the available transactions to be included in the next block. He receives transactions A, B and C. For whatever reason he discards transaction B and so he mines a block that includes only A and C. Meantime, before the miner pushes the new block, the node has received a new transaction D.
What happens with the transactions B and D? I suppose the node verifies which transactions were not included in the mined block and keeps them available for the next block, is that correct?