Re: [RFC] --disable-panics configuration option

2005-03-24 Thread Aarno Syvänen
So all libraries should actually issue error instead of panic, because 
libraries
cannot know is error fatal or not ? (But the error looks severe, 
however).

Simple change would be easy to implement, and Jon is not only one 
getting
strange octstr panics.

Aarno
On 24.3.2005, at 00:12, Stipe Tolj wrote:
Aarno Syvänen wrote:
And I cannot agree more, actually. But auditing takes time. Until
it is done, --disable-panics will be of some use.
now, yes, auditing takes some time. But it's the way to go, IMO. 
Simply adding a configure switch would cause in unstable internal 
state if a function hits the panic() button and we keep the beast 
running, since the logic has in mind that the beast is supposed to die 
now.

You could #idef things inside panic() to prevent it from panic'ing, if 
it's up for a fast solution.

If we add the configure switch, I almost see unnecessary bug reports 
rushing in that have their cause from such situations. Which I'd like 
definetly to prevent.

Hence, -0 to -1 in simply blind-mode preventing panic() stops here. 
+1 on auditing and making Kalle's dream come true: a genuine panic() 
policy ;)

Stipe
mailto:stolj_{at}_wapme.de
---
Wapme Systems AG
Vogelsanger Weg 80
40470 Düsseldorf, NRW, Germany
phone: +49.211.74845.0
fax: +49.211.74845.299
mailto:info_{at}_wapme-systems.de
http://www.wapme-systems.de/
---



Re: [RFC] --disable-panics configuration option

2005-03-24 Thread Jonathan Houser
  Aarno,
So all libraries should actually issue error instead of panic, because 
libraries
cannot know is error fatal or not ? (But the error looks severe, however).

Simple change would be easy to implement, and Jon is not only one getting
strange octstr panics.
 As an aside of sorts, that's how I write all of my code.  An error 
is passed up the 'stack' until it reaches someone that knows how major 
of an issue it is and whom can act accordingly.  I didn't suggest an 
audit/partial re-write because of the scope of that sort of a thing, but 
if you guys are up for it, that's obviously the best way to do it.

Jon


Re: [RFC] --disable-panics configuration option

2005-03-23 Thread Stipe Tolj
Aarno Syvänen wrote:
There actually seems to two kinds of panic:
a) Configuration errors. In this case, continuation really is impossible.
b) Libs has some sanity checks that cause panic. If we just have a broken
 message, we must just ignore message, not panic.
thats right. That's how Jörg understands and unnecessary panic, since a broken 
message does not mean an broken internal operational state.

IMO, we should throw panics if we're unable to carry on with stable operation, 
otherwise dump error, discard whatever could not be done, and continue operation.

Hence +1 on autiting panics for recoverable states.
Stipe
mailto:stolj_{at}_wapme.de
---
Wapme Systems AG
Vogelsanger Weg 80
40470 Düsseldorf, NRW, Germany
phone: +49.211.74845.0
fax: +49.211.74845.299
mailto:info_{at}_wapme-systems.de
http://www.wapme-systems.de/
---


Re: [RFC] --disable-panics configuration option

2005-03-23 Thread Stipe Tolj
Alexander Malysh wrote:
I'm really -1 for disabling panics. if some places use panics but could
continue then it's a bug and those places should be fixed. panic may _only_
be used if no recovery possible.
correct. Hence summerizing:
* keep panic(), it should be _only_ use in places that  can't be recovered for 
normal operation.
* audit all panic()s and revert those that can keep the process in stable 
operation to errors.

Stipe
mailto:stolj_{at}_wapme.de
---
Wapme Systems AG
Vogelsanger Weg 80
40470 Düsseldorf, NRW, Germany
phone: +49.211.74845.0
fax: +49.211.74845.299
mailto:info_{at}_wapme-systems.de
http://www.wapme-systems.de/
---


Re: [RFC] --disable-panics configuration option

2005-03-23 Thread Stipe Tolj
Aarno Syvänen wrote:
And I cannot agree more, actually. But auditing takes time. Until
it is done, --disable-panics will be of some use.
now, yes, auditing takes some time. But it's the way to go, IMO. Simply adding a 
configure switch would cause in unstable internal state if a function hits the 
panic() button and we keep the beast running, since the logic has in mind that 
the beast is supposed to die now.

You could #idef things inside panic() to prevent it from panic'ing, if it's up 
for a fast solution.

If we add the configure switch, I almost see unnecessary bug reports rushing 
in that have their cause from such situations. Which I'd like definetly to prevent.

Hence, -0 to -1 in simply blind-mode preventing panic() stops here. +1 on 
auditing and making Kalle's dream come true: a genuine panic() policy ;)

Stipe
mailto:stolj_{at}_wapme.de
---
Wapme Systems AG
Vogelsanger Weg 80
40470 Düsseldorf, NRW, Germany
phone: +49.211.74845.0
fax: +49.211.74845.299
mailto:info_{at}_wapme-systems.de
http://www.wapme-systems.de/
---


Re: [RFC] --disable-panics configuration option

2005-03-17 Thread Aarno Syvänen
Yes. --disable-panics should be only a stopgap. One truly must know
what messages are causing the panics. It actually can be just an error
of the phone .
On 16.3.2005, at 17:52, Jonathan Houser wrote:
  Aarno,
There actually seems to two kinds of panic:
a) Configuration errors. In this case, continuation really is 
impossible.
b) Libs has some sanity checks that cause panic. If we just have a 
broken
 message, we must just ignore message, not panic.
 I would like it if a panic just wrote the appropriate lines to 
the log (for debugging) and kept on running.  The panic's I've seen 
were for things that pertained to a WDP message from some phone on the 
WAP gateway.  If that one phone doesn't get his fetch handled, oh 
well, we should log that we had a problem and keep on running.  So I 
like the idea you've proposed.  It'd allow everyone to work through 
issues without having a wrapper script work overtime.

Jon



Re: [RFC] --disable-panics configuration option

2005-03-17 Thread Aarno Syvänen
And I cannot agree more, actually. But auditing takes time. Until
it is done, --disable-panics will be of some use.
Aarno
On 16.3.2005, at 18:09, Pommnitz, Jörg wrote:
But this just confirms what I wrote: such a panic is obviously
inappropriate and should be replaced by a warning. So, I stand by
what I wrote earlier: just audit the panics and make sure Kannel
panics in only *REALLY* hopeless situations. This would IMHO be
the Right Thing (TM) to do.
Regards
  Joerg
-Ursprüngliche Nachricht-
Von: Jonathan Houser [mailto:[EMAIL PROTECTED]
Gesendet: Mittwoch, 16. März 2005 17:52
An: Aarno Syvänen
Cc: Kannel list
Betreff: Re: [RFC] --disable-panics configuration option

  Aarno,
There actually seems to two kinds of panic:
a) Configuration errors. In this case, continuation really is 
impossible.
b) Libs has some sanity checks that cause panic. If we just have a 
broken
 message, we must just ignore message, not panic.
  I would like it if a panic just wrote the appropriate lines to 
the
log (for debugging) and kept on running.  The panic's I've seen were 
for
things that pertained to a WDP message from some phone on the WAP
gateway.  If that one phone doesn't get his fetch handled, oh well, we
should log that we had a problem and keep on running.  So I like the
idea you've proposed.  It'd allow everyone to work through issues
without having a wrapper script work overtime.

Jon




RE: [RFC] --disable-panics configuration option

2005-03-17 Thread Kalle Marjola
On Wed, 2005-03-16 at 19:09, Pommnitz, Jörg wrote:
 But this just confirms what I wrote: such a panic is obviously 
 inappropriate and should be replaced by a warning. So, I stand by
 what I wrote earlier: just audit the panics and make sure Kannel
 panics in only *REALLY* hopeless situations. This would IMHO be 
 the Right Thing (TM) to do.
 
I fully agree here.

It is so bad that Kannel PANICs when it is not really a PANIC situation,
but we should not make things worse by allowing it to continue when it
really panics because of some unrecoverable problems
(I recall rising this issue of 'too easily used panics' many months
ago..)


-- 
 Kalle Marjola ::: Development ::: Helsinki ::: Enpocket




Re: [RFC] --disable-panics configuration option

2005-03-16 Thread Aarno Syvänen
There actually seems to two kinds of panic:
a) Configuration errors. In this case, continuation really is 
impossible.
b) Libs has some sanity checks that cause panic. If we just have a 
broken
 message, we must just ignore message, not panic.

Aarno
On 16.3.2005, at 15:02, Pommnitz, Jörg wrote:
Uhh, isn't a panic supposed to be a condition where there is no
recovery? Restarting Kannel might be a better option for production use
than a system with an untrustworthy internal state.
To propose an alternative: How about auditing all panics to make sure
they really represent a condition with no way out opposed to just
a programmer too lazy to unwind a complicated code flow?
Regards
  Joerg
-Ursprüngliche Nachricht-
Von: Aarno Syvänen [mailto:[EMAIL PROTECTED]
Gesendet: Mittwoch, 16. März 2005 14:57
An: Kannel list
Betreff: [RFC] --disable-panics configuration option
Hi List,
can we add --disable-panics configuration option ? it would mean
that Kannel would log panic level error, but would not exit. This
would be very good for production use.
In addition, I think that --with-defaults options other than debug
should disable panics too.
Aarno




RE: [RFC] --disable-panics configuration option

2005-03-16 Thread Pommnitz, Jörg
But this just confirms what I wrote: such a panic is obviously 
inappropriate and should be replaced by a warning. So, I stand by
what I wrote earlier: just audit the panics and make sure Kannel
panics in only *REALLY* hopeless situations. This would IMHO be 
the Right Thing (TM) to do.

Regards
  Joerg

-Ursprüngliche Nachricht-
Von: Jonathan Houser [mailto:[EMAIL PROTECTED]
Gesendet: Mittwoch, 16. März 2005 17:52
An: Aarno Syvänen
Cc: Kannel list
Betreff: Re: [RFC] --disable-panics configuration option



  Aarno,

 There actually seems to two kinds of panic:
 
 a) Configuration errors. In this case, continuation really is impossible.
 b) Libs has some sanity checks that cause panic. If we just have a broken
  message, we must just ignore message, not panic.

  I would like it if a panic just wrote the appropriate lines to the 
log (for debugging) and kept on running.  The panic's I've seen were for 
things that pertained to a WDP message from some phone on the WAP 
gateway.  If that one phone doesn't get his fetch handled, oh well, we 
should log that we had a problem and keep on running.  So I like the 
idea you've proposed.  It'd allow everyone to work through issues 
without having a wrapper script work overtime.

Jon