Re: [HACKERS] rbtree code breaks GIN's adherence to maintenance_work_mem

2010-07-31 Thread Robert Haas
On Sat, Jul 31, 2010 at 12:40 AM, Tom Lane t...@sss.pgh.pa.us wrote: Another misbehavior that I noted while playing with Artur's example is that, while GIN index build seems to adhere pretty well to whatever maintenance_work_mem limit you give it in 8.4, it blows right by that limit in 9.0 and

Re: [HACKERS] rbtree code breaks GIN's adherence to maintenance_work_mem

2010-07-31 Thread Tom Lane
Robert Haas robertmh...@gmail.com writes: On Sat, Jul 31, 2010 at 12:40 AM, Tom Lane t...@sss.pgh.pa.us wrote: So, I would like somebody to show cause why that whole module shouldn't be ripped out and the code reverted to where it was in 8.4.  My recollection is that the argument for adding it

Re: [HACKERS] rbtree code breaks GIN's adherence to maintenance_work_mem

2010-07-31 Thread Robert Haas
On Sat, Jul 31, 2010 at 12:02 PM, Tom Lane t...@sss.pgh.pa.us wrote: Robert Haas robertmh...@gmail.com writes: On Sat, Jul 31, 2010 at 12:40 AM, Tom Lane t...@sss.pgh.pa.us wrote: So, I would like somebody to show cause why that whole module shouldn't be ripped out and the code reverted to

Re: [HACKERS] rbtree code breaks GIN's adherence to maintenance_work_mem

2010-07-31 Thread Tom Lane
Robert Haas robertmh...@gmail.com writes: On Sat, Jul 31, 2010 at 12:02 PM, Tom Lane t...@sss.pgh.pa.us wrote: I'm tempted to suggest that making RBNode be a hidden struct containing a pointer to somebody else's datum is fundamentally the wrong way to go about things, because the extra void

Re: [HACKERS] rbtree code breaks GIN's adherence to maintenance_work_mem

2010-07-31 Thread Robert Haas
On Sat, Jul 31, 2010 at 12:32 PM, Tom Lane t...@sss.pgh.pa.us wrote: Robert Haas robertmh...@gmail.com writes: On Sat, Jul 31, 2010 at 12:02 PM, Tom Lane t...@sss.pgh.pa.us wrote: I'm tempted to suggest that making RBNode be a hidden struct containing a pointer to somebody else's datum is

Re: [HACKERS] rbtree code breaks GIN's adherence to maintenance_work_mem

2010-07-31 Thread Tom Lane
Robert Haas robertmh...@gmail.com writes: On Sat, Jul 31, 2010 at 12:32 PM, Tom Lane t...@sss.pgh.pa.us wrote: So it'd definitely be a lot better than now.  Maybe there'd be some remaining performance gap for non-pathological cases, but I think we would be willing to pay that in order to avoid

Re: [HACKERS] rbtree code breaks GIN's adherence to maintenance_work_mem

2010-07-31 Thread Tom Lane
Robert Haas robertmh...@gmail.com writes: On Sat, Jul 31, 2010 at 12:32 PM, Tom Lane t...@sss.pgh.pa.us wrote: So it'd definitely be a lot better than now.  Maybe there'd be some remaining performance gap for non-pathological cases, but I think we would be willing to pay that in order to avoid

[HACKERS] rbtree code breaks GIN's adherence to maintenance_work_mem

2010-07-30 Thread Tom Lane
Another misbehavior that I noted while playing with Artur's example is that, while GIN index build seems to adhere pretty well to whatever maintenance_work_mem limit you give it in 8.4, it blows right by that limit in 9.0 and HEAD --- I observed it happily eating something north of 128MB with a