pbxt-discuss team mailing list archive
-
pbxt-discuss team
-
Mailing list archive
-
Message #00072
Re: free_table_share() != drizzle
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 may work is to use a TableShare object instead of a Table object.
Question is, can I do something like:
share = new TableShare();
share->init(db_name, 0, name, path);
error = open_table_def(&thd, *ident, share);
and then later simply:
delete share;
to remove.
On May 14, 2010, at 9:03 PM, Brian Aker wrote:
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 need Table, you just need TableShare).
You could just do this:
TableShare my_share(<share_key>,....);
That way you have your own object and you never pass through any of
the locking system/dealing with any of the object counting.
Cheers,
-Brian
--
Paul McCullagh
PrimeBase Technologies
www.primebase.org
www.blobstreaming.org
pbxt.blogspot.com
Follow ups
References