ibutsu / ibutsu-server

Ibutsu is a test result aggregator
https://ibutsu-project.org
MIT License
17 stars 22 forks source link

TypeError from gateway timeouts #378

Open mshriver opened 2 years ago

mshriver commented 2 years ago

image

When filtering metadata fields like metadata.SomethingVersion for semantic versions like 1.2.3, a TypeError is produced, and no results fetched.

@rsnyman suggested these values are getting processed as floats, and the filter is trying to typecast. It should be interpreted as a string.

mshriver commented 2 years ago

I'm unable to reproduce the error with local ibutsu having results with this metadata field set (X.Y, X.Y.Z, and X.Y.Z.ZZ formats).

Filtering works as expected

mshriver commented 2 years ago

I've now observed different behavior on ibutsu, with no changes to the production containers from when this was written.

The mentioned filters now work intermittently, but will still cause type errors. Still unable to actually reproduce locally, even after loading results that didn't contain the metadata field being searched.

mshriver commented 2 years ago

Alright, so some sanity has been found after some digging, learning, and a conversation with @rsnyman.

The root of this issue is the gateway timeout in the haproxy route in OCP. The backend/api query is taking too long, and the route times out and throws a 504.

The HttpClient functions, and fetch, aren't setup to cleanly handle this, so a TypeError occurs in the frontend.

Three actions are planned in order to better deal with this:

  1. Modify the OCP template spec for the backend route to increase the timeout
  2. Optimize/Improve performance of the result queries
  3. Better handling of potential gateway timeouts in the result-list page