On Wed, Jan 19, 2022 at 06:18:09PM +0800, Julien Rouhaud wrote: > On Tue, Jan 04, 2022 at 03:55:50PM -0800, Andres Freund wrote: > > On 2022-01-01 18:21:06 +0100, Tomas Vondra wrote: > > > Here's an updated patch, rebased and fixing a couple typos reported by > > > Justin Pryzby directly. > > > > FWIW, cfbot reports a few compiler warnings: > > Also the patch doesn't apply anymore: > > http://cfbot.cputube.org/patch_36_3055.log > === Applying patches on top of PostgreSQL commit ID > 74527c3e022d3ace648340b79a6ddec3419f6732 === > === applying patch > ./0001-Estimate-joins-using-extended-statistics-20220101.patch > patching file src/backend/optimizer/path/clausesel.c > patching file src/backend/statistics/extended_stats.c > Hunk #1 FAILED at 30. > Hunk #2 succeeded at 102 (offset 1 line). > Hunk #3 succeeded at 2619 (offset 9 lines). > 1 out of 3 hunks FAILED -- saving rejects to file > src/backend/statistics/extended_stats.c.rej
Rebased over 269b532ae and muted compiler warnings. Tomas - is this patch viable for pg15 , or should move to the next CF ? In case it's useful, I ran this on cirrus with my branch for code coverage. https://cirrus-ci.com/task/5816731397521408 https://api.cirrus-ci.com/v1/artifact/task/5816731397521408/coverage/coverage/00-index.html statext_find_matching_mcv() has poor coverage. statext_clauselist_join_selectivity() has poor coverage for the "stats2" case. In mcv.c: mcv_combine_extended() and mcv_combine_simple() have poor coverage for the "else if" cases (does it matter?) Not related to this patch: build_attnums_array() isn't being hit. Same at statext_is_compatible_clause_internal() 1538 0 : *exprs = lappend(*exprs, clause); statext_mcv_[de]serialize() aren't being hit for cstrings. -- Justin