Merge Operations

Can anyone explain to me exactly what happens on backend storage during merge operations and retention in Veeam?

My current understanding is that https://speedtest.vet/ incrementals are merged into the existing chain after we’ve hit our set retention and then a new full is essentially generated on the backend storage. This requires backend storage equivalent to the size of the to-be-merged full + the original full that is still on disk. Is this true? If so, is there any way of doing this where I don’t require essentially double storage every time?