On 10/10/2019 18:21, Christopher Schultz wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA256
> 
> Mark,
> 
> Should we just make this into an SVG and call it a day? ASCII art is
> great and all, but ...

As much as I like that piece of ASCII art, I agree we need to do something.

As a result of the couple of Async bugs raised recently I've been
reviewing that diagram, the implementation and the spec. There are some
inconsistencies around some of the edge cases - especially error
handling which isn't that well specified to start with.

My current thinking is that we should replace it with a table. List
starting state down the left hand side and events (complete(),
dispatch() etc) across the top. Each cell would show the resulting state
for the given start state and event combination with some marked as N/A
(which would trigger ISE in the code). I have this mocked up in a
spreadsheet at the moment that I am using to track what I need to work
on next.

Getting a little off-topic but error handling needs an overhaul. I need
to go through the spec and get the intent clear(er) in my mind. Things
get particularly "interesting" if errors occur during the transition
from async to non-async. Hopefully, fixes for the two async BZ issues
will fall out of that.

Mark



> 
> - -chris
> 
> On 10/10/19 03:58, ma...@apache.org wrote:
>> This is an automated email from the ASF dual-hosted git
>> repository.
>>
>> markt pushed a commit to branch master in repository
>> https://gitbox.apache.org/repos/asf/tomcat.git
>>
>>
>> The following commit(s) were added to refs/heads/master by this
>> push: new bdbc534  Use consistent format bdbc534 is described
>> below
>>
>> commit bdbc534b6725197e666540eeadb0aa4dbb987f91 Author: Mark Thomas
>> <ma...@apache.org> AuthorDate: Wed Oct 9 11:49:04 2019 +0100
>>
>> Use consistent format ---
>> java/org/apache/coyote/AsyncStateMachine.java | 2 +- 1 file
>> changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/java/org/apache/coyote/AsyncStateMachine.java
>> b/java/org/apache/coyote/AsyncStateMachine.java index
>> 29b0caf..d9a887a 100644 ---
>> a/java/org/apache/coyote/AsyncStateMachine.java +++
>> b/java/org/apache/coyote/AsyncStateMachine.java @@ -119,7 +119,7 @@
>> import org.apache.tomcat.util.security.PrivilegedSetTccl; * |   |
>> |       |post()         |    |  |      |     timeout()|
>> |  |  |   error()| * |   |      |       |dispatched()   |   \|/\|/
>> \|/             |  dispatch()|  |  |-»--------| * |   |      |
>> |---«---------- | ---DISPATCHING«-----«------ | ------«----|  | - *
>> |   |      |                       |     |    ^                  |
>> | + * |   |      |                       |     |   /|\
>> |               | * |   |      |                       |     |----|
>> |               | * |   |      |                       |
>> timeout()                |               | * |   |      |
>> |                             |               |
>>
>>
>> ---------------------------------------------------------------------
>>
>>
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
>> For additional commands, e-mail: dev-h...@tomcat.apache.org
>>
> -----BEGIN PGP SIGNATURE-----
> Comment: Using GnuPG with Thunderbird - https://www.enigmail.net/
> 
> iQIzBAEBCAAdFiEEMmKgYcQvxMe7tcJcHPApP6U8pFgFAl2faKQACgkQHPApP6U8
> pFjM5Q//epa0QRqu7FdFp3ion2HJ3Mh3pIfB1rOXMd574ezkTdEfWprRaPM3zeWU
> qr5cseOqa3Ld3KW1FY5ZXeicKOfgRw5NJ/+fTU/cjXiaLrKlMnyX7GlWawZ/Sb4H
> Pl/XevFryr25n3jQ2j7hB0I53hoUmKjYcdev+btcHX0W2otTI2b+UZ1P8d8zAZHQ
> FdbVerma1Y3OR0x7CXErIb5Vly8YEGVpmrXvch7LYcaWu6Zdp5B9SP4DGQJOBel3
> 8Qw1CR5llkTdiRNZKOn1S/olBeOC8bKgVGSwu233vYIwsXRVIzU6tEsMsQLuhvqn
> 6VKThOEk/k7a0GJpN+XzjTOysuEMFB2oWMErgaLjDSK4U6PWqaRycJl6fPRsHJ2k
> 5FPquxtyTej0iUW+pkYY9CQfwf1SCr93LyJhuyhR890kH2vcke/2JPhqKICasn0y
> RhHNIIHj6yoa5HjZ/8DpikY0GQ3ELqNwPx8uBpfllHzWcESFUYWN1kJTAweTy0sK
> 2q7PDmijC8O3ZOciM8ainkozeX4OjxU0z31o0jeIfcsyLDqZbXScmsUi3qfFJnY2
> Tl1vT/FFV3zEqN7zyyKqPWUYmr1xKxnBWTm8dh8FWPeXLY5CxDkPmU741mWrJSs9
> Vk8i8iIOxgLaOjppnZuDRpW4bk9q1m7lPskgh4eFdZomVOOIdf4=
> =i7JK
> -----END PGP SIGNATURE-----
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to