Lassú cache_get query

wildface86 képe

Hejhó!

Van nékem egy oldal, amely feltünően eszi a memóriát (256 MB a memory limit 1024 ből) és van úgy hogy felzabálja az egészet. Devel modullal kiszűrtem a lassú lekérdezéseket, ami általában view-os volt, ezekkel már nincs is gond. Ám van egy szemtelen, amelyik nem akarja ledobni a ronda piros színt magáról, ez pedig a cache_get, ami mellett ez a lekérdezés van: SELECT data, created, headers, expire, serialized FROM cache WHERE cid = 'locale:hu'. Általában 20ms környéke az idő ami alatt lefut, de leteszteltem MySql query browserben és ott azért látványos lassusággal fut le. Ezért arra gyanakodom egy ez mohóskodik a memóriával.
Ja igen a kérdés. Ezt a jelenséget esetleg nem e rossz magyarosítás eredménye, mármint, hogy én rontottam el valamit mikor frissítettem d19re és hozzáadtam a magyar nyelvi fájlokat?

Drupal verzió: 
wildface86 képe

öt oldal van összesen a szerveren (VPS) és ez nem Up volt. :-)

0
0
pp képe

ha már VPS akkor állj át valami normálisabb gyorstárazásra :) De a hiba az is lehet, hogy az összes modul összes fordítását berántottad ami sok modulnál sok adat lehet.

pp

0
0
wildface86 képe

mert a magyaron kivűl a többi nyelv is megtalálható a translation mappákban.

0
0
pp képe

ööö én arra gondoltam, hogy a be nem kapcsolt modulok fordítása is benne van teljesen feleslegesen...

További kérdések:
Ugye a cache táblának van egy elsődleges kulcsa és az a cid? (primary key)
Mekkora ennek a lekérdezésnek az eredménye?

0
0
wildface86 képe

a Select cid from cache -re, 5 rows fetched in 0,0385s (0,0564s). Mondjuk most a develben a SELECT data, created, headers, expire, serialized FROM cache WHERE cid = 'locale:hu' 0,32ms, query browserben 1 rows fetched in 39,4331s (0,1504s).

0
0
wildface86 képe

a local_source táblába és ott valóban ott vannak be nem kapcsolt, de még, olyan fordítások, amelyek már eltávolított modulokhoz tartoznak, a tábla mérete 18,7Mb. Ezeket a fordításokat hogyan tudok kidobálni?

0
0
nevergone képe

Érdemes lehet az l10n_client modullal újraimportálni a fordításokat az admin/build/translate/import/package útvonalon keresztül úgy, hogy bekapcsolva hagyod a meglévő fordításokat törlését.
Azt ne felejtsd el, ha van olyan fordításod, ami nem fájlban található, hanem az oldalon közvetlenül fordítottál le egy szöveget, akkor az így elveszik!

0
0
wildface86 képe

az újraimportálást, de nem dobott a memórihasználaton, így már nincs gond a cache_get lekéréssel, már nem lassú, most a local által generált
SELECT s.source, t.translation, t.language FROM locales_source s LEFT JOIN locales_target t ON s.lid = t.lid AND t.language = 'hu' WHERE s.textgroup = 'default' AND s.version = '6.19' AND LENGTH(s.source) < 75 lekérés fut le 17.01ms alatt és nem tetszik a develnek de szerintem ez nem akkora nagy, hogy ennyire zabálná a memóriát, tehát marad a nyomozás.

0
0