Re: Case sensitivity in CLASSIFY and LEARN

"Ger Hobbelt" <[email protected]>
Newsgroups gmane.mail.spam.crm114
Message-ID <[email protected]>
On Fri, Oct 3, 2008 at 6:23 PM, Bill Yerazunis <[email protected]> wrote:
>   Meanwhile, this error IS 'trappable' (as it does not damage the system
[...]
> Hmmm... yeah, I think you are right... maybe.
>
> The overflowing error is not retryable, but it is perhaps
> possible to maybe do something else.  however, if this was
> a situation where you only had a couple of Kbytes left anyway,
> then there may not be enough space for the TRAP handler to
> run either.  I would need to check the TRAP source code on
> this.

I know, but if the trap fails, it will (and should) throw another
trap, which should be caught by the next one (side line: back in
spring, there was still a problem with vanilla crm114 locking up in an
infinite loop if you had an exception occuring in your trap execption
statement, and I don't know anymore if that fix made it through from
GerH to vanilla anymore, because there were a lot of fringe cases like
that being fixed in GerH back then)

Anyway: a good script process would throw the second trap, even when
it would occur in the 'trap' statement itself, and just fall on down
through to the next trap handler or the end of the script, where the
end-of-sript default handler would have to catch it and report back
the error to the user, even when you've filled up variable storage
space to the brim.


> Also,  crm_expr_file_io.c should not ask for too many
> characters either.  However, you can get to your patch
> in other ways than through input of a very large file.

Yup, but the 'input' C code collects a max size, which does not take
into account how much storage space is left for the variables (that
would include subtracting the variable name length and other
adjustments). Doesn't matter really, because that crm_temp_var... call
handles that kind of situation anyway and throws an exception as well.
The whole point is that when you try to overrun your buffers, you
should get an exception. If you do your utter stinking best to overrun
a buffer, heck, you _might_ find the exception chain ends up at the
end-of-script. Just as long as an error is reported in an intelligible
way.

Of course the way 'around' this is to be nice to crm114 and spec a
maximum load size by using the max_size parameter in the

  input [var start max_size]

statement, as suggested before in this thread.



> I'd put this in now, but my laptop is now deep in the throes
> of Memtest86.  And it may need a reinstall.  :(

Whoa. You think you've got flaky hardware in there? That's a tough one... :-(



-- 
Met vriendelijke groeten / Best regards,

Ger Hobbelt

--------------------------------------------------
web: http://www.hobbelt.com/
 http://www.hebbut.net/
mail: [email protected]
mobile: +31-6-11 120 978
--------------------------------------------------

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.