SQLF Optimization question

Поиск
Список
Период
Сортировка
От Werner Echezuria
Тема SQLF Optimization question
Дата
Msg-id 2485a25e0705310658k4d7fa8ddse45e9e94dd9b7303@mail.gmail.com
обсуждение исходный текст
Ответы Re: SQLF Optimization question  (Martijn van Oosterhout <kleptog@svana.org>)
Список pgsql-hackers
Hello, (First of all, sorry for my english),

I'm in a project that involves including sqlf sentences to make postgres understand the fuzzy querys, i mean, make people to create fuzzy predicates,  these are words like fat, tall, young, old, in an sql sentence. I guess the first step is complete. The parser know when an user writes "CREATE FUZZY PREDICATE <name> ON <domain> AS <fuzzy set>".

For instance, a person can create the young word as a fuzzy predicate like this: "CREATE FUZZY PREDICATE young ON 0..120 AS (0,0,25,50)", that means, in a domain of 0..120 a young person is between 25 and 50. The fuzzy set has the follows: (beg,core1,core2,end), (begin of the set, first core, second core, end of the set).

The sentence creates a row in a catalog named "pg_fuzzypred", and we're good till then.

But when I write "Select * from students where age=young", brings me a message telling me the node isn't exist. My teacher who is very involved in the project tells me that postgres has to do the derivation principle, before it gets to the executor (what sounds logical), in order to the optimizer calculates all costs properly.

It's in this point where i need help, ¿What do i have to modify or create to make postgres undestand the derivation principle, where it's the point in parser tree goes to query tree and do the optimization?

I send a file, this has all the modification that my teacher and i have make to postgres (It has some words in spanish, but i guess it's understandable), and a file with the errors.

Thanks.

Вложения

В списке pgsql-hackers по дате отправления:

Предыдущее
От: "Zeugswetter Andreas ADI SD"
Дата:
Сообщение: Re: TOAST usage setting
Следующее
От: Tom Lane
Дата:
Сообщение: Re: New cast between inet/cidr and bytea