Direct filling of column vector is not allowed for a alter table, because it uses RestructureBasedCollector. However ColumnVectors were initialized as ColumnVectorWrapperDirect even for alter table.
ColumnVector for alter tables should not be initialized as ColumnVectorWrapperDirect because direct filling is not allowed for alter table. It should be initialized as ColumnVectorWrapper.