Re: BUG #5314: Error in nested composite types in plpgsql.
От | Tom Lane |
---|---|
Тема | Re: BUG #5314: Error in nested composite types in plpgsql. |
Дата | |
Msg-id | 12539.1265914712@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: BUG #5314: Error in nested composite types in plpgsql. (Robert Haas <robertmhaas@gmail.com>) |
Ответы |
Re: BUG #5314: Error in nested composite types in plpgsql.
|
Список | pgsql-bugs |
Robert Haas <robertmhaas@gmail.com> writes: > 2010/2/10 Oleg Serov <serovov@gmail.com>: >> Somebody will fix this bug or not? > I'm not sure whether this is a bug. Yeah, I think it is. The problem is that exec_move_row is taking too many shortcuts with nulls. If the input record is short of fields it is willing to pass this data to exec_assign_value: value = (Datum) 0; isnull = true; valtype = InvalidOid; The invalid datatype value doesn't matter in the scalar case, but if the target is a sub-row it fails the type_is_rowtype() sanity check in exec_assign_value. The cleanest fix would probably be to use the target variable's datatype here instead of InvalidOid. Alternatively, we could change exec_assign_value to not apply the sanity check unless the input is non-null. regards, tom lane
В списке pgsql-bugs по дате отправления: