spacemanager: Fix extraction of null values

Target: trunk
Require-notes: no
Require-book: no
Acked-by: Paul Millar <paul.millar@desy.de>
Patch: http://rb.dcache.org/r/6509/
Restore compatibility with 2.6 pools

CHANGE_TIME is not available in 2.6 code and the enum can thus
not be deserialized. This is obviously a flaw in the design of
the FileAttributes class making it difficult to add new
attributes, but for now this patch restored pool compatibility
by not including that attribute by default.

Target: trunk
Require-notes: yes
Require-book: no
Acked-by: Paul Millar <paul.millar@desy.de>
Acked-by: Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
Patch: http://rb.dcache.org/r/6510/
spacemanager: Remove file count from space reservation list

The file count is way too expensive to retrieve.

Target: trunk
Require-notes: no
Require-book: yes
Acked-by: Paul Millar <paul.millar@desy.de>
Patch: http://rb.dcache.org/r/6511/
nfs: Prevent NFS door from starting if schema is not up to date

Although we do not want NFS doors to update the Chimera schema
(PnfsManager does that), we should still check whether the schema
is up to date.

Target: trunk
Require-notes: yes
Require-book: no
Acked-by: Paul Millar <paul.millar@desy.de>
Acked-by: Tigran Mkrtchyan <tigran.mkrtchyan@desy.de>
Patch: http://rb.dcache.org/r/6505/
spacemanager: Improve CLI errors

In case of lookups for specific entities, the EmptyResultDataAccessExcption
message contains enough information to describe the error. This patch avoids
that a lengthy causal chain of exceptions are printed to the shell for something
that must be considered a common error.

Target: trunk
Require-notes: no
Require-book: no
Acked-by: Paul Millar <paul.millar@desy.de>
Patch: http://rb.dcache.org/r/6513/
spacemanager: Fix NPE when creating infinite reservations

Target: trunk
Require-notes: no
Require-book: no
Acked-by: Paul Millar <paul.millar@desy.de>
Patch: http://rb.dcache.org/r/6514/
cells,ftp: Take care to initialize the CDC

Fixes several cases of the CDC not being initialized.

Target: trunk
Require-notes: no
Require-book: no
Acked-by: Paul Millar <paul.millar@desy.de>
Patch: http://rb.dcache.org/r/6516
spacemanager: Fix unlock of allocated files on delete

The code made the wrong assumption that having a pnfs id bound
to the record implies that it cannot be in ALLOCATED. Since assumption
is wrong.

Target: trunk
Require-notes: no
Require-book: no
Acked-by: Paul Millar <paul.millar@desy.de>
Patch: http://rb.dcache.org/r/6512/
spacemanager: Fix link group overallocation trigger

There is a database trigger that should prevent overallocation of link groups.
Over allocation can of course not be prevented as pools may go offline at any
time, but we can avoid that space manager increases its allocation beyond what
is available at a given moment in time.

The trigger fails a link group update if the available space is negative and
the amount of reserved space increases. This should allow reservations to be
decreased in size even when space is currently overallocated due to pools
being offline.

The existing check however fails for the use case of flushing files to tape:
The space consumed by flushed files is released back into the reservation. This
causes the reserved space in the link group to increase, but so does the free
space and the available space should thus be the same. The check however only
looks at whether the reserved space increases - not whether available space
decreases.

The fix is to look at the avaible space instead: Once negativ, no decrease in
available space is allowed. The challenge is that free space is updated
asynchronously - so the corresponding increase in free space may not be
reported until minutes later. The existing triggers already contained a
heuristic to decrease free space prior to the asynchronous update, but never to
increase it to avoid counting the same free space twice. The patch changes the
logic such that srmspace triggers both increase and decrease of free space in
the link group, however a before trigger on the link group ensures that only a
decrease is made persistent (thus still preventing counting free space twice).
The benefit is that the trigger can now get an accurate picture of changes in
available space. The change also makes the code more dry.

Target: trunk
Require-notes: no
Require-book: no
Acked-by: Paul Millar <paul.millar@desy.de>
Patch: http://rb.dcache.org/r/6515/
Revert "spacemanager: Fix extraction of null values"

This reverts commit 2ff9607ef0c725cac5cd14315cb1c723c5191654.
Revert "Restore compatibility with 2.6 pools"

This reverts commit 07fabbeffeb927a52c0d7fa2303808e1638ccb09.
Revert "spacemanager: Remove file count from space reservation list"

This reverts commit 415d3b53ffed07517f40ea1f510d1c48b1c266d6.
Revert "spacemanager: Fix unlock of allocated files on delete"

This reverts commit 8e8340a1a325dd0bc5f7d7e40faa3af9b0a64763.
Merge branch 'master' into 2.8-ndgf
[maven-release-plugin] prepare release 2.8.0-rc8+ndgf
[maven-release-plugin] prepare for next development iteration