## Enhancement At `ArrowColCodec`, after examining the column type info, we still uses `dynamic_cast` to cast the pointers. This introduces extra cost. 