Re: [HACKERS] A small type extension example for the contrib directory (fwd)

Поиск
Список
Период
Сортировка
От Tom I Helbekkmo
Тема Re: [HACKERS] A small type extension example for the contrib directory (fwd)
Дата
Msg-id 980125093705.12666A@barsoom.Hamartun.Priv.NO
обсуждение исходный текст
Ответ на A small type extension example for the contrib directory (fwd)  (The Hermit Hacker <scrappy@hub.org>)
Список pgsql-hackers
On Sun, 25 Jan 1998, The Hermit Hacker wrote:

>     I added this to the contrib directory for the server,  but am
> wondering if anyone feels that this just might be useful as a "normal"
> datatype, instead of just in the contrib directory...

I, naturally, like the idea.  :-)  However, there are problems with
the code I submitted -- as I said, it's my first shot at this:

- since then, I've learned (hi, Bruce!) that commutativity is not what
I thought it was, and that LIKE is not only not commutative, it's not
even reflexive.

- the Makefile is BSD-specific, and I don't know how to avoid this.

- my LIKE operator for IP addresses fails.  I've written about this to
the questions list, and I'm more and more certain that this has to be
a bug in PostgreSQL.  (Yes, that's arrogant of me, but I can't for the
life of me see any other possibility.  If someone could look at it
(there's a sample "test.sql" that shows the problem, and I've left the
debug output in the C source), that would be great!)

- I'm using 8 bytes of storage for each type, while I probably could
get away with 5 for IP addresses and 6 for ethernet addresses.  I just
didn't know for sure what the alignment aspects and so on were, and I
had the disk space to spare, so I never experimented to find out.

With all that said, I still think that this is both a useful data type
extension and a neat, small example of how to do this.  If it is to be
used as a base for creating a new internal data type, though, it must
be looked at carefully by someone else; I am only an egg.

I'd also like to be able to index on IP addresses, but the amount of
hair needed to add this seems to be somewhat larger than what I have.
If someone wants to show me how to extend my code to allow this, I would
very much appreciate it.

I'm attaching an updated version of the sample files.  Most of the
occurrences of "commutator = ..." are gone now, and there is a note in
the README to the effect that LIKE and NOT LIKE do not work.

-tih
--
Popularity is the hallmark of mediocrity.  --Niles Crane, "Frasier"

Вложения

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

Предыдущее
От: James Hughes
Дата:
Сообщение: Re: [HACKERS] A small type extension example for the contrib directory (fwd)
Следующее
От: Goran Thyni
Дата:
Сообщение: Re: [HACKERS] fork/exec for backend