Rzadko to rzadko, ale czasami moja głupota mnie przeraża. Zdarza mi się utknąć nad jakimś kawałkiem kodu, który MUSI działać. Po prostu MUSI. A nie działa…
Zwykle ma to miejsce po bardzo długiej sesji kodowania. Takiej jak ta, o której pisałem kiedyś. Podzielę się, chociaż mi wstyd:). Jedziemy…
Mailu, dlaczego się nie wysyłasz???
Prawie 3 godziny zmarnowałem jednej nocy na wysłanie maila. Siedziałem, testowałem, drapałem się w głowę, wymyślałem najdurniejsze juz możliwe rozwiązania… Wreszcie o 4 rano dostrzegłem że faktycznie coś chyba jest nie tak z mojej winy.
Info na stronie Onetu:
Mój konfig:
Bez dalszego komentarza.
WCFie, dlaczego nie działasz???
Równie niemało czasu (i o równie zboczonej porze) zajęło mi kiedyś przesłanie WCFem obiektu z serwera na klienta. Poniżej uproszczony kod… który NIE WYSYŁAŁ DANYCH! W jakie zagłębiłem się wówczas konfiguracje WCFa, czegóż ja nie zmieniałem, jakieś limity, jakieś zabezpieczenia… A godzin tych nikt już mi nie zwróci:
Ale przynajmniej teraz ZAWSZE gdy coś z WCF nie działa tak jak trzeba to przypominam sobie ową historię i sprawdzam czy przypadkiem moja klasa nie wygląda tak jak ta powyżej:).
SQLu, dlaczego źle się wykonujesz???
Innym razem tworzyłem w kodzie zapytanie SQL (komentarze "tak się nie robi!" proszę na bok). Zwracało one dane zależne od daty przekazanej w parametrze. Tworzyła je klasa skonfigurowana w kontenerze DI jako singleton, i wyglądało to mnie więcej tak:
Pierwsze wykonanie: OK. Ale im dalej w las, tym bardziej bezsensowne wyniki!
Oczywiście okazało się, że po takiej zmianie:
wszystko było już w porządku.
Wszystko, oprócz mojego poczucia własnej wartości:).
O, parametrze, dlaczegóż wartość twa niezmienna jest???
Nie tak wcale dawno z kolei modyfikowałem logikę wykonywania skryptów IronPython w tworzonym systemie. Nowe założenia (uproszczono-wymyślone): "jeśli przekazany skrypt jest pusty, pobierz z konfiguracji domyślny skrypt i go uruchom".
Banał, prawda? Ale, kurde, nie działa! Oto dlaczego:
Fluent eNHajbernejcie, dlaczego mapowania moje ignorujesz???
Dawszy się ponieść szałowi refactoringu zapędziłem się też w kozi róg przy użyciu NHibernate. Po dość intensywnych przemieszczeniach funkcjonalności między klasami, klas między folderami, folderów między projektami itd (jak to bywa w bardzo początkowej fazie projektu) znalazłem się w sytuacji… prawie że bez wyjścia. Kodu jako takiego nie zmieniałem w ogóle – modyfikowałem jedynie jego położenie. A mimo to nie mogłem z bazy pobrać nic. NIC!
Nie było błędu, ale nie było też danych. Po podłączeniu SQL Profilera okazało się, że nie wykonują się nawet żadne zapytania. Norrrrrmalnie szok i masakra.
Powyższy obrazek pokazuje (zasymulowaną w 5 minut w nowej instancji VS) co było nie tak. Idiot, idiot, idiot! Półtorej godziny wyrwane z nocy jak… ząb ze zgniłego dziąsła?
Karto sieciowa, dlaczego coś z tobą nie tak???
Ostatnia historyjka (i tak już pewnie wystarczająco straciłem w Waszych oczach:) )…
Tworzę sobie nową wirtualkę, wpinam w sieć gotową do testowania, i… i nic!
NIe pamiętam już ile czasu zajęło mi dostrzeżenie tego:
Blacha!
To kilka masakrycznych po prostu debilizmów z ostatnich kilkunastu miesięcy… Może nie nadają się na The Daily WTF, ale mam nadzieję że uśmiech u kogoś wywołało:) (są jak Pokemony – musisz rozwiązać je wszystkie!)
A jakie Wy mieliście przygody, po których głupio było spojrzeć w lustro?