Hello Arne, yep, now the warnings have gone. And I must thank you for quite a fun time I had here testing your patch :) I tried even some weird combinations like this: postgres=# create table t("_ __ ___" int); CREATE TABLE postgres=# select "__ _ ___" from t; ERROR: column "__ _ ___" does not exist LINE 1: select "__ _ ___" from t; ^ HINT: Perhaps you meant to reference the column "t._ __ ___". postgres=# select "___ __ _" from t; ERROR: column "___ __ _" does not exist LINE 1: select "___ __ _" from t; ^ HINT: Perhaps you meant to reference the column "t._ __ ___". postgres=#
... and it still worked fine. Honestly I'm not entirely sure fixing only two switched words is worth the effort, but the declared goal is clearly achieved. I think the patch is good to go, although you need to fix code formatting. At least the char*-definition and opening "{" brackets are conspicuous. Maybe there are more: it is worth running pgindend tool. And it would be much more convenient to work with your patch if every next version file will have a unique name (maybe something like "_v2", "_v3" etc. suffixes) -- best regards, Mikhail A. Gribkov e-mail: youzh...@gmail.com *http://www.flickr.com/photos/youzhick/albums <http://www.flickr.com/photos/youzhick/albums>* http://www.strava.com/athletes/5085772 phone: +7(916)604-71-12 Telegram: @youzhick On Mon, Jul 17, 2023 at 1:42 AM Arne Roland <a.rol...@index.de> wrote: > Hello Mikhail, > > I'm sorry. Please try attached patch instead. > > Thank you for having a look! > > Regards > Arne > > ------------------------------ > *From:* Mikhail Gribkov <youzh...@gmail.com> > *Sent:* Thursday, July 6, 2023 13:31 > *To:* Arne Roland <a.rol...@index.de> > *Cc:* Pg Hackers <pgsql-hackers@lists.postgresql.org> > *Subject:* Re: Permute underscore separated components of columns before > fuzzy matching > > Hello Arne, > > The goal of supporting words-switching hints sounds interesting and I've > tried to apply your patch. > The patch was applied smoothly to the latest master and check-world > reported no problems. Although I had problems after trying to test the new > functionality. > > I tried to simply mix words in pg_stat_activity.wait_event_type: > > postgres=# select wait_type_event from pg_stat_activity ; > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] WARNING: detected write past chunk end > in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > 2023-07-06 14:12:35.968 MSK [1480] ERROR: column "wait_type_event" does > not exist at character 8 > 2023-07-06 14:12:35.968 MSK [1480] HINT: Perhaps you meant to reference > the column "pg_stat_activity.wait_event_type". > 2023-07-06 14:12:35.968 MSK [1480] STATEMENT: select wait_type_event from > pg_stat_activity ; > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > WARNING: detected write past chunk end in MessageContext 0x559d668aaf30 > ERROR: column "wait_type_event" does not exist > LINE 1: select wait_type_event from pg_stat_activity ; > ^ > HINT: Perhaps you meant to reference the column > "pg_stat_activity.wait_event_type". > postgres=# > > So the desired hint is really there, but thgether with looots of warnings. > For sure these should not be be encountered. > > And no, this is not some kind of side problem brought by some other > commit. The same request on a plain master branch performs without these > warnings: > > postgres=# select wait_type_event from pg_stat_activity ; > 2023-07-06 14:10:17.171 MSK [22431] ERROR: column "wait_type_event" does > not exist at character 8 > 2023-07-06 14:10:17.171 MSK [22431] STATEMENT: select wait_type_event > from pg_stat_activity ; > ERROR: column "wait_type_event" does not exist > LINE 1: select wait_type_event from pg_stat_activity ; > -- > best regards, > Mikhail A. Gribkov > > e-mail: youzh...@gmail.com > *http://www.flickr.com/photos/youzhick/albums > <http://www.flickr.com/photos/youzhick/albums>* > http://www.strava.com/athletes/5085772 > phone: +7(916)604-71-12 > Telegram: @youzhick > >