Skip to main content

1.24.0rc1

Release Candidate

This is a release candidate! Only to be used in testing environments!

Upgrade Instructions

This feature release requires a database schema upgrade. Please consult the documentation about upgrading your database schema.

The following changes are necessary and are covered by the alembic upgrade head command:

  1. Adding missing indices which were only available as functional oracle indices. For oracle databases installed with the schema.sql definition, these should already exist (Please verify). (Alembic revision 8ea9122275b1)

    • Adding SUBSCRIPTIONS_STATE_IDX on subscriptions table
    • Adding CONTENTS_RULE_EVAL_FB_IDX on contents table
    • Adding REPLICAS_STATE_IDX on replicas table
    • Adding BAD_REPLICAS_ACCOUNT_IDX on bad_replicas table
    • Adding REQUESTS_DEST_RSE_ID_IDX on requests table
  2. Update of REQUESTS_STATE_CHK constraint in requests table in preparation for Conveyor Preparer (Alembic revision d23453595260)

Important changes

  1. This Rucio release line drops support for Python 2.7 on the Server/Daemon Side. Only Python 3.6, 3.7 and 3.8 are supported from now on. Rucio clients are still Python 2.7 compatible for the foreseen future (EOL will be announced). If your environment is requiring to run Rucio under Python 2.7 we recommend the Rucio 1.23 LTS release line, which will be supported until 2022.

  2. Due to a fix (#3994) in the salting-algorithm used for Python 3 all hashes for stored passwords in Rucio need to be re-collected. This only affects password authentication, X509, Kerberos or OIDCS authentication is unaffected.

General

Features

  • Core & Internals: Add check that alembic version of DB works with rucio release #1157
  • Core & Internals: Some function based indexes missing in models.py #2714
  • Core & Internals: Policy packages should support multi-VO Rucio installations #3542
  • Core & Internals: Provide a bulk method for setting metadata #3847
  • Database: Upgrade SQLAlchemy version #4055
  • Replicas: Allow declaring bad replicas via RSE/DID pair and REST API #4099
  • Transfers: Re-Write of Conveyor-Throttler and the throtteling system #4056

Enhancements

  • Core & Internals: Make tool execution-dir independent #4113
  • Core & Internals: Hardcoded atlas-adc-ddm-support eMail address for rule approval #4164
  • Deletion: all_rses option redundant for light and dark reaper #3933
  • Release management: Upgrade information in setup.py (1.24.0) #4120
  • Release management: 1.24 Dependency upgrade #4157
  • Release management: Python memcached package #4169
  • Replicas: Set geoip as default sorting algorithm in list_replicas #4017

Bugs

  • Authentication & Authorisation: Userpass authentication not backwards compatible nor unicode capable #3994
  • Clients: list_replicas returns a generator with an empty string when there are no replicas #2517
  • Core & Internals: Clean URLs coming from AWS #4159
  • Core & Internals: S3 endpoints in TPC must use s3s:// instead of s3:// #4173
  • DIRAC: Bug in Belle II permission for dirac #4174
  • Release management: Security upgrade for oic dependency #4181

Clients

Enhancements

  • Clients: Rucio upload with rse_expression #4129

WebUI

Bugs

  • WebUI: sorting of column of type datetime in datatable broken #1771