Hello, we have a regression with 3.4.3 which im tr...
# ktor
g
Hello, we have a regression with 3.4.3 which im trying to trace but with no result. We have the following endpoints :
Copy code
fun Application.configureProbes() {
    routing {
        get("/health") { call.respond(HttpStatusCode.OK) }
        get("/ready") { call.respond(HttpStatusCode.OK) }
    }
}
we use these for kubernetes probes. With 3.4.2 when calling these (locally, using the docker image)
Copy code
default ❮ curl -N  -L -v <http://localhost:8022/ready>
* Host localhost:8022 was resolved.
* IPv6: ::1
* IPv4: 127.0.0.1
*   Trying [::1]:8022...
* Established connection to localhost (::1 port 8022) from ::1 port 45764
* using HTTP/1.x
> GET /ready HTTP/1.1
> Host: localhost:8022
> User-Agent: curl/8.18.0
> Accept: */*
>
* Request completely sent off
< HTTP/1.1 200 OK
< Content-Length: 0
<
* Connection #0 to host localhost:8022 left intact
we get back the expected response. With 3.4.3 though we dont:
Copy code
default ❯ curl -N  -L -v <http://localhost:8022/ready>
* Host localhost:8022 was resolved.
* IPv6: ::1
* IPv4: 127.0.0.1
*   Trying [::1]:8022...
* Established connection to localhost (::1 port 8022) from ::1 port 60500
* using HTTP/1.x
> GET /ready HTTP/1.1
> Host: localhost:8022
> User-Agent: curl/8.18.0
> Accept: */*
>
* Request completely sent off
* Empty reply from server
* shutting down connection #0
curl: (52) Empty reply from server
looking at the changelog, i cant see something related. Is there something more specific that i can look at? Code is exactly the same Thanks
server engine is netty, using enginemain
seems like the transitive dependency of netty is the issue. Ktor 3.4.2 uses
4.2.9
and 3.4.3 uses
4.2.12
Using 3.4.3 and forcing netty
4.2.9
works. I'm not sure if this is a ktor or netty issue though
b
do you have any more details for reproduction? running a basic server like this seems to work fine with 3.4.3 and yields the first result
g
i will try to build a small reproducer
indeed with plain server setup it does not occur, so it will need some more time to find the root cause
as a note, i used the ktor version catalogs and it worked (instead of manually setting dependencies). Which makes it even weirder. thanks though
a
This is most likely KTOR-9530.
g
yes, that must be it because we indeed use grpc too