Re: [Pbxt-discuss] free_table_share() != drizzle

2010-05-20 Thread Brian Aker
Hi! I'd unpack the row by using the Field object and not go with the offset (longterm we won't support touching the record[] directly since it creates a big problem for abstraction). Via val_ methods you can request the individual members. The offset was originally added so that two sets of

Re: [Pbxt-discuss] free_table_share() != drizzle

2010-05-17 Thread Paul McCullagh
Hi Brian, Are you suggesting I create a TableShare on the stack whenever I need it? I don't think this would work because AFAIK I have to call open_table_def(), which loads the table definition. So calling this each time I want to copy data in and out of the row would be too slow. What

Re: [Pbxt-discuss] free_table_share() != drizzle

2010-05-14 Thread Brian Aker
Hi! What are you using Table for? The table definition should have everything you need in it for defining the table. Table in drizzle is just a collection of caches used by a Cursor. TableShare, beyond its uses in locking, is just an interface to the information found in the table definition.

Re: [Pbxt-discuss] free_table_share() != drizzle

2010-05-14 Thread Brian Aker
Hi! On May 14, 2010, at 9:37 AM, Paul McCullagh wrote: Here the engine will follow the table pointer to the field array, where it uses the offsets of the data in a record, in order to copy data in and out of the record. So what you need is the Field** that is in share (aka, you don't even

Re: [Pbxt-discuss] free_table_share() != drizzle

2010-05-12 Thread Stewart Smith
On Mon, 10 May 2010 10:20:15 +0200, Paul McCullagh paul.mccull...@primebase.org wrote: PBXT requires a reference (or a copy of) the internal MySQL/Drizzle data dictionary (i.e. the structure that is created when a .frm file is loaded). This is required for 2 purposes: 1. To determine