Documentum does not use the list of columns when it formats the INSERT SQL for a created object. Instead, it uses the alternate syntax with the values listed in the order in which the table columns are defined. For instance, if the table is defined like this:
CREATE TABLE mytype_s ( r_object_id, i_partition, myattr)
then the insert will look like this:
INSERT INTO mytype_s VALUES ('0b02254c814a181f', 0,'****')
After some experiments we found that if the DB table has columns that are not attributes (e.g. result of manual DDL manipulation), then Documentum adds the default value for this column (usually NULL).
CREATE TABLE mytype_s ( r_object_id, i_partition, old_column, myattr)
_
INSERT INTO mytype_s VALUES ('0b02254c814a181f', 0, NULL, '****')
_
It's not clear at what moment Documentum reads the table schema from DB. Unlikely at server start only because it usually works fine after ALTER TABLE + ALTER TYPE.
But now we faced an issue that some object creations fail with Postgres error "INSERT has more expressions than target columns". After the last attribute change we restarted the server many times and the worst is that the error is not reproducible: the next object creation succeeds.

In our DB table we have one unknown column, but the INSERT SQL has two NULLs, one of them is positioned at wrong place!