Re: [HACKERS] Is it necessary to rewrite table while increasing the scale of datatype numeric?
От | Jim Nasby |
---|---|
Тема | Re: [HACKERS] Is it necessary to rewrite table while increasing the scale of datatype numeric? |
Дата | |
Msg-id | 522A39CA.90006@nasby.net обсуждение исходный текст |
Ответ на | Re: Is it necessary to rewrite table while increasing the scale of datatype numeric? (Noah Misch <noah@leadboat.com>) |
Ответы |
Re: Is it necessary to rewrite table while increasing the scale of datatype numeric?
|
Список | pgsql-hackers |
On 9/5/13 10:47 PM, Noah Misch wrote: > On Thu, Sep 05, 2013 at 10:41:25AM -0700, Jeff Janes wrote: >> In order to avoid the rewrite, the code would have to be changed to >> look up the column definition and if it specifies the scale, then >> ignore the per-row n_header, and look at the n_header only if the >> column is NUMERIC with no precision or scale. That should >> conceptually be possible, but I don't know how hard it would be to >> implement--it sounds pretty invasive to me. Then if the column was >> altered from NUMERIC with scale to be a plain NUMERIC, it would have >> to rewrite the table to enforce the row-wise scale to match the old >> column-wise scale. Where as now that alter doesn't need a re-write. >> I don't know if this would be an overall gain or not. > > Invasive indeed. The type-supplementary data would need to reach essentially > everywhere we now convey a type OID. Compare the invasiveness of adding > collation support. However, this is not the first time it would have been > useful. We currently store a type OID in every array and composite datum. > That's wasteful and would be unnecessary if we reliably marshalled similar > information to all the code needing it. Given a few more use cases, the > effort would perhaps start to look credible relative to the benefits. Aren't there cases where PL/pgsql gets hosed by this? Or even functions in general? I also have a vague memory of some features that would benefit from being able to have typemod info available at a tuplelevel in a table, not just for the entire table. Unfortunately I can't remember why we wanted that... (Alvaro, do yourecall? I'm pretty sure it's something we'd discussed at some point.) -- Jim C. Nasby, Data Architect jim@nasby.net 512.569.9461 (cell) http://jim.nasby.net
В списке pgsql-hackers по дате отправления: