Don Baccus wrote:
On Jun 6, 2011, at 12:25 PM, Andrew Piskorski wrote:

In general, I don't think the ACS/OpenACS 4.x request processor
design was EVER carefully thought out with respect to all of
AOLserver's features and use cases.

Or, in this case, didn't understand the bug that the internal
redirects on various errors like 404 didn't run the filters.  Of
course, in AOLserver 3.0 (underwhich the rp was first written)
perhaps AOLserver did ...

I actually checked this before my initial post. It's been this way as far as SF CVS goes back. Which is why I'm trying to tread lightly and not break something that relies on the current behavior.

I admit to being somewhat astonished by the lack of orthogonality
when I figured this out in the AOLserver code.

It wasn't documented, and actually, rather than being an example of
the rp's design not being carefully thought out in regard to
AOLserver's features, I'd say that the design exposed a bug.

Could be a bug or a deliberate design decision. I recall one of the AOL devs (Jim and Dossy?) at one point say that the featureset was very much driven by internal AOL demands.

Of course, that was then, this is now. AOL is no longer the driving force, or I don't think any force. And my first impression is to call this behavior a bug, because it makes one kind of request (internal redirects) act differently than a normal request, with no way to change that. Others may agree or disagree, which is that I'm trying to find out. And once that's clear, what to do about it.

I think it should be fixed to treat all requests, internal and external, the same; but to be compatible this behavior should be switchable and off by default. I have a half-patch for this (it's not switchable yet) that I can clean up and commit sometime soon, if no one objects.

The OpenACS rp_* Tcl code just grabs control from the AOLserver
mechanisms.

And this is just stupid.  If the AOLserver paradigm is that people
shouldn't write filters, it should not provide the facility to write
filters.

I got the impression (based on my reading alone, not talking to anyone about it) that the request processor was created largely to give more control (especially at the tcl level) than aolserver's native procs and filters allow. So for instance the order of execution of filters could be controlled rather than being executed in a strictly fifo by definition order. As with any implementation it was a choice; a different person might have patched the core to allow better control of filters, and another person might have felt that the existing builtins were good enough and relied more on them. No matter, it's there now and it works and no one is complaining about it.

-J

PS: I really wasn't trying to stir up any arguments, I just wanted to contribute something.


--
AOLserver - http://www.aolserver.com/

To Remove yourself from this list, simply send an email to 
<[email protected]> with the
body of "SIGNOFF AOLSERVER" in the email message. You can leave the Subject: 
field of your email blank.

Reply via email to