Release notes

GAMS Engine 21.06.09

New features

  • Quotas introduced. Quotas allow limiting the solve time and disk usage of users or groups of users.
  • Users can now be assigned to user groups. User groups allow you to see all other Engine users within your groups.
  • Admins can now get a disk usage report via the sigusr1 signal.
  • Admins can now manually trigger housekeeping via the sigusr2 signal.

Bug fixes

  • Improve performance when listing jobs with stream entries and when retrieving a single job with text entries
  • Fix issue that caused the accumulation of intermediate files.
  • Fix issue related to canceling dependent Hypercube jobs.
  • Containers connecting to PostgresSQL have been made more robust against connection failures.
  • API Documentation updated to solve issues in the auto-generated Python Client.
  • /cleanup/results enpoints: Operation ids added for auto-generated clients: listResults and removeResults.

API changes

  • DEPRECATED endpoint: GET /namespaces/permissions/me, use GET /namespaces/ instead.
  • DEPRECATED endpoint: DELETE/GET/PATCH/POST /namespaces/{namespace}/{model}, use /namespaces/{namespace}/models/{model} instead.
  • DEPRECATED endpoint: GET /namespaces/{namespace}/permissions/me, use GET /namespaces/{namespace}/permissions instead.
  • New endpoint: DELETE/GET/PUT /usage/quota available to modify user quotas.
  • New endpoint: DELETE/GET/PUT /namespaces/{namespace}/disk-quota available to modify namespace disk quotas.
  • New endpoint: DELETE/GET/POST /namespaces/{namespace}/user-groups available to delete/get/create user groups.
  • New endpoint: DELETE/POST /namespaces/{namespace}/user-groups/{label} available to change user groups of users.
  • New endpoint: GET /namespaces/{namespace}/permissions added to get permissions of a user on a namespace.
  • GET /namespaces/ is now accessible by inviters and users as well (not just admins).
  • Operation id for endpoint: POST /auth/login added: createJWTTokenJSON.
  • Updates in models
    • GET /version endpoint returns a new field in_kubernetes to indicate that Engine is running in Kubernetes (Kubernetes version is not released yet).
    • GET /cleanup/results has old_username field added to user object.
    • GET /hypercube/ returns a new field labels that returns the labels assigned to the job.
    • GET /usage/ now also returns new field labels of (Hypercube) jobs.
    • POST /hypercube/ returns new field quota_warning that lists the quotas that are at least 80% used.
    • POST /jobs/ returns new field quota_warning that lists the quotas that are at least 80% used.
    • GET /namespaces/permissions/me returns a new field disk_quota for the namespaces.
    • GET /namespaces/ returns a new field disk_quota for the namespaces.
    • GET /namespaces/{namespace} also returns length (size) of the models now.
  • Updates in request parsers
    • Admins can set quotas for namespaces while creating them: POST /namespaces/{namespace} accepts query parameter disk_quota.
  • Updates in responses
    • (Hypercube) job creation may fail with status code 402 to indicate that at least 1 quota has been exceeded.
    • Download/delete job result documentation model for 404 was incorrect, and changed to correct ones.
    • Uploading a new model may fail with 402 to indicate that namespace quota has been exceeded.
    • Patching an existing model may fail with 402 to indicate that namespace quota has been exceeded.

GAMS Engine 21.06.03

Update GAMS to version 35.2.0.

GAMS Engine 21.05.04

Update GAMS to version 35.1.0.

GAMS Engine 21.03.19

  • Fix issue that caused jobs to not get canceled when the GAMS process creates another GAMS process.

GAMS Engine 21.03.12

  • listJobs with show_only_active set now also returns jobs that are waiting for dependencies.
  • Inviters now have access to jobs submitted by invitees.
  • The Engine UI now has the option to display only jobs that are currently active.
  • Users can change registered models' files, arguments, inex file, run filename via PATCH /namespaces/{namespace}/{model}
  • Listing models provides run filename information as well
  • Deprecated creating JWT token via basic auth, use the other option instead
  • Users now can specify expiration time for JWT token, defaults to 4 hours
  • Dependency checker, hcube appender, hcube unpacker logging format changed
  • Restarting worker now handled by Container Runtime in connection error

GAMS Engine 21.02.03

First official release of GAMS Engine.