List:General Discussion« Previous MessageNext Message »
From:Wagner Bianchi Date:February 1 2010 4:45pm
Subject:Re: Is table_open_cache a private cache of a session?
View as plain text  
Sorry, *open_files_limit...

2010/2/1 Wagner Bianchi <wagnerbianchijr@stripped>

> Is FD_SETSIZE regards to an open_file_limit?
>
> WB
>
> 2010/2/1 Cui Shijun <rancpine@stripped>
>
>  Got your idea.
>>  Thank you very much. Now I know how table cache works :-)
>>
>>  For the bug, yes, it's related to the value of FD_SETSIZE, which is
>> limited to 1024 at my RedHat box.
>> Maybe I should update it to a suitable value.
>>
>> 2010/2/2 Johan De Meersman <vegivamp@stripped>:
>>  >
>> > On Mon, Feb 1, 2010 at 4:51 PM, Cui Shijun <rancpine@stripped>
> wrote:
>> >>
>> >> I'm also confused by the difference & relationship between "open
>> >> table" and "open file descriptor" by the table cache.
>> >
>> > "open table" is a MySQL concept. "Open file descriptor" is an OS
>> concept. A
>> > single table (MyISAM) consists of three files: the .frm (description),
>> the
>> > .MYD (data) and the .MYI (indices). Thus, a single open table can
>> correspond
>> > to multiple open files. Additionally, temp tables, sortfiles and whatnot
>> > also consume file descriptors.
>> >
>> >>
>> >>  As far as I understand, when a thread ask the global cache for a
>> table:
>> >> * if the table is opened before and currently not used by other
>> >> thread, the request thread will get this table
>> >
>> > "and *there is a cache entry that* is currently not used*" - multiple
>> > entries can exist for the same table.
>> >
>> >>
>> >> * if no table in table cache is available( currently used by other
>> >> thread, or not opened before ), the request thread will open this
>> >> table
>> >
>> > The thread will get a new cache object that opens that table, yes.
>> >
>> >>
>> >>  Once open a table, mysql *might?( I'm not sure )* open a file
>> >> descriptor corresponding to the data file of the table. In that case,
>> >> when the number of  table opened simultaneously goes too big, mysql
>> >> will use too much file descriptors and then hit the bug 48929.
>> >>
>> >>  Your experience( "I've had one occurrence where it grew to 26.000
>> >> open tables" ) seems to show there must be something wrong with my
>> >> understanding, Hmm...  :-(
>> >
>> > I just skimmed over it, but the bug seem related specifically to InnoDB,
>> and
>> > to a highly specific file descriptor number being equal to some form of
>> > hardcoded limit - maybe different OSes or linux distro's have different
>> > values for said limit, or maybe it only occurs under specific
>> conditions.
>> >
>> >
>> >
>> > --
>> > Bier met grenadyn
>> > Is als mosterd by den wyn
>> > Sy die't drinkt, is eene kwezel
>> > Hy die't drinkt, is ras een ezel
>> >
>>
>>  --
>> MySQL General Mailing List
>> For list archives: http://lists.mysql.com/mysql
>> To unsubscribe:
>> http://lists.mysql.com/mysql?unsub=1
>>
>


-- 
Wagner Bianchi - Web System Developer and Database Administrator
Phone: (31) 8654-9510 / 3272-0226
E-mail: wagnerbianchijr@stripped
Lattes: http://lattes.cnpq.br/2041067758113940
Twitter: http://twitter.com/wagnerbianchi
Skype: infodbacet

Thread
Is table_open_cache a private cache of a session?Cui Shijun1 Feb
  • Re: Is table_open_cache a private cache of a session?Johan De Meersman1 Feb
    • Re: Is table_open_cache a private cache of a session?Cui Shijun1 Feb
      • Re: Is table_open_cache a private cache of a session?Johan De Meersman1 Feb
        • Re: Is table_open_cache a private cache of a session?Cui Shijun1 Feb
          • Re: Is table_open_cache a private cache of a session?Wagner Bianchi1 Feb
            • Re: Is table_open_cache a private cache of a session?Wagner Bianchi1 Feb
              • Re: Is table_open_cache a private cache of a session?Cui Shijun1 Feb