in reply to unreferenced scalar
I'm not sure you gave us enough code to figure out what's going wrong here. Personally, I use scalar to figure out the number of elements in an array rather than doing $# +1.
$sv_index = scalar(@carrierLOG) if ($sv_index == 0);
This may fix your problem because it looks like you may be assigning things into the wrong line of your carrierLOG array and that's causing perl to try to free up memory somewhere. Check that $sv_index is really what want it to be.