More information including a workaround. VACUUM ANALYZE is not freeing space after an array_append, but it does after replacing a specific element in the array. So if I do this: update array_big1 set chunk_ids = array_append(chunk_ids, '1') where id = 0; update array_big1 set chunk_ids[1] = chunk_ids[1] where id = 0; VACUUM ANALYZE reclaims the growth caused by array_append. -Randall -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general