CCSDForge / episciences-api

An API for Episciences, an overlay journal platform software
GNU General Public License v3.0
5 stars 0 forks source link

Error 500 for some pages on /api/papers #9

Closed TobiasKappe closed 9 months ago

TobiasKappe commented 9 months ago

When I request certain pages of the /api/papers endpoint, I sometimes receive a 500 error.

At the time of reporting, this was the case for page 5 of the production instance of the API. The error can be reproduced using

curl -X 'GET' \
  'https://api.episciences.org/api/papers?page=5' \
  -H 'accept: application/ld+json' \
  -H 'Authorization: Bearer <snip>'

The resulting error message is as follows:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8" />
    <meta name="robots" content="noindex,nofollow,noarchive" />
    <title>An Error Occurred: Internal Server Error</title>
    <link rel="icon" href="data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 128 128%22><text y=%221.2em%22 font-size=%2296%22>❌</text></svg>">
    <style>body { background-color: #fff; color: #222; font: 16px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; margin: 0; }
.container { margin: 30px; max-width: 600px; }
h1 { color: #dc3545; font-size: 24px; }
h2 { font-size: 18px; }</style>
</head>
<body>
<div class="container">
    <h1>Oops! An Error Occurred</h1>
    <h2>The server returned a "500 Internal Server Error".</h2>

    <p>
        Something is broken. Please let us know what you were doing when this error occurred.
        We will fix it as soon as possible. Sorry for any inconvenience caused.
    </p>
</div>
</body>
</html>

This behavior is not consistent. Sometimes, the endpoint spits out the proper JSON response.

I was unable to reproduce this on any of the 28 pages currently available on the pre-production instance of the API.

rtournoy commented 9 months ago

The server logs allowed us identify and fix on 2024-01-18 the reason we had random HTTP 500 errors. Thank you!