1591595 : Request failed with status code 404

Created: 2026-04-13T10:36:33Z - current status: new

Anonymized Summary:

A user reported two issues when working with JupyterHub (JHub) on the Maxwell cluster:

  1. Error when accessing files via JHub:
  2. A "Request failed with status code 404" error occurred when attempting to open files by clicking on them in JHub.
  3. The issue was temporarily resolved by logging out and back in.

  4. HDF5 file viewing issue:

  5. Attempts to view HDF5 file contents (likely from Dectris Eiger detectors) failed, though the exact error was not specified.

Files were stored on GPFS (General Parallel File System).


Possible Causes & Solutions:

1. 404 Error in JHub

  • Cause:
  • The 404 error suggests the Jupyter server could not locate the requested file, possibly due to:
    • A temporary disconnection between JHub and the GPFS storage.
    • A stale Jupyter session where the file path became invalid (e.g., due to GPFS mount issues).
    • A misconfigured kernel or environment (e.g., missing dependencies for HDF5 file handling).
  • Logging out/in may have reset the session, restoring access.

  • Solution:

  • Check GPFS connectivity: Verify that the GPFS mount (/gpfs/...) is accessible from the JHub session.
  • Restart the kernel: If the issue persists, restart the Jupyter kernel to clear any cached paths.
  • Inspect file paths: Ensure the file paths in the notebook are correct (e.g., absolute paths like /gpfs/...).
  • Review JHub logs: If the issue recurs, check the Jupyter server logs for errors (e.g., ~/.jupyter/jupyter_notebook.log).

2. HDF5 File Viewing Issue

  • Cause:
  • The HDF5 files (likely from Dectris Eiger detectors) use LZ4 compression, which requires:
    • The HDF5_PLUGIN_PATH environment variable to be set (pointing to /usr/lib64/hdf5/plugins).
    • Compatible HDF5 plugins installed on the Maxwell server.
  • If the variable is missing or the shell is misconfigured (e.g., (t)csh instead of bash), the files cannot be read.

  • Solution:

  • Set HDF5_PLUGIN_PATH:
    • For bash/zsh: bash export HDF5_PLUGIN_PATH=/usr/lib64/hdf5/plugins
    • For (t)csh: tcsh setenv HDF5_PLUGIN_PATH "/usr/lib64/hdf5/plugins"
  • Verify the shell: Run echo $SHELL to check the shell. If using (t)csh, switch to bash (type bash) or set the variable as above.
  • Test with hdfview: After setting the variable, try opening the file with hdfview or h5py in Python.

Additional Notes

  • If the files are on GPFS, ensure the JHub session has permissions to access them.
  • If the issue persists, consider using a standalone Jupyter server (via /software/tools/bin/jupyter-standalone.sh) for debugging.

Sources Used: 1. HDFView and Dectris Eiger Data 2. JupyterHub with Visual Studio Code