← Back to team overview

pbxt-discuss team mailing list archive

Re: goal 0 of embedde pbxt reached ||

 

Hello Paul,

Paul McCullagh wrote:
> Hi Martin,
> 
> (If possible it would be great if you could switch to text e-mails. I
> find quoting is strange and fonts are small in HTML e-mails.)
Wasn't aware of my google apps account sending html emails. Sorry for
that! Should be fixed now.

> 
> No, PBXT can do everything:
> 
> XTDDTable *xt_ri_create_table(XTThreadPtr self, bool convert,
> XTPathStrPtr tab_path, char *sql, XTDDTable *my_tab, struct XTDictionary
> *source_dic);
Right. Thank you once more, Paul!

[snip]
> 
>>
>> It is also pretty much the division of work between MySQL code and
>> PBXT today. However, the division is not so clear in the code.
>>
>>
>> - else, should table serialization / deserialization be pluggable or
>> even be purely programmatic? I am fine with this, too, as it is an
>> _embedded_ library and I'd guess most people will control pbx
>> programmatically anyways
>>
>> Although I spoke mainly about the textual interface above, I am really
>> flexible on this. I think both solutions have there advantages.
>>
>> Use whichever is best and easiest for you at the moment, which may be
>> simply writing your own stuff! :)
>> I guess hardcoding table definitions will be the most easy way for now.
> 
> OK, so the wrapper class would just know the format of the tables?
I'd guess so. I am just reading the code related to ha_pbxt::open to
understand how tables are actually opened.
My thinking is this: hook into the .frm-loading code the strategy design
pattern. By this different concrete table metadata de-/serializations
are possible, with the hard-coded flavour being the first. Makes sense?

Or even stick to drizzle's table.proto completely and leaving everything
elese out. The de-/serialization part is then just trivial. We could
even store the protobuf definitions in a special system row file... :-)
There really is not much code involved doing this, except the
automake/autoconf-part which I don't know much about.

What do you think should be done?


Martin



Follow ups

References