List:Summer of Code« Previous MessageNext Message »
From:scut_tang Date:June 4 2009 10:54am
Subject:Re: About definition of I_S tables
View as plain text  
>Yes, but I think it would be easier to go just a bit deeper. That is to
>keep open_table() and open_table_from_share() as is, and implement the
>function to create a TABLE_SHARE without an frm file. When TABLE_SHARE
>exists, open_table_from_share() will work normally, no need to modify
>it.
>And the simplest way to create a custom TABLE_SHARE, I suppose, is a
>table discovery - ha_create_table_from_engine() -> ha_discover().

I browse those function source code today. They drive me crazy.
What do "Try to discover table from engine", "table exist in handler" and
"table in engine" mean?  Could you give some example?
I know MySQL server will reach ha_create_table_from_engine(), when a query as
"SELECT * FROM Whatever.none". Whatever.none is not exist. The function will return
a result means table did not exist. In what situation, it will return table created ok?
 
Could you say something more about ha_discover() in detail?
 
Regards.
Robin
 
Thread
About definition of I_S tablesscut_tang2 Jun
Re: About definition of I_S tablesscut_tang3 Jun