Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Query nakon izvršavanja ostaje zaglavljen u "freeing items" statusu

[es] :: MySQL :: Query nakon izvršavanja ostaje zaglavljen u "freeing items" statusu

[ Pregleda: 1694 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Shinhan
PHP programmer
Subotica

Član broj: 12327
Poruke: 372
*.static.isp.telekom.rs.

Jabber: shinhan@elitesecurity.org
ICQ: 400847988


+4 Profil

icon Query nakon izvršavanja ostaje zaglavljen u "freeing items" statusu29.11.2011. u 15:03 - pre 150 meseci
Ko što kaže naslov, nakon što se jedan query izvrši sajt mi se zaglavi (u lokalu) i moram iz proces liste da ubijam taj query koji se nalazi u "freeing items" statusu (query se izvršio, podaci su izmenjeni, ali pošto je query u "freeing items" ne završava se generisanje ostatka stranice, pa sve samo stoji zaglavljeno). Da bude još čudnije, ako query ručno pokrenem, u MySQL workbench on se izvrši bez problema. Jedino ako ga aplikacija pokreće onda je problem. Koristim CodeIgniter, bez ActiveRecords. Probao sam u aplikaciji da koristim i direktno mysql_query funkciju, ne vredi.

Nakon googlanja naišao sam na Bug #43758, međutim to piše da je ispravljeno u 5.1.36 a u lokalu imamo 5.1.37 (uskoro planiramo prelaženje na 5.5 ali još nismo). Takođe, tamo pišu da se može probati isključivanje query cache-a što sam probao i ne vredi.


Query:

Code:

UPDATE `ns_poll_option` SET `option_name` = 'prva' WHERE id = '1';


Tabela:
Code:

delimiter $$

CREATE TABLE `ns_poll_option` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `id_poll` int(10) unsigned NOT NULL,
  `option_name` varchar(45) COLLATE utf8_slovenian_ci NOT NULL,
  `ordering` int(10) unsigned NOT NULL,
  PRIMARY KEY (`id`),
  KEY `id_poll` (`id_poll`,`ordering`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_slovenian_ci$$


Znači UPDATE jednog varchar polja po primarnom ključu. Ne može biti jednostavnije. Tabela ima 3 rekorda.

"Common sense is not so common." - Voltaire
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
95.180.61.*

Sajt: mysql.rs


+2377 Profil

icon Re: Query nakon izvršavanja ostaje zaglavljen u "freeing items" statusu29.11.2011. u 19:54 - pre 150 meseci
ako skroz ugasis query cache - da li se ista stvar desava?
 
Odgovor na temu

Shinhan
PHP programmer
Subotica

Član broj: 12327
Poruke: 372
*.static.isp.telekom.rs.

Jabber: shinhan@elitesecurity.org
ICQ: 400847988


+4 Profil

icon Re: Query nakon izvršavanja ostaje zaglavljen u "freeing items" statusu30.11.2011. u 08:42 - pre 150 meseci
Probali smo da u my.ini da stavimo

query_cache_size = 0

ali nije vredelo. Koliko sam razumeo na to se misli kad se kaže "isključiti query cache"?

Takođe, jutros je upgradovan server na PHP 5.3 i MySQL 5.1.41 (i naravno još uvek je isti problem).
"Common sense is not so common." - Voltaire
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
95.180.61.*

Sajt: mysql.rs


+2377 Profil

icon Re: Query nakon izvršavanja ostaje zaglavljen u "freeing items" statusu30.11.2011. u 09:08 - pre 150 meseci
SHOW VARIABLES LIKE 'have_query_cache';

to treba da ti kaze "no"

ako nije dovoljno onda: query_cache_type = OFF;

to bi trebalo da ga ugasi, mozes da uradis SET GLOBAL query_cache_type = OFF; i trebalo bi da bez restarta ugasi query cache

ako i dalje imas problem, probaj da napravis reproducible test case da ja probam ovde kod mene na raznim verzijama kako se ponasa, moguce da je neki bug
 
Odgovor na temu

Shinhan
PHP programmer
Subotica

Član broj: 12327
Poruke: 372
*.static.isp.telekom.rs.

Jabber: shinhan@elitesecurity.org
ICQ: 400847988


+4 Profil

icon Re: Query nakon izvršavanja ostaje zaglavljen u "freeing items" statusu30.11.2011. u 09:29 - pre 150 meseci
Kad sam probao da stavim query_cache_type = OFF; u my.ini onda MySQL nije hteo da se startuje. Ako probam SET GLOBAL query_cache_type = OFF; da pokrenem kao query, onda mi to ignoriše i SHOW VARIABLES mi prikazuje da je query_cache_type ON.

Što se tiče test case, ne znam kako da to uradim. Ko što rekoh kad taj identičan query ručno pokrenem u Workbench onda to radi bez problema :/
"Common sense is not so common." - Voltaire
 
Odgovor na temu

after
Ajvanho, ING

Član broj: 276962
Poruke: 97
*.dynamic.sbb.rs.



+6 Profil

icon Re: Query nakon izvršavanja ostaje zaglavljen u "freeing items" statusu01.12.2011. u 17:36 - pre 150 meseci
Neznam da li moze da ima veze, ali neke aplikacije koje se konektuju na Mysql imaju default variable koje se primenjuju za tu sesiju.

Recimo SQL Yog ima negde u svom config fajlu zakucano wait timeout na 8h i to se primenjuje u svakoj sesiji yog-a, bez obzira kako je podesen wait timeout na serveru. Verovatno prvo sto izvrsi Yog kada se zakaci na server je neki set session wait_timeout=8h ili nesto slicno.

Inace probaj da iskljucis query cache u my.cnf sa

init-connect='set session query_cache_type = OFF' #mozda i sa global umesto session, mada bi trebalo da je isti rezultat

Pozdrav.
 
Odgovor na temu

[es] :: MySQL :: Query nakon izvršavanja ostaje zaglavljen u "freeing items" statusu

[ Pregleda: 1694 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.