Jimmy Yih <jyih@pivotal.io> writes:
> The possible issue I would like to note is related to how the array type is
> named in makeArrayTypeName() function. The composite type will take the
> heap relation's relname as its typname and the array type will usually be
> named with an underscore prepended (after first attempting to use the
> relname and hitting typname collision with the composite type). If the
> typname with the underscore prepended is already taken, the logic is to
> continue prepending underscores until there are no typname collisions
> (truncating the end of the typname if typname gets past NAMEDATALEN of
> 64). It is possible that enough heap relations with similar relnames could
> cause more and more typname collisions until you end up with typnames that
> primarily consist of underscores or not being able to construct a typname
> because we have reached a typname consisting of all underscores (which can
> cause table creation failure).
We've never heard a field report of this happening, so I'm not terribly
concerned about it.
regards, tom lane