http: add minimal HEAD support in the mover

some clients do send HEAD after redirect

Acked-by: Gerd Behrmann
Target: master
Require-book: no
Require-notes: no
(cherry picked from commit 8040e1ec8c639824ec283b4d2a4dc4b135cc6186)
Signed-off-by: Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
srm: Fix lock congestion

To support SRM_FILE_BUSY, both get and ls requests scan for active
put requests. This causes lock congestion as reading the SURL of
the put request acquires a read lock, while abort and put done calls
are processed with a write lock (and these calls trigger callouts
to pnfsmanager).

The read lock to access the surl is however unneeded as surl is a
final field. This patch removes the read-lock for surl access. The
patch also removes the read-lock on several other final fields, as
well as marking several fields that are not modified as final.

Target: trunk
Request: 2.9
Request: 2.8
Request: 2.7
Require-notes: yes
Require-book: no
Acked-by: Paul Millar <paul.millar@desy.de>
Patch: https://rb.dcache.org/r/7054/
(cherry picked from commit 3ac48ab7b5e81965f900b9546e53f6d0e929a7b0)

Conflicts:
	modules/srm-server/src/main/java/org/dcache/srm/request/CopyFileRequest.java
	modules/srm-server/src/main/java/org/dcache/srm/request/PutFileRequest.java
xrootd,nfs: Add support for space management

Xrootd and NFS doors fail to include the space manager in pool manager
requests, thus failing to support space management. Even though the
protocols don't have explicit support for space management, they may
still be used with the WriteToken tag or with implicit reservations.

If space manager is disabled, the message flow is unaffected. Even if
space manager is enabled, read requests or writes to unmanaged space
are simply passed through in space manager (which when space manager
is placed in the same domain as pool manager is fairly cheap).

Target: trunk
Require-notes: yes
Require-book: yes
Acked-by: Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
Patch: https://rb.dcache.org/r/7049/
Request: 2.9
Request: 2.8
Request: 2.7
(cherry picked from commit 93e94bee1bf3773cd62b19f0da556ed05e14ee89)
Merge pull request #627 from gbehrmann/fix/2.8/rb7054

Fix/2.8/rb7054
Merge pull request #631 from gbehrmann/fix/2.8/rb7049

Fix/2.8/rb7049
http: fix multipart response size

Acked-by: Paul Millar
Target: master
Require-book: no
Require-notes: no
(cherry picked from commit 5c63d0e26a408eacd1c5d8d8398e47fd3eaad045)
Signed-off-by: Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
Merge pull request #637 from kofemann/fix-davix-2.8

Fix davix 2.8
http: do not use new API

fixes regressions introduced with davix fix backport

Acked-by:
Target: 2.8, 2.7, 2.6
Require-book: no
Require-notes: no
Merge pull request #642 from kofemann/fix-http-2.8

http: do not use new API
Fix issue with incorrect determination of whether or not a string is encoded
by replacing URLDecoder with import org.springframework.web.util.UriUtils
as the former does not handle '+' character.

    Ticket: #8356
    Acked-by: Albert Rossi <arossi@fnal.gov>
    Target: trunk
    Request: 2.9
    Request: 2.8
    Request: 2.7
    Request: 2.6
    Require-book: no
    Require-notes: yes

RELEASE NOTES

Fix bug effecting ability to stage files from Enstore if file names
contain '+' character.
(cherry picked from commit d12513ca3f760c175b84ea7df90601f403840aeb)

Conflicts:
	modules/dcache-chimera/src/main/java/org/dcache/chimera/namespace/ChimeraEnstoreStorageInfoExtractor.java
Merge pull request #648 from DmitryLitvintsev/fix/2.8/8356

Fix/2.8/8356
Fix ArrayIndexOutOfBoundsException when processing
multiple surls invoking srmget.

        Ticket: #8083
        Acked-by: Christian Bernardt <christian.bernardt@desy.de>
        Target: trunk
        Request: 2.9
        Request: 2.8
        Request: 2.7
        Request: 2.6
	Request: 2.2
        Require-book: no
        Require-notes: yes

    RELEASE NOTES

Fix ArrayIndexOutOfBoundsException when processing
multiple surls invoking srmget. Addresses RT #8083
(cherry picked from commit e73977e85d6708cdf0aa23268ef1113c738f3b09)
Merge pull request #652 from DmitryLitvintsev/fix/2.8/8083

Fix/2.8/8083
pool: log with error if checksum scanner gets an IO error

Ticket: #8181
Acked-by: Karsten Schwank
Target: master, 2.9, 2.8, 2.7, 2.6
Require-book: no
Require-notes: no
(cherry picked from commit 5026cf9052b4170a54fc0c42389eba3ce40a52f3)
Signed-off-by: Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
Merge pull request #663 from kofemann/fix-css-2.8

pool: log with error if checksum scanner gets an IO error
[maven-release-plugin] prepare release 2.8.9
[maven-release-plugin] prepare for next development iteration
cells: remove System time dependency in unit-test

The CellNameServiceRegistryTests class provides unit-tests for the
CellNameServiceReigstry.  One of these tests verifies that expired
well-known cells registration is removed successfully, leaving the
existing cells intact.

This patch refacts CellNameServiceRegistry slighly to allow a
subclass to adjust its concept of time.  This is used to provide a
reliable simulated flow of time in the unit-tests, removing the
need for a sleep statement.

Target: master
Patch: https://rb.dcache.org/r/7090/
Acked-by: Tigran Mkrtchyan
Request: 2.9
Request: 2.8
Request: 2.7
Request: 2.6
Merge pull request #668 from paulmillar/fix/2.8/cns-unit-tests

cells: remove System time dependency in unit-test
(2.8) webadmin: fix regression in alarm deletion filter

Patch 6344 introduced a regression in the webadmin alarms
management which prohibits the deletion of entries.

See http://rb.dcache.org/r/6344.

which forced a range limit on the number of
entries returned by a query.  JDO does not allow
a range to be specified this way on a deletion query,
but this case was overlooked.

This patch remedies the oversight.

Testing:

Deployed with patch; successfully deleted checked entries from table.

Target: 2.9
Request: 2.8
Request: 2.7
Request: 2.6
Require-book: no
Require-notes: yes
Acked-by: Karsten
Acked-by: Paul
Committed: 37407965bbcfe197fd9eaaba894d39cfcb1113d1

RELEASE NOTES:  Fixes a regression in the webadmin alarms
page preventing the deletion of entries from the alarm
table.