Czekajac na zrodla od Adamma (i na urlop tez), sciagnalem wersje 2.1.9 Ikonboardu i troche po niej powedrowalem. Wyszlo mi, ze:
- wszystkie operacje tworzenia nowego pliku (w szczegollnosci zakladania nowego watku, dopisywania nowej wiadomosci) sa niepoprawnie zrobione. nie jest zapewniona synchronizacja procesow i mozliwe jest, ze 2 osoby wysylajac naraz posty, tworzac nowe watki itp. moga sie wzajemnie nadpisac, tzn. pierwsza wysle, druga wysle, i pierwsza swojego nie zobaczy, bo mu to druga (nieswiadomie) skasowala
- niestety to dotyczy wszystkich operacji polegajacych na tworzeniu nowych plikow
- wydaje mi sie tez, ze mozliwa jest sytuacja, kiedy ktos
napisze nowa wiadomosc, ale podczas wysylania cos mu sie z laczem popsuje. wiec po chwili sprobuje odswiezyc. wtedy potencjalnie wiadomosc dopisze sie 2 razy i - to juz w ogole kaszana - wyslane zostana 2 powiadomienia mailowe
a teraz konkretnie:
- moim zdaniem przy kazdym wywolaniu w skryptach typu:
open(FILE, ">filename")
flock(FILE, 2) (pomijajac pytanie, czemu 2, a nie LOCK_EX)
trzeba wprowadzic synchronizacje (np. plikami semaforow) - inaczej procesy moga sobie wzajemnie nadpisac nowo tworzone pliki
tych wywolan jest sporo - przegrepowalem to i az dziwne, ze tworcy o tych 'wyscigach' nie pomysleli...
- do poprawienia 'podwojnosci' postow i powiadomien o nich przydaloby sie dopisac cos, co sprawdza, czy nowy post nie jest aby przypadkiem idealna kopia postu ostatniego sprzed np < niz 5 minut
- blokowanie semaforami powinna objac szersze fragmenty - innymi slowy trzeba utworzyc (przynajmniej kilka) sekcji krytycznych i zapewnic atomowosc przeprowadzanych wewnatrz operacji
to sa oczywiscie uwagi do kogos, kto nad tym siadzie, czyli albo adamma , albo - mnie ?
to o co mi chodzi jest mniej wiecej opisane tutaj:
http://www.samag.com/documents/s=4075/s ... m0203i.htm
jeszcze inne pytanie:
czy skrypty ikonboardu na serwerze dzialaja jako mod_perl? czy tez jest to czyste cgi i zarazem gwarancja, ze kazdy skrypt to swiezy , czysciutki i pozbawiony smieci z potencjalnego poprzedniego uruchomienia nowy proces utworzony przez interpreter za kazdym pobraniem strony?
nie wiem jeszcze, czy wysypywanie sie pocztu modeli moze miec z tym zwiazek... wlasciwie to by bylo dziwne, bo przeciez obrazki sa wysylane osobno. ale moze jak jest ich duzo, procesy zostaja ubijane, wczesniej czegos nie pozwalnialy albo nie zamknely i ... pliki znikaja.
marek
(Edited by kingeri at 4:44 pm on Aug. 8, 2003)
Poprawianie błędów
- wojtek
- Zaprawiony W Bojach
- Posty: 10535
- Rejestracja: 19 cze 2001, 04:38
- Życiówka na 10k: 30:59
- Życiówka w maratonie: 2:18
- Lokalizacja: lokalna
- Kontakt:
Podobnie zniknely moje cwiczenia kolanowe
Articles in English:
http://www.examiner.com/atlanta-sports-gear-in-atlanta/wojtek-wysocki
Looking back:
http://bieganie.pl/?cat=37
Jutup: http://www.youtube.com/user/wojtek1425/videos?view=0
http://www.examiner.com/atlanta-sports-gear-in-atlanta/wojtek-wysocki
Looking back:
http://bieganie.pl/?cat=37
Jutup: http://www.youtube.com/user/wojtek1425/videos?view=0
-
- Zaprawiony W Bojach
- Posty: 310
- Rejestracja: 28 sie 2001, 13:18
- Życiówka na 10k: brak
- Życiówka w maratonie: brak
- Lokalizacja: Warszawa
hej,
wszem i wobec informuje, ze pomyslnie wrocilem z niezwykle udanego urlopu i ... czekam na zrodelka od adamma.
wszem i wobec informuje, ze pomyslnie wrocilem z niezwykle udanego urlopu i ... czekam na zrodelka od adamma.
Az mi glupio ze tak malo biegam ostatnio