cnfify() performance - Mailing list pgsql-hackers

From Hiroshi Inoue
Subject cnfify() performance
Date
Msg-id 000001bed3e4$28c8b900$2801007e@cadzone.tpf.co.jp
Whole thread Raw
List pgsql-hackers
Hi all,

A question about TODO item  * Fix memory exhaustion when using many OR's

pull_ors() and pull_ands() are called while processing 
cnfify() and both call copyObject().           ^^^^^^^^^^^^^^
For example in pull_ors()
return (pull_ors(nconc(copyObject((Node *) args),        copyObject((Node *) lnext(orlist)))));

copyObject() seems too heavy
Is copyObject() necessary in this case ?
Couldn't we change as below ?
return (pull_ors(nconc(listCopy(args),        listCopy( lnext(orlist)))));    

I'm not sure it's possible or not ,because I don't understand
cnfify() and other related stuff.

If it's possible,it would improve cnfify()'s performance and 
memory consumption in many OR's cases ,though it would
never fix TODO item.

Comments ?

Regards.

Hiroshi Inoue
Inoue@tpf.co.jp


pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: [BUGS] Dropped connection during COPY causes trouble
Next
From: Vince Vielhaber
Date:
Subject: RE: [HACKERS] Re: [BUGS] Dropped connection during COPY causes t