2009-05-27 10 views
7

Kiedyś się błąd co kilka dni w sklepie pracowałem w jednym z użytkowników nazwał go „dziób”, bo myślała, że ​​przypomniał jej o jednym:Co to jest nie dający się zwieść błąd znany tylko jako Beak !? (Lub mniej niż kropka)

<.

... co w źródle, wygląda następująco:

<P><B><P><B><P><B><P><B><P><B><P><B><P><B><P><B><P><B><P><B><P><B><P><B><P><B><P><.</B>

„Dziób” można łatwo odwrócić odbijając JRun na serwerze ColdFusion, i to było dla mnie za mało, gdy miałem bezpośrednia kontrola nad moim serwerem, a odbijanie go nie trwało długo i nie wpłynęło zbytnio na nikogo.

Teraz jestem w sklepie, w którym nie mam dostępu administratora do serwera internetowego, a ponadto (z biznesowego punktu widzenia), serwery w każdej chwili zawierują duże znaki dolara i nie mogą być po prostu odbił się.

Moja nieśmiertelna ciekawość była nieustannie udaremniana przez niezdolność Google do wyszukiwania czegokolwiek innego niż losowa kolekcja B i P.

Ale TERAZ ... Teraz mam TAK ... i SO wie.

Nie mogę powiedzieć, że to CF, w rzeczywistości, podejrzewam, że to rzeczywiście ... Java lub IIS ... lub kosmos szturchając mnie irytujące dziobem w kształcie kija ...

Co do cholery jest Beak, i jak mam to zrobić?


Edits dla zdezorientowany ...

nie mogę powiedzieć, mogę sprawić, że kwestia znacznie jaśniejszy, ale mogę powiedzieć, że brak jasności był głównie funkcją błędu i nie mój brak włączenia.

Błąd nie pochodzi z fragmentu kodu ... nie ma określonego numeru wiersza ... Przeglądanie plików dziennika nigdy nie ujawniło szablonu ani szablonów, które są uruchamiane przed wystąpieniem problemu.

Po wyzwoleniu błąd wpływa na każdy szablon, który jest żądany z serwera, że ​​efekt jest powrót ten ciąg liter i nic więcej, w odpowiedzi na żądanie http: <P><B><P><B><P><B><P><B><P><B><P><B><P><B><P><B><P><B><P><B><P><B><P><B><P><B><P><.</B>

ponowne uruchomienie usługi JRun powoduje problem z odejściem ... zresetowanie serwera WWW (we wszystkich przypadkach IIS) lub serwera bazy danych (MSSQL, MySQL i Access) lub samego serwera (okna, różne wersje, różne urządzenia) jest niepotrzebny.

Szczerze mówiąc, nie spodziewałem się, że ktoś, kto NIE ZATWIERDZIŁ TEJ BŁĘDY, by odpowiedzieć. Doceniam, że ludzie o dobrych stronach próbowali, ale nie jest to błąd nadzoru programistów w Internecie (w tradycyjnym znaczeniu), a fragmenty kodów prawdopodobnie nie będą wymagane do zidentyfikowania lub rozwiązania problemu.

Mam nadzieję, że to wyjaśni mój brak informacji co najmniej do tego stopnia, aby wyjaśnić, dlaczego proszę o więcej informacji.

+2

Ciężko jest zrozumieć, jakie jest właściwie pytanie. czy mógłbyś to zmienić? – rip747

+0

Naprawdę nie rozumiem, jak to się dzieje w pierwszej kolejności? Jak "odbijasz" JRun, aby wyprodukować ten problem? – Jayson

+4

Uwielbiam to pytanie - brzmi jak filozoficzne rozmyślanie: "Nie daj się wyzwolić, jakie jest twoje imię, a co z tobą wynurzył się demon z otchłani piekła !?" :) – MGOwen

Odpowiedz

5

Pomoże to wyświetlić kod źródłowy strony generującej dane wyjściowe. To, co opisujesz, nie jest czymś, co jest "winą" jakiegokolwiek języka programu, ale raczej wynikiem funkcji lub oczekiwaniem, że jakiś zasób jest dostępny, gdy okaże się, że nie jest.Aby rozwiązać ten problem, należy zebrać jak najwięcej informacji o przyczynach problemu. Oto kilka ogólnych zasad postępowania przy debugowaniu nieznanego problemu.

  1. Czy problem jest przerywany z tymi samymi informacjami? Jeśli tak, to najprawdopodobniej nie ma jakiejś jawnej linii kodu, która jest błędna, ale raczej założenie o jakimś zewnętrznym zasobie (takim jak baza danych), które zakłada deweloper, będzie zawsze dostępne (twój kod musi brać pod uwagę to, czego użytkownik doświadczy, jeśli baza danych nie jest dostępna).
  2. Czy problem może zostać odtworzony w innym środowisku (takim jak stacja robocza)? Czasami subtelne zmiany pomiędzy platformami (Debian vs. Red Hat, a nawet Java 1.6.10 vs. Java 1.6.9) mogą wprowadzać nieoczekiwane problemy.
  3. Czy problem może zostać odtworzony z innymi informacjami? Być może problem występuje, ponieważ programista zakłada, że ​​niektóre nieprawidłowe wartości nigdy nie przeszłyby wcześniejszego filtra, a zatem nigdy nie zawracają sobie głowy złapaniem nieprawidłowych wartości w funkcji generującej błąd, jest to często źle napisane aplikacje internetowe, ponieważ ludzie zwykle zakładają, że HTML FORM-y umożliwiają tylko wprowadzenie określonego zestawu wartości.

Mam nadzieję, że to pomoże.

+0

Przepraszam ... Powinienem był być bardziej zrozumiały Przypuszczam, że ... brak informacji jest problemem. 1. Po "wyzwoleniu" każda strona próbująca renderować na tym serwerze wyświetli błąd. 2. Jak już wspomniałem, miało to miejsce w dwóch zasadniczo różnych środowiskach, dla dwóch całkowicie oddzielnych firm i dwóch WILDLY RÓŻNYCH baz kodów. 3. Problem nie może zostać odtworzony. Jeśli mógłby być powielony, mógłbym zidentyfikować przynajmniej DLACZEGO to nastąpi. – OhkaBaka

3

Dziwne pytanie, więc dziwna odpowiedź.

a) Mniej niż kropka ("<.") Jest symbolem używanym w języku programowania J, który według mojej wiedzy nie ma żadnego związku z Javą leżącą u podstaw ColdFusion. Oznacza to (cytuję z a course on J run by Steven Phillips in Japan

Monadic case: Returns the next integer less than y 
Dyadic case: Returns x if x is smaller than y, else y 

b) Ten precyzyjny błąd służy jako podpisu przez użytkownika kaht na innym forum, więc może oni wiedzą coś na ten temat. Link w podpisie przeniesie Cię do lessthandot.com, forum z mnóstwem zagadek. Nazwa forum została poproszona przez "Beak".

Jeśli możesz opublikować pełny komunikat o błędzie, to bardzo trudno będzie ustalić przyczynę; ponowne uruchomienie serwera CF nie jest rozwiązaniem stałym, tak jak je rozpoznajesz.

+0

a) Masz rację, ponieważ prawdopodobnie nie ma to związku. b) Znalazłem również podpis Kahta, ponieważ nie miałem odpowiedzi od właściciela na temat charakteru podpisu. c) jest to pełny wynik błędu. ENTIRETY z html przekazane z serwera jest ten ciąg. – OhkaBaka

+0

W takim przypadku byłbym skłonny powiedzieć, że to wymaga wsparcia dla Adobe (zakładając, że jeszcze tego nie zrobiłeś), chyba że z przyjemnością zaczekasz, aż pojawi się ktoś inny. Zakładając, że za każdym razem uruchamiałeś ten sam zestaw kodu źródłowego, na pewno musi być wyzwalacz, który powoduje tę awarię (nie mówiąc, że kod jest błędny, ale istnieje wspólny mianownik). –

+0

Wierzę, że stało się to na 3 różnych bazach kodów w dwóch różnych firmach. Więc jedynym wspólnym mianownikiem, jaki mogę znaleźć, jest to, że pojawia się on w oknach i CF ... i byłem tego świadkiem. Może robiłem wsparcie techniczne zbyt długo i jestem zmęczony, ale pomiędzy "Czy dzieje się to teraz (Nie)", "czy możesz je odtworzyć (Nie)" i "czy masz zainstalowane jakieś oprogramowanie stron trzecich? (Tak) "... Czuję, że nie dostanie się dużo miłości od wsparcia technicznego. I ... jest to ciekawość, która nie jest warta wsparcia technicznego, widziałem ją tylko raz w tym środowisku za rok. – OhkaBaka

1

Może to przeciek pamięci? To by wyjaśniało, że dzieje się to "losowo" i jest naprawiane przez restartowanie JRun.

"Dziób" (<P><B><P><B><P><B><P> ...) może być wygenerowany przez szablon cferror w aplikacji. Powinieneś spróbować zmienić szablon błędu (i utworzyć taki, jeśli go nie masz), tak aby zawierał tylko następujący wiersz.

<cfdump var="#cferror#"> 

To moje najlepsze przypuszczenie na podstawie podanych informacji. Ludzie pytali o więcej informacji i uważam, że pomyłką jest odmawianie. Mogę powiedzieć Ci z doświadczenia, że ​​znajdziesz odpowiedzi na takie problemy wcześniej i częściej, jeśli będziesz trzymał się założenia, że ​​było niedopatrzenie z twojej strony.

+0

Myśli o wyciekach pamięci, Bóg wie, że CF ma problemy ... ale może się zdarzyć w ciągu kilku minut od ostatniej chwili, kiedy to się stało, lub miesiące ... Problemy z pamięcią mogą pojawić się pomiędzy, bez żadnego widocznego wpływu. Błąd CF to dobry pomysł, ale przeszliśmy przez 3 szablony, z których żaden nie zawiera tego kodu (w jakikolwiek sposób udało mi się to zobaczyć) ... i żadne błędy nie są rejestrowane w dzienniku. LOL ... Nie sądzę, że odmawiam informacji, po prostu nie mam żadnych do przekazania, przepraszam wszystkich, jeśli tak się wydaje. – OhkaBaka

Powiązane problemy