Where does buffer compacting happen?