project-lux / lux-marklogic

Code, issues, and resources related to LUX MarkLogic
Other
3 stars 2 forks source link

Determine if custom error handler is still required #89

Open brent-hartwig opened 3 months ago

brent-hartwig commented 3 months ago

Changes between ML 11 EA and ML 11.1.0 may have made the primary purpose of the custom app server error handler (luxErrorHandler.mjs) obsolete. The scope of this ticket is to determine if that is true and whether it is best to revert to the default error handler.

The primary purpose of the custom error handler is to prevent timed out requests from being retried, and thus conserve cluster resources. The generated data service proxy can retry requests multiple times when the response status code is 502, 503, or 504.* Providing ML does not issue this status code for timed out requests, we may want to revert to the default error handler.

Recent and limited manual tests with ML 11.1.0 reflected ML returns a 500 for timed out requests. This would go against the secondary objective of consistently return status code 408 for timed out requests.**

A second reason we may want to still try the default error handler is ML Engineering's suspicion that the custom error handler may be a contributing factor to the v8 engine failing during the scripted performance test. Evidence is yet to back this suspicion.

If we elect to test this, it should be tested in the context of the scripted performance test.

* Before setting up for this test, we should determine whether the generated data service proxy retry behaviors are the same in the in-use version and, if there is a later version available, whether still true there too.

** Before setting up for this test, we should think through middle tier and frontend implications of returning a 408 or 500 for timed out requests.

Per comment below: I'd like Engineering to finish their investigation of the v8 engine crash (MLE-12588) before we decide whether to keep the custom error handler or not. | https://github.com/project-lux/lux-marklogic/issues/34

roamye commented 1 week ago

@brent-hartwig - should @clarkepeterf be an assignee to this ticket? or just you? There is currently no one listed for this.

brent-hartwig commented 1 week ago

@roamye, is this being considered for development soon? I'd like Engineering to finish their investigation of the v8 engine crash (MLE-12588) before we decide whether to keep the custom error handler or not. Related:

roamye commented 1 week ago

@brent-hartwig - I can bring this up in UAT this thursday for review. Is there a ticket for the investigation for the V8 Engine Crash (MLE-12588)?

brent-hartwig commented 1 week ago

@roamye, yes, that ticket is #34, which also references MarkLogic Support ticket no. 35746.

jffcamp commented 1 week ago

This is not yet ready for development. It is still in 'forming' because we are waiting for the conclusion of the ML investigation linked in #34.