Thread
-
Print b-tree tuples
Samuel Vogel <s@muel-vogel.de> — 2013-01-03T16:48:26Z
Hello, I'm trying to print out the tuples in the b-tree nodes for analysis, but when iterate over more than the first entry of the tuples (scanKey++), I strangely get the error below on query execution: ERROR: relation "simpletest" does not exist LINE 1: SELECT * FROM simpletest WHERE id = 50; Any help with reviewing my my small attached patch would be greatly appreciated! Regards, Samuel Vogel
-
Re: Print b-tree tuples
Samuel Vogel <s@muel-vogel.de> — 2013-01-04T12:00:21Z
Hello, > I'm trying to print out the tuples in the b-tree nodes for analysis, > but when iterate over more than the first entry of the tuples > (scanKey++), I strangely get the error below on query execution: > ERROR: relation "simpletest" does not exist > LINE 1: SELECT * FROM simpletest WHERE id = 50; I was able to get around this by only printing byval attributes: if (!itupdesc->attrs[i-1]->attbyval) break; I would still like to know why my code screws up though. The relnames are not byval, but I should still be able to print the address, right? Regards, Samuel -
Re: Print b-tree tuples
Tom Lane <tgl@sss.pgh.pa.us> — 2013-01-04T20:26:02Z
Samuel Vogel <s@muel-vogel.de> writes: > I'm trying to print out the tuples in the b-tree nodes for analysis, but > when iterate over more than the first entry of the tuples (scanKey++), I > strangely get the error below on query execution: > ERROR: relation "simpletest" does not exist > LINE 1: SELECT * FROM simpletest WHERE id = 50; Is this patch the only thing you changed? The only obvious explanation for the above error (other than "you fat-fingered the query") seems to be that you caused index searches in pg_class to fail, but I don't see how this patch could be affecting the result of _bt_binsrch. regards, tom lane
-
Re: Print b-tree tuples
Samuel Vogel <s@muel-vogel.de> — 2013-01-11T15:33:01Z
Am 04.01.13 21:26, schrieb Tom Lane: > Samuel Vogel <s@muel-vogel.de> writes: >> I'm trying to print out the tuples in the b-tree nodes for analysis, but >> when iterate over more than the first entry of the tuples (scanKey++), I >> strangely get the error below on query execution: >> ERROR: relation "simpletest" does not exist >> LINE 1: SELECT * FROM simpletest WHERE id = 50; > Is this patch the only thing you changed? The only obvious explanation > for the above error (other than "you fat-fingered the query") seems to > be that you caused index searches in pg_class to fail, but I don't see > how this patch could be affecting the result of _bt_binsrch. Yes, I've switched to a clean master and only applied this patch. If I put the the break, the query works, so it's fine as well. BTW: I just had a discussion if it would make sense, to recreate my test table with a different order, as a b-tree is always dependent on insertion order. But as the b-tree index is newly created in memory after each restart, two different insertion orders (same values) would give me the same b-tree at least after a restart, right? Regards, Samuel