Just curious: can you throw something? not
  if .. [thow]
but
  if .. [throw 'dummy]
maybe there is the bug in 'throw.

On 4/25/05, Anton Reisacher <[EMAIL PROTECTED]> wrote:
>=20
> How safe is catch?
>=20
> I have some rebol applications serving message communication (around 1000=
 to
> 2000 messages per day mostly) running for more than half a year on
> Windows2000 Server without interruption since the last update of the OS f=
or
> security reasons.
>=20
> Recently I had to add some message splitting:
> one-message -->  [message-part-1 message-part-2 message-part-3]
>=20
> I used a construct similar to this
>=20
> forever [
>         until [new-messages-available]
>         foreach message new-messages [
>                 catch [
>                         if not important [throw]
>                         do-some-heavy-message-processing-and data-complet=
ion-using-odbc
>                         if some-tests [throw]
>                         message-parts: split-messages message
>                         until [
>                                 catch [
>                                         message: first message-parts
>                                         do-more-conversions
>                                         if other-tests [throw]
>                                         deliver message
>                                         emtpy? message-parts: next messag=
e-parts
>                                 ]
>                         ]
>                 ]
>         ]
> ]
>=20
> Now I saw two crashes in one day.
> I was somehow able to reproduce the crash
> "Invalid data type during recycle"
> by playing again the history of one to two weeks. But the crash happened
> always processing another message.
>=20
> As I had seen in the past instable behaviour with constructs like this
> foreach ... [
>         catch [
>                 ..
>                 data: any [
>                         a
>                         b
>                         throw
>                 ]
>                 ..
>                 ..
>         ]
> ]
>=20
> I replaced the inner catch with statements like this
>                 if not other-tests [
>                         deliver message
>                 ]
> and the crash went away.
>=20
> Now I am curious if someone else encountered the same behaviour too?
>=20
> --
> +++ GMX - Die erste Adresse f=FCr Mail, Message, More +++
>=20
> 1 GB Mailbox bereits in GMX FreeMail http://www.gmx.net/de/go/mail
> --
> To unsubscribe from the list, just send an email to
> lists at rebol.com with unsubscribe as the subject.
>=20
>=20


--=20
-Volker

"Any problem in computer science can be solved with another layer of
indirection. But that usually will create another problem." David
Wheeler
-- 
To unsubscribe from the list, just send an email to 
lists at rebol.com with unsubscribe as the subject.

Reply via email to