We just updated to Spring 5.2.4 and are seeing 500 instead of 400 for requests like this:

{
    "bracket_not_closed": [
}

With 5.2.3 we'd see:

{
    "timestamp": "2020-03-02T20:51:06.580+0000",
    "path": "/cards/requests",
    "status": 400,
    "error": "Bad Request",
    "message": "Failed to read HTTP message",
    "requestId": "5ef79eec"
}

With 5.2.4 we see:

{
    "timestamp": "2020-03-02T20:30:13.032+0000",
    "path": "/cards/requests",
    "status": 500,
    "error": "Internal Server Error",
    "message": "JSON conversion problem: Unexpected close marker '}': expected ']' (for Array starting at [Source: (io.netty.buffer.ByteBufInputStream); line: 2, column: 22]); nested exception is com.fasterxml.jackson.databind.JsonMappingException: Unexpected close marker '}': expected ']' (for Array starting at [Source: (io.netty.buffer.ByteBufInputStream); line: 2, column: 22])\n at [Source: (io.netty.buffer.ByteBufInputStream); line: 4, column: 1] (through reference chain: com.vmware.platform.objects.request.ObjectRequests[\"card_requests\"])",
    "requestId": "5505890a-13"
}

This appears to have been caused by the fix for #24455 I'm not sure if it's exactly the same issue as #24610

Comment From: jhoeller

This looks like a variant of that previous report, but there's a specific case here: caused by a plain JsonMappingException. We'll revise our catch blocks for 5.2.5 there, not making assumptions about general JsonMappingException anymore but rather just about Jackson 2.10's new ValueInstantiationException subtype. Thanks for reporting this particular case as well!