fmfi-svt / votr

Votr: AIS frontend for Comenius University
https://votr.uniba.sk
Apache License 2.0
13 stars 11 forks source link

zapis_plan_vyhladaj AISBehaviorError: AIS did not return all table rows #121

Open TomiBelan opened 6 years ago

TomiBelan commented 6 years ago

Od februára 2015 až dodnes sa v logoch celkom populárne vyskytuje táto chyba:

RPC zapis_plan_vyhladaj failed with AISBehaviorError
Traceback (most recent call last):
  File "/var/www/votr-prod/votrfront/rpc.py", line 27, in rpc_handle_call
    result = encode_result(method(*args))
  File "/var/www/votr-prod/fladgejt/webui/zapis.py", line 135, in zapis_plan_vyhladaj
    for row in app.d.predmetyTable.all_rows())
  File "/var/www/votr-prod/aisikl/components/table.py", line 540, in all_rows
    raise AISBehaviorError("AIS did not return all table rows")
aisikl.exceptions.AISBehaviorError: AIS did not return all table rows

AIS vo väčšine tabuliek ukáže iba 200 riadkov. V AISe to normálne nevadí, lebo by-default ukazuje iba buď A alebo B alebo C bloky. Ale Votr sa pokúsi stiahnuť všetky predmety naraz, aby nemusel robiť veľa requestov.

Kto sú títo ľudia, čo majú v študijnom pláne vyše 200 predmetov?

$ zgrep "get_zapisne_listy finished" $( vlog list -f %open 'AIS did not return all table rows' ) > /tmp/a
$ sed -nr 's/.*"sp_popis": "([^"]*)".*/\1/p' /tmp/a | sort | uniq -c | sort | tail
     21 učiteľstvo telesnej výchovy a anglického jazyka a literatúry
     22 geografia v štátnej správe a samospráve
     28 trénerstvo
     36 trénerstvo a učiteľstvo telesnej výchovy
     52 aplikovaná informatika
     68 učiteľstvo predmetov biológia a geografia
     90 geografia a demografia v štátnej správe a samospráve
    121 systematická biológia
    135 biológia
    413 manažment

Hm.

Pekné by bolo, keby ozajstný počet predmetov bol iba tesne nad 200. V tom prípade by sa to dalo opraviť tak, že ak nevýjde normálny postup, postupne získame A, B a C.

TomiBelan commented 6 years ago

Beda! "Trénerstvo a učiteľstvo telesnej výchovy (TUT1)" má podľa aplikácie "VSST178 Študijné plány, informačné listy, ... študijných programov" 254 povinných predmetov, 26 povinne voliteľných predmetov a 79 voliteľných predmetov.

"Manažment (Sm)" má 33 povinných predmetov, 45 povinne voliteľných predmetov a 162 voliteľných predmetov. Takže v ňom by to pomohlo. Ale lepšie by bolo nájsť univerzálne riešenie.