On 25/02/2023 17:57, Mark Thomas wrote:


On 25/02/2023 15:47, Rui wrote:
Hi
recently upgraded tomcat to 9.0.71 from 9.0.70
but saw 404 in our EKS cluster(with istio installed)

Received [GET /actuator HTTP/1.1
Host: xxxxx:8079
User-Agent: kube-probe/1.23+
Accept: */*
Connection: close
Accept-Encoding: gzip
]
Incoming request /health with originalRemoteAddr xxxx

in 9.0.70 I can see the below following message but not in 9.0.71
o.a.c.authenticator.AuthenticatorBase    : Security checking request GET
/health

seems the processing has stopped somewhere and the pod health check didn't
pass.

I also noticed there was also a 404 issue but don't know if it is relevant.
https://lists.apache.org/thread/gr814rmrlbk9rrqxqjrh4p3x0bfvv1g9

I have tested it locally with curl or jmeter, but can't reproduce
the problem.

but when I step by step debug the spring app, I found the undecodedURI type
is T_STR
in CoyoteAdapter.java(in 70 it supposed to be T_BYTES), then decodedURI is
uninitialized and the uri can't find the mapping in internalMap of
Mapper.java, which will cause 404(guess it thinks the uri is malformed)

MessageBytes decodedURI = req.decodedURI();

if (undecodedURI.getType() == MessageBytes.T_BYTES) {
     // Copy the raw URI to the decodedURI
     decodedURI.duplicate(undecodedURI);


404 example: (when I debug step by step to check unndecodedURI)

curl http://localhost:8080/actuator

<!doctype html><html lang="en"><head><title>HTTP Status 404 – Not
Found</title><style type="text/css">body
{font-family:Tahoma,Arial,sans-serif;} h1, h2, h3, b
{color:white;background-color:#525D76;} h1 {font-size:22px;} h2
{font-size:16px;} h3 {font-size:14px;} p {font-size:12px;} a {color:black;}
.line
{height:1px;background-color:#525D76;border:none;}</style></head><body><h1>HTTP
Status 404 – Not Found</h1></body></html>%


However, it runs well without breakpoint! I am quite confused...my intellij
has problem?
but anyway, summary:
  9.0.69 and 70 are good in the AWS/EKS(kubernetes) cluster with istio
9.0.71 and 72 return 404 when health check by the EKS cluster.

Looks like an instance of:
https://bz.apache.org/bugzilla/show_bug.cgi?id=66488

If not that then maybe

https://bz.apache.org/bugzilla/show_bug.cgi?id=66512

Mark

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

Reply via email to