> thats very smart to post in russian to an ENGLISH OONLY list!

Sorri, i not speak english
----------------------------
Прошу извинить меня, но я не говорю по английски.


I have described as could, mistake cost(stand)s that.
hereon appeared drain to memories, I happened to to overload server
-------------
Ошибка стоила того, чтобы сообщить о ней - после выполнения скрипта на
серевере возникла утечка памяти, что вынудило меня выполнить его
перезагрузку.


before reboot:
==============

top - 18:24:15 up 1 day,  7:48,  2 users,  load average: 0.18, 0.50, 0.41
Tasks: 197 total,   1 running, 195 sleeping,   0 stopped,   1 zombie
Cpu0  :  0.0% us,  0.0% sy,  0.0% ni, 100.0% id,  0.0% wa,  0.0% hi,  0.0% si
Cpu1  :  0.0% us,  0.0% sy,  0.0% ni, 100.0% id,  0.0% wa,  0.0% hi,  0.0% si
Cpu2  :  0.0% us,  0.0% sy,  0.0% ni, 100.0% id,  0.0% wa,  0.0% hi,  0.0% si
Cpu3  :  0.0% us,  0.0% sy,  0.0% ni, 100.0% id,  0.0% wa,  0.0% hi,  0.0% si
Mem:   3631768k total,  2994160k used,   637608k free,    54348k buffers
                        ^^^^^^^^^^^
                        mysql NOT RUN, more process also shutdown

Swap:   979924k total,        0k used,   979924k free,   611848k cached


after reboot:
=============

top - 18:38:38 up 3 min,  1 user,  load average: 0.01, 0.03, 0.00
Tasks:  77 total,   2 running,  75 sleeping,   0 stopped,   0 zombie
Cpu0  :  0.0% us,  0.0% sy,  0.0% ni, 100.0% id,  0.0% wa,  0.0% hi,  0.0% si
Cpu1  :  0.0% us,  0.0% sy,  0.0% ni, 100.0% id,  0.0% wa,  0.0% hi,  0.0% si
Cpu2  :  0.0% us,  0.0% sy,  0.0% ni, 100.0% id,  0.0% wa,  0.0% hi,  0.0% si
Cpu3  :  0.0% us,  0.0% sy,  0.0% ni, 100.0% id,  0.0% wa,  0.0% hi,  0.0% si
Mem:   3631768k total,    56132k used,  3575636k free,     2204k buffers
                          ^^^^^^^
                          MySQL until it is loaded

                          
top - 18:44:08 up 9 min,  1 user,  load average: 1.29, 0.35, 0.12
Tasks: 113 total,   1 running, 111 sleeping,   0 stopped,   1 zombie
Cpu0  :  3.0% us,  4.0% sy,  0.0% ni,  0.0% id, 92.4% wa,  0.0% hi,  0.7% si
Cpu1  :  0.0% us,  0.3% sy,  0.0% ni, 94.0% id,  5.6% wa,  0.0% hi,  0.0% si
Cpu2  :  0.3% us,  0.0% sy,  0.0% ni, 99.7% id,  0.0% wa,  0.0% hi,  0.0% si
Cpu3  :  0.0% us,  0.3% sy,  0.0% ni, 84.4% id, 15.3% wa,  0.0% hi,  0.0% si
Mem:   3631768k total,   358352k used,  3273416k free,    10776k buffers
                          ^^^^^^^
                          MySQL is loaded


top - 18:52:01 up 16 min,  2 users,  load average: 6.07, 3.74, 1.70
Tasks: 208 total,   2 running, 206 sleeping,   0 stopped,   0 zombie
Cpu0  :  2.0% us,  1.7% sy,  0.0% ni, 88.1% id,  8.3% wa,  0.0% hi,  0.0% si
Cpu1  :  0.0% us,  0.3% sy,  0.0% ni, 93.7% id,  6.0% wa,  0.0% hi,  0.0% si
Cpu2  :  0.0% us,  0.0% sy,  0.0% ni, 100.0% id,  0.0% wa,  0.0% hi,  0.0% si
Cpu3  :  0.3% us,  0.3% sy,  0.0% ni, 97.0% id,  2.3% wa,  0.0% hi,  0.0% si
Mem:   3631768k total,   935544k used,  2696224k free,    46516k buffers
                          ^^^^^^^
                          MySQL is loaded and works with full load












> t

> pwn_mail_ru irta:
>> Hi!
>> 
>> uname -a
>> Linux mysql1 2.6.16TD322 #8 SMP Thu Jul 27 18:39:45 MSD 2006 i686 unknown 
>> unknown GNU/Linux
>> 
>> mysqld -V
>> mysqld  Ver 4.1.22-standard-log for pc-linux-gnu on i686 (MySQL Community 
>> Edition - Standard (GPL))
>> 
>> 
>> Выполнялся такой запрос из под PHP (в нем была допущена ошибка)
>> 
>>  $Query  = "SELECT SQL_SMALL_RESULT DEV.ID,I1.A as A1,I1.B as B1,I1.C as 
>> C1,I1.D as D1,I2.A as A2,I2.B as B2,I2.C as C2,I2.D as D2,DEV.ID_ROLE,".
>>            "I3.A as A3,I3.B as B3,I3.C as C3,I3.D as D3,I4.A as A4,I4.B as 
>> B4,I4.C as C4,I4.D as D4, DEV.SNMPCOMM_C, DEV.SNMPCOMM_M,DEV.LGSNMP,".
>>            
>> "DEV.LGSNMP2,DEV.SNMPPORT1,DEV.SNMPPORT2,DEV.LGSSH,MD.NAME_MODEL,DEV.LGDEAD,DEV.LGAUTOCH,DEV.TACACS_KEY_C,DEV.TYPEDEV
>>  FROM $TBDEV".
>>            " AS DEV FORCE INDEX (ID_IOF)".
>>            " LEFT JOIN $TBDEVIP  AS I1 ON I1.ID=DEV.ID_IPADDR".
>>            " LEFT JOIN $TBDEVIP  AS I2 ON I2.ID=DEV.ID_REALIP".
>>            " LEFT JOIN $TBDEVIP  AS I3 ON I1.ID=DEV.ID_IPADDR".
>>            " LEFT JOIN $TBDEVIP  AS I4 ON I2.ID=DEV.ID_REALIP".
>>            " LEFT JOIN $TBDEVMOD AS MD ON MD.ID=DEV.ID_MODEL".
>>            " WHERE DEV.ID_IOF=$SubDiv order by 
>> DEV.LGDEAD,DEV.TYPEDEV,I1.A,I1.B,I1.C,I1.D";
>> 
>> 
>> Корректный запрос после того как ошибка была исправлена
>> 
>>  $Query  = "SELECT SQL_SMALL_RESULT DEV.ID,I1.A as A1,I1.B as B1,I1.C as 
>> C1,I1.D as D1,I2.A as A2,I2.B as B2,I2.C as C2,I2.D as D2,DEV.ID_ROLE,".
>>            "I3.A as A3,I3.B as B3,I3.C as C3,I3.D as D3,I4.A as A4,I4.B as 
>> B4,I4.C as C4,I4.D as D4, DEV.SNMPCOMM_C, DEV.SNMPCOMM_M,DEV.LGSNMP,".
>>            
>> "DEV.LGSNMP2,DEV.SNMPPORT1,DEV.SNMPPORT2,DEV.LGSSH,MD.NAME_MODEL,DEV.LGDEAD,DEV.LGAUTOCH,DEV.TACACS_KEY_C,DEV.TYPEDEV
>>  FROM $TBDEV".
>>            " AS DEV FORCE INDEX (ID_IOF)".
>>            " LEFT JOIN $TBDEVIP  AS I1 ON I1.ID=DEV.ID_IPADDR".
>>            " LEFT JOIN $TBDEVIP  AS I2 ON I2.ID=DEV.ID_REALIP".
>>            " LEFT JOIN $TBDEVIP  AS I3 ON I3.ID=DEV.ID_IPTUN1".
>>            " LEFT JOIN $TBDEVIP  AS I4 ON I4.ID=DEV.ID_IPTUN2".
>>            " LEFT JOIN $TBDEVMOD AS MD ON MD.ID=DEV.ID_MODEL".
>>            " WHERE DEV.ID_IOF=$SubDiv order by 
>> DEV.LGDEAD,DEV.TYPEDEV,I1.A,I1.B,I1.C,I1.D";
>> 
>> 
>> Если сравнить эти два запроса, то легко можно увидеть, что это обычная
>> ошибка блочного копирования. MySQL должен был бы по идее выдать сообщение о
>> некорректном связывании таблиц, но вместо этого он выдал это:
>> 
>> MySQLi Error: (1030) Получена ошибка 28 от обработчика таблиц
>> 
>> тоесть системная ошибка нет места на диске. Разбор полетов показал, что при
>> выполнении такого запроса MySQL съедает всю отведенную ему настройками
>> память (смотрелось утилитой top), и очень сильно нагружает процессор.
>> 
>> Пояснение к запросу - связывалось три таблицы, в одной устройства, в
>> другой модели устройств, в третьей IP адреса. Поскольку к устройству
>> может быть привязано от одного до 4 IP адресов, таблица IP адресов
>> связывалась 4 раза под разными псевдонимами (и в этой части была
>> допущена ошибка)
>> 
>> структура таблиц:
>> 
>> $TBDEV
>> 
>> CREATE TABLE `all_dev` (
>>   `ID` int(10) unsigned NOT NULL auto_increment
>>   `ID_IPADDR` int(11) unsigned NOT NULL default '0',
>>   `ID_REALIP` int(11) unsigned NOT NULL default '0',
>>   `ID_IPTUN1` int(11) unsigned NOT NULL default '0',
>>   `ID_IPTUN2` int(11) unsigned NOT NULL default '0',
>> ............
>>   
>>   PRIMARY KEY  (`ID`),
>> ...........
>> ) ENGINE=MyISAM AUTO_INCREMENT=2374;
>> 
>> 
>> $TBDEVIP
>> 
>> CREATE TABLE `dev_ipaddr` (
>>   `ID` int(10) unsigned NOT NULL auto_increment,
>>   `A` tinyint(3) unsigned NOT NULL default '0',
>>   `B` tinyint(3) unsigned NOT NULL default '0',
>>   `C` tinyint(3) unsigned NOT NULL default '0',
>>   `D` tinyint(3) unsigned NOT NULL default '0',
>> ....
>>   PRIMARY KEY  (`ID`),
>>   KEY `IP` (`A`,`B`,`C`,`D`)
>> ) ENGINE=MyISAM AUTO_INCREMENT=4660;
>> 
>> 
>> 
>> $TBDEVMOD
>> 
>> CREATE TABLE `dev_model` (
>>   `ID` int(10) unsigned NOT NULL auto_increment,
>>    `NAME_MODEL` varchar(40) NOT NULL default '',
>> .....
>>   PRIMARY KEY  (`ID`),
>> .....
>> ) ENGINE=MyISAM AUTO_INCREMENT=22;
>> 
>> 
>> 



-- 
С уважением,
 pwn_mail_ru                          mailto:[EMAIL PROTECTED]
















--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to