"Yeb Havinga" <yebhavinga@gmail.com> writes:
> postgres=# create table a as select ''::oidvector;
> SELECT 1
> postgres=# copy a to '/tmp/test' with binary;
> COPY 1
> postgres=# copy a from '/tmp/test' with binary;
> ERROR:  invalid oidvector data
The problem seems to be that array_recv passes back a zero-dimensional
array, *not* a 1-D array, when it observes that the input has no
elements.  A zero-D array is not part of the subset of possible arrays
that we allow for oidvector.
I'm less than convinced that this is worth fixing.  oidvector is not
intended for general-purpose use anyway.  What's the use-case where this
would come up?
            regards, tom lane