----- Original Message ----- From: "Alvaro Herrera" <[EMAIL PROTECTED]> To: "smile khmer" <[EMAIL PROTECTED]> Subject: Re: [HACKERS] PG function call Date: Thu, 6 Oct 2005 10:30:37 -0400
> > On Thu, Oct 06, 2005 at 09:06:59AM -0500, smile khmer wrote: > > Dear all, > > > > Does anyone know how index searching work in PG. I've explored > > the source code of PG, for btree, for searching, it will call the > > functions in file btcompare.c. As I've made a printf in the > > functions of the file btcompare.c. When I compile and run PG, it > > get into loop,..... the messages are printed and printed ..... > > Not a loop -- the function may just be called a lot of times. but when I write the output to file (not standard out put), it won't finish, so I interupted and there're more than 50.000 lines,... and during the compiling process, there's alot of messages like these : ............................. tsort: -: input contains a loop: tsort: fe-misc.o tsort: fe-exec.o tsort: -: input contains a loop: tsort: fe-misc.o tsort: fe-exec.o tsort: -: input contains a loop: tsort: fe-misc.o tsort: fe-exec.o ... ..... > > > I want to know how the function called happen in Postgres, it > > seems that it doesn't call the function directly ! > > The code gets function pointers through the catalogs, so they will be > called even if you don't see a direct function call. At some time the > code will ask for the equality function for such-and-such datatype, then > call it. > then, if I want to change somepart of the code or write one function which will tell postgresql to call this function whenever It compares the string or character data type. I've found "citext" project but I still don't understand where exactly to modified code. thanks, Moni > -- > Alvaro Herrera http://www.amazon.com/gp/registry/CTMLCN8V17R4 > "Acepta los honores y aplausos y perderĂ¡s tu libertad" > > ---------------------------(end of broadcast)--------------------------- > TIP 4: Have you searched our list archives? > > http://archives.postgresql.org -- ___________________________________________________________ Sign-up for Ads Free at Mail.com http://promo.mail.com/adsfreejump.htm ---------------------------(end of broadcast)--------------------------- TIP 6: explain analyze is your friend