PDA

Просмотр полной версии : [Вопрос] MySQL | R41 vs R39-4



seriu
12.10.2016, 16:55
У меня у одного такие результаты с загрузкой в версии R41 ?

Загрузка с R41:
http://i.imgur.com/kXChc6B.png

Загрузка с R39-4:
http://i.imgur.com/ZGtiEiT.png

в R41 использую: mysql_tquery / mysql_pquery ( тоже самое )
в R39-4 использую: mysql_function_query

Пример загрузки:

// R41
mysql_tquery(base,"SELECT * FROM `"T_HOUSE"` ORDER BY `"T_HOUSE"`.`hID` ASC ", "LoadHouse","");

fpub:LoadHouse()
{
new rows;
cache_get_row_count(rows);
new time = GetTickCount();
if(!rows) return 1;
new str_enters[60],str_pos_car[60],house_door;
for(new idx; idx < rows; idx++)
{
cache_get_value_name(idx, "hName", HI[idx][hName],24);
cache_get_value_name(idx, "hEnter",str_enters,sizeof(str_enters));
sscanf(str_enters,"p<,>ffff",HI[idx][hEnter][0],HI[idx][hEnter][1],HI[idx][hEnter][2],
HI[idx][hEnter][3]);
str_enters[0] = EOS;
cache_get_value_name(idx, "hCarCoord",str_pos_car,sizeof(str_pos_car));
sscanf(str_pos_car,"p<,>ffff",HI[idx][hCarCoord][0],HI[idx][hCarCoord][1],HI[idx][hCarCoord][2],
HI[idx][hCarCoord][3]);
str_pos_car[0] = EOS;
cache_get_value_name_int(idx, "hSelect",HI[idx][hSelect]);
cache_get_value_name_int(idx, "hClass",HI[idx][hClass]);
cache_get_value_name_int(idx, "hID",HI[idx][hID]);
cache_get_value_name_int(idx, "hCena",HI[idx][hCena]);
cache_get_value_name_int(idx,"hDoors",house_door);
House_Doors{idx} = house_door;
str_pos_car[0] = EOS;
cache_get_value_name_int(idx, "hFood",HI[idx][hFood]);
cache_get_value_name_int(idx,"hValue",HI[idx][hValue]);
AddHomeInServer(idx);
}
printf ( "[ Загрузка мода ... ] Домов загружено: %d, за %d (ms)", TOTALHOUSE,GetTickCount()-time ) ;
return 1;
}

// R39-4

mysql_function_query(base,"SELECT * FROM `"T_HOUSE"` ORDER BY `"T_HOUSE"`.`hID` ASC ",true, "LoadHouse","");

fpub:LoadHouse()
{
new rows,fields;
cache_get_data(rows,fields);
new time = GetTickCount();
if(!rows) return 1;
new str_enters[60],str_pos_car[60];
for(new idx; idx < rows; idx++)
{
cache_get_field_content(idx, "hName", HI[idx][hName], base,24);
cache_get_field_content(idx, "hEnter",str_enters, base,sizeof(str_enters));
sscanf(str_enters,"p<,>ffff",HI[idx][hEnter][0],HI[idx][hEnter][1],HI[idx][hEnter][2],
HI[idx][hEnter][3]);
str_enters[0] = EOS;
cache_get_field_content(idx, "hCarCoord",str_pos_car, base,sizeof(str_pos_car));
sscanf(str_pos_car,"p<,>ffff",HI[idx][hCarCoord][0],HI[idx][hCarCoord][1],HI[idx][hCarCoord][2],
HI[idx][hCarCoord][3]);
str_pos_car[0] = EOS;
HI[idx][hSelect] = cache_get_field_content_int(idx, "hSelect");
HI[idx][hClass] = cache_get_field_content_int(idx, "hClass");
HI[idx][hID] = cache_get_field_content_int(idx, "hID");
HI[idx][hCena] = cache_get_field_content_int(idx, "hCena");
House_Doors{idx} = cache_get_field_content_int(idx,"hDoors");
str_pos_car[0] = EOS;
HI[idx][hFood] = cache_get_field_content_int(idx, "hFood");
HI[idx][hValue] = cache_get_field_content_int(idx,"hValue");
AddHomeInServer(idx);
}
printf ( "[ Загрузка мода ... ] Домов загружено: %d, за %d (ms)", TOTALHOUSE,GetTickCount()-time ) ;
return 1;
}
Что я сделал не так при переводе, из-за чего стало очень много времени занимать загрузка?

qwezert
12.10.2016, 17:10
Читай внимательнее что было изменено в релизе р41 -

seriu
12.10.2016, 17:22
Проблема была в
mysql_log(ALL);
хотя с другой стороны тоже самое было и в R39-4;

поставил
mysql_log(ERROR);
вышло:
http://i.imgur.com/mb0Jbtb.png
Уже не так много, но все же в 2 раза больше(
Если убрать mysql_log, то результаты не улучшатся ;c

qwezert
12.10.2016, 17:26
Ну разница в 20мс незаметна человеческому глазу абсолютно, но странно что медленнее работает. У меня р41 работал быстрее.

vovandolg
12.10.2016, 20:00
Ах как хорошо что кто то просветил результаты все сюда:sarcastic:
А то сам всё не мог понять что лучше, вроде бы в новой версии новые побрякушки(хоть и не особо важные), а толку то..

Son of the Moon
12.10.2016, 20:09
Так что лучше использовать старую версию? Какой тогда лучше использовать? можно ссылку.

qwezert
17.10.2016, 11:38
Так что лучше использовать старую версию? Какой тогда лучше использовать? можно ссылку.

Смотри по удобству. Мне удобнее р41 и у меня работает почему то быстрее)