StoRM v. 1.11.18

Released on 07.08.2020.

Description

This release introduces the support for CentOS 7 for all StoRM components.

It also provides fixes to some outstanding bugs, in particular:

  • fixes errors on published storage space occupancy in case multiple storage area shares the same VO;
  • fixes not published WebDAV endpoints when latest logic is used;
  • fixes not dropped Authorization header in WebDAV TPC redirects;
  • fixes leaked file descriptors when Conscrypt is enabled on StoRM WebDAV;
  • sets correctly HTTP content-length for large files;
  • fixes errors on transferred files through GridFTP that leave empty files with an adler32 checksum for a non-empty file;
  • fixes KillMode on GridFTP systemd unit.

It also provides several improvements, in particular:

  • fixes wrong ERROR log messages when file does not exist on srmRm requests;
  • changes the way info provider checks if Backend is running;
  • introduces a Background DU Service (disabled by default) that periodically updates the storage space info for non-GPFS storage areas (read more info here);
  • adds Date and thread pools metrics in the metrics logged info;
  • updates spring boot to 2.2.6 release for StoRM WebDAV;
  • adds SystemD support for StoRM Backend and StoRM Frontend.

Released components

Component Version Platform
StoRM Backend 1.11.18 centos6 centos7
StoRM Frontend 1.8.13 centos6 centos7
StoRM WebDAV 1.3.0 centos6 centos7
StoRM GridFTP 1.2.4 centos6 centos7
StoRM Native Libs 1.0.6 centos6 centos7
StoRM Info Provider 1.8.2 centos6 centos7
YAIM StoRM 4.3.13 centos6 centos7
CDMI StoRM 0.1.1 centos7
StoRM XMLRPC-C 1.39.12 centos7

Bug fixes

  • [STOR-1102] - Investigate errors on transferred files through GridFTP that leave empty files with an adler32 checksum for a non-empty file
  • [STOR-1176] - SrmRm file does not exist should not be logged as ERROR
  • [STOR-1186] - Set KillMode to control-group and not process to avoid orphan transfer processes on StoRM GridFTP
  • [STOR-1197] - StoRM Webdav should drop Authorization header in TPC redirects
  • [STOR-1207] - StoRM WebDAV leaks file descriptors when Conscrypt is enabled
  • [STOR-1212] - Change the way Info Provider checks if Backend is running
  • [STOR-1213] - WebDAV endpoint not published in case the latest logic is used
  • [STOR-1214] - Wrong storage space values are published in case multiple storage area have the same VO
  • [STOR-1217] - StoRM WebDAV does not set content-length header correctly for large files
  • [STOR-1203] - Conscrypt should be disabled by default
  • [STOR-1252] - Align the namespace.xml generated via YAIM StoRM with the one produced by the Puppet module
  • [STOR-1219] - Fix ACL setting problems on storm-native-libs built against GPFS > 3.4

Enhancements

  • [STOR-892] - Log as ERROR only internal errors
  • [STOR-932] - Make Background DU configurable to run periodically in order to update used space info on db
  • [STOR-1036] - Fix useless verbosity in log
  • [STOR-1170] - curl_global_init should be called before spawning threads
  • [STOR-1172] - Upgrade jackson-databind to version 2.9.10.1 or later
  • [STOR-1174] - Include thread pool and jetty handler metrics reporting in storm-backend-metrics log
  • [STOR-1175] - Understand what is the purpose of the recallBuckets map and whether it can be removed
  • [STOR-1185] - Allow redirection of LCMAPS logging to a particular file (instead of syslog) through the puppet module
  • [STOR-1189] - Separate java.io.tmpDir jvm variable from generic jvm options and move it inside systemd unit
  • [STOR-1198] - Add Date to Backend's metrics log
  • [STOR-1201] - Update spring boot to 2.2.6 release
  • [STOR-1206] - StoRM WebDAV out and err file missing in CENTOS 7 configuration
  • [STOR-1216] - Include mysql-connector-java into maven dependencies
  • [STOR-1089] - SystemD support for StoRM Backend
  • [STOR-1090] - SystemD support for StoRM Frontend

Installation

Upgrade StoRM repository

This release introduces a new StoRM production repository migration. The old stable repository won’t be updated with this release.

If you want to install StoRM v1.11.18 update your repositories:

yum-config-manager --disable storm-stable-centos6 storm-beta-centos6 storm-nightly-centos6

and add the new ones:

yum-config-manager --add-repo https://repo.cloud.cnaf.infn.it/repository/storm/storm-stable-centos6.repo
yum-config-manager --add-repo https://repo.cloud.cnaf.infn.it/repository/storm/storm-beta-centos6.repo
yum-config-manager --add-repo https://repo.cloud.cnaf.infn.it/repository/storm/storm-nightly-centos6.repo
yum-config-manager --disable storm-nightly-centos6

or, in case of RHEL7:

yum-config-manager --add-repo https://repo.cloud.cnaf.infn.it/repository/storm/storm-stable-centos7.repo
yum-config-manager --add-repo https://repo.cloud.cnaf.infn.it/repository/storm/storm-beta-centos7.repo
yum-config-manager --add-repo https://repo.cloud.cnaf.infn.it/repository/storm/storm-nightly-centos7.repo
yum-config-manager --disable storm-nightly-centos7

All the links to the repository files can be found in the Downloads section.

Upgrade/Install packages

On RHEL6, update packages:

yum update storm-backend-server storm-frontend-server storm-webdav storm-globus-gridftp-server yaim-storm

and run YAIM.

On RHEL7, to install and configure StoRM components you can use StoRM Puppet module. Read more at: