Bug #1180
closedPreteceni timeout spojeni pri ziskavani dat s prilis nizkym ID
0%
Description
Pokud si stahovaci klient vyzada udalosti od prilis nizkeho ID, server je v nastavenem timetoutu spojeni nestihne vytahat z DB a poslat je klientovi, cimz dojde k vytimeoutovani spojeni.
Updated by Tomáš Plesník over 11 years ago
Resenim tohoto problemu by mohla byt kontrola atributu $event_last_id prichoziho na server a jeho prenastaveni ci chybova hlaska v pripade jeho prilis nizke hodnoty.
Updated by Pavel Kácha over 11 years ago
Ani když má klient nastaveno rozumný MAX_RCV_EVENTS_LIMIT nebo server MAX_EVENTS_LIMIT?
Updated by Tomáš Plesník over 11 years ago
Prave na tom delam. Na tento problem jsme prisli s klukama z VUT (Martin Zadnik). Premyslel jsem o tom a tento problem by mel resit MAX_RCV_EVENTS_LIMIT nebo nasledne pak server se svym MAX_EVENTS_LIMIT, tak jak rikas - evidente ale tomu tak neni. Prave jsem se na to ted dival na warden server a jejich klient si vzdy jednou za cas prijde presne pro 6000 udalosti.
Takze bud se z nejakeho duvodu ignoruji nastavene limity a ceka se tak na prilis velkou davku dat, nebo uz i techto 6000 udalosti znamena prilis velkou casovou zatez. Pokracuji dal v objasneni a nalezeni problemu.
Updated by Tomáš Plesník over 11 years ago
Tak od kluku z VUT se mi podarilo zjistit a overit, ze skutecne posilaji na warden.cesnet.cz a jejich MAX_RCV_EVENTS_LIMIT je skutecne nastaven na 6000 zprav. Tim padem muzeme situaci pri ktere by server nebral v potaz limity vyloucit. Ted je jeste otazka, zdali onech 6000 zprav neni opravdu uz prilis velke hledaci sousto pro aktualni stav databaze. Dival jsem se a nyni je v DB cca 45 mil. zprav.
Updated by Pavel Kácha over 11 years ago
V tom případě by bylo dobré najít, kde je úzké místo v kódu, protože databáze to není.
select * from events where type != 'test' and id > 0 and valid='t' and hostname not like '%cesnet.cz' order by id asc limit 6000;
vrací na warden.cesnet.cz data okamžitě.
Updated by Tomáš Plesník over 11 years ago
Pozadal jsem kluky aby mi poslali dalsi info o nastroji (a jeho nastaveni), ktery stahuje data z warden serveru a popis toho co s daty nasledne delaji. Jinak se pokousim najit ono uzke misto. Jakmile neco zjistim, dam vedet.
Pavel Kácha wrote:
V tom případě by bylo dobré najít, kde je úzké místo v kódu, protože databáze to není.
[...]
vrací na warden.cesnet.cz data okamžitě.
Updated by Tomáš Plesník over 11 years ago
Bohuzel se mi stale nedari replikovat danou nahlasenou chybu. Zkusil jsem na svuj server stahnout nekolik typu udalosti hned od ID 1 s limitem na maximalni pocet stazenych udalosti na 6000, ale ani jednou se mi neprojevil zminovany problem a server mi vzdy data bez problemu vystavil.
Updated by Tomáš Plesník over 11 years ago
- Status changed from New to Closed
Ticket uzaviram. Po diskuzi s klukama z VUT jsme zjistili, ze na svem serveru provozovali blize nespecifikovanou verzi klienta. Po preinstalovani na posledni verzi klienta 2.1 se jiz problem neukazal. Me osobne se tento problem nepodarilo zreprodukovat a ze serveru jsem byl vzdy schopen stahnout vsechny udalosti od ID 0.