| From: | Corey Huinker <corey(dot)huinker(at)gmail(dot)com> |
|---|---|
| To: | Michael Paquier <michael(at)paquier(dot)xyz> |
| Cc: | 303677365(at)qq(dot)com, pgsql-bugs(at)lists(dot)postgresql(dot)org |
| Subject: | Re: BUG #19842: pg_restore_extended_stats() rejects a faithful pg_dump of ANALYZE-produced range expression statisti |
| Date: | 2026-11-10 03:49:38 |
| Message-ID: | CADkLM=fvGCQWvrrDrSB2M7PHYS=PwLGU17LzoYE6u23t3KV5gQ@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-bugs |
>
> Hence the extstats case has just been copy-pasting the same rule as
> previously, because we have the same 1-dimensional array requirement.
>
> In order to do something about that, we would need to allow a case in
> the restore paths where empty arrays are OK on an option-basis. That
> means touching array_in_safe() and statatt_build_stavalues(), or
> change their interfaces. Invasive, but after seeing 261f89a976bf I
> am afraid that we have to fix that especially for the MCEs.
> range_bounds_histogram should be mostly esoteric in this case, no?
> Still it seems good to make consistent choices across the board,
> especially as the range bound histograms require the same fixes.
>
> Corey, what's your take?
>
Just seeing your reply now, but I also got drawn to 261f89a976bf not making
the same (stats->numvalues[k] > 0) to (stats->stavalues[k] != NULL) change
for extstats as was made for attrstats.
In addition, we need to complete decouple found/notfound checks for
range_bounds_histogram from the other two, as all of those "must be paired"
checks are for things that share a stakind.
I'll toy around with some workarounds for the '{}' case and get back to you.
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Michael Paquier | 2026-11-10 03:52:52 | Re: BUG #19842: pg_restore_extended_stats() rejects a faithful pg_dump of ANALYZE-produced range expression statisti |
| Previous Message | shihao zhong | 2026-11-10 03:29:45 | Re: BUG #18258: The redo of the drop db wal needs to forward the Min Recovery Point |