[an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] (none) [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] (none) [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive]
 
[an error occurred while processing this directive] [an error occurred while processing this directive]
Skåne Sjælland Linux User Group - http://www.sslug.dk Home   Subscribe   Mail Archive   Forum   Calendar   Search
MhonArc Date: [Date Prev] [Date Index] [Date Next]   Thread: [Date Prev] [Thread Index] [Date Next]   MhonArc
 

Killed?



Hej,

Jeg har lavet et lille C-program. Det er et client/server program der sender og modtager en masse data fra brugere på nettet. Det kører uden problemer på min lille P120, men der er problemer når jeg lægger det op på webserveren, der er placeret i USA.

Pludselig stopper programmet, men laver ikke noget coredump. Jeg har før lavet et lign. program der er bygget op omkring samme netværksdel, der var ingen problemer. 

Til at håndtere SIGPIPE har jeg skrevet følgende:

myhandler.sa_handler = SIG_IGN;
myhandler.sa_flags = 0;
sigemptyset(&myhandler.sa_mask);
sigaction(SIGPIPE, &myhandler, NULL);

Det har virket uden problemer før, så jeg tror ikke det er derfor programmet stopper (ville ellers være den mest åbenlyse forklaring). Starter jeg programmet fra promten (telnet) og venter, så skriver den følgende:

[promt ting]$ ./mitprogram
Killed
[promt ting]$

Altså, mit program bliver Killed, men hvorfor? Kan jeg på en eller anden måde have lavet en fejl der får kernen til at dræbe mit program? Og hvis ja, hvilken fejl? Jeg roder en del med malloc, kan det være hvis jeg glemmer at bruge free()?

Det ser ud til at programmet bliver dræbt når serveren er mest presset, hvilket leder mig til at tro det er et problem med SIGPIPE... Men det har jo virket uden problemer før og har også virket i 2-3 dage. Først for et dags tid siden har problemet vist sig?

En anden sjov opdagelse jeg gjorde igår var at programmet bliver dræbt på præcise minuttal, de endte alle på 1 eller 6. fx 21, 36, 46, 41 osv. ... Det kan have været tilfældigt, men 7 gange der alle endte på 1 eller 6? Det forstår jeg altså ikke :-(

Jeg håber virkelig nogen har erfaringer med noget lign. for jeg er løbet tøt for ideer til hvad der kunne være årsagen :-( 

Mvh
Thomas






 
Home   Subscribe   Mail Archive   Index   Calendar   Search

 
 
Questions about the web-pages to <www_admin>. Last modified 2005-08-10, 20:07 CEST [an error occurred while processing this directive]
This page is maintained by [an error occurred while processing this directive]MHonArc [an error occurred while processing this directive] # [an error occurred while processing this directive] *