You are correct when you say a varray has a maximum size limit, but you are incorrect in a previous post when you say you can't do something like: my_varray.extend

The EXTEND method adds a new element to a table or varray. In the case of varrays you can extend up to the maximum limit specified in definition:

TYPE t_array IS VARRAY(10) OF NUMBER;
v_var1 t_array := t_arrat(); -- Initialized but no elements
v_var1.extend; -- 1 element
v_var1.extend; -- 2 elements
....
v_var1.extend; -- 10 elements
v_var1.extend; -- Error

Cheers