Submitted by furano on Tue, 09/27/2016 - 12:10


we just pushed the latest versions of the core components of DPM to EPEL-testing. These
should be already available in the repositories, or will appear in the various
mirrors in the next one or two days. We encourage sysadmins to test this release and give
feedback before it's promoted to the EPEL stable repository.

This is an important release that keeps the compatibility with the past while adding
many features. What follows are the highlights and the release notes.

Fabrizio Furano, on behalf of the DPM team

============ Highlights

First internal release of DOME, the REST core for DPM
When using domeadapter dpm,dpns,libshift,rfio,CSec,SRM become optional
DMLite API improvements (C and C++) for dealing with space reporting
Performance improvement in uploading small files
All components passed to boost 1.48 (fixes a few nasty bugs in boost)
Report available bytes as per rfc4331
Tons of additions to dmlite-shell (including space reporting and DPM config)
Great functional test program dpm-tester
Now dmlite also produces the DPM metapackages (into EPEL). No need for external repos anymore for metapackages
Good interplay DOME vs legacy LCGDM on space reporting
Implement volatile filesystems and file pulling in DOME
No more crazy libgridsite session files using HTTPs

============ Release notes

Release Notes - LCGDM Development - Version DPM XROOTD 3.6.1

** Bug
* [LCGDM-2021] - Compile dpm-xrootd with the same boost used in dmlite (1.48)

** Improvement
* [LCGDM-1993] - Don't unlock twice a mutex in XrdDmStackFactory::create()

Release Notes - LCGDM Development - Version LCGDM 1.9.0

** Task
* [LCGDM-2062] - Create new dpmhead and dpmdisk packages

** Improvement
* [LCGDM-1963] - Add the directory used space code to the DPM daemon putdone (through DPNS)
* [LCGDM-2044] - Make the DPM daemon honour token space modifications made by external progs

** Incident
* [LCGDM-1966] - Error Copying files via rfcp

Release Notes - LCGDM Development - Version DPM DSI 1.9.8

** Task
* [LCGDM-2136] - DPM-DSI systemd support
* [LCGDM-2153] - Unretire dpm-dsi and release 1.9.8 with systemd support to Fedora Master/F25

Release Notes - LCGDM Development - Version DPM DSI 1.9.9

** Improvement
* [LCGDM-2165] - Use getChecksum in dpm-dsi

Release Notes - LCGDM Development - Version DMLite 0.8.0

** Bug
* [LCGDM-1850] - dpm-replicate exit codes
* [LCGDM-1985] - In dome_put, also check the max free space in the quotas
* [LCGDM-2045] - DomeCore::dome_getidmap should implement the mapping from the DB
* [LCGDM-2081] - Dome should be run as dpmmgr, not root on cc7
* [LCGDM-2089] - Passing a single char in a prepared statement confuses the db
* [LCGDM-2095] - Extensible::serialize results in a crash if an empty vector was stored inside
* [LCGDM-2096] - dome_statpool returns no info for pools without filesystems
* [LCGDM-2106] - INodeMySql::openDir can potentially leak connections
* [LCGDM-2107] - File pulling scripts should be runnable by everyone, not just root
* [LCGDM-2108] - State transitions in the internal queue should not go backwards
* [LCGDM-2137] - replicate via HTTP: replicated pfn misses the file name if user passes a filename to replicate with a final "/"
* [LCGDM-2152] - Replication: no permisisons to write to quotatoken
* [LCGDM-2157] - Make dmliteadapter disk able to set file size and checksums from disk servers
* [LCGDM-2159] - Task executor is leaving zombies behind
* [LCGDM-2161] - pooladd should include the pool type as parameter ( as before ) + space type
* [LCGDM-2170] - Browser listing through domeadapter without memcache is broken
* [LCGDM-2174] - Checksumming many files in parallel apparently deadlocks the head queue
* [LCGDM-2176] - SEGV in the queue when loading the system with checksum requests
* [LCGDM-2179] - quota-available-bytes always reported as 0
* [LCGDM-2183] - DomeMySql::getSpacesQuotas should empty the quotatoken map before starting
* [LCGDM-2186] - A new quotatoken should not have empty uuid (s_token)

** Epic
* [LCGDM-1894] - Allow reporting free space for a dir by making additions to the dmlite API and using them from lcgdm-dav
* [LCGDM-1901] - First internal release of DOME, the REST core for DPM

** New Feature
* [LCGDM-1895] - Add a C API func to get the free space for a dir
* [LCGDM-2154] - Implement method to calculate used space of quotatokens

** Task
* [LCGDM-1908] - Implement the adapterDOME plugin
* [LCGDM-1909] - Implement a client class for DOME, based on the Davix conn pool and wrapping the calls
* [LCGDM-1914] - dpm_db migration script
* [LCGDM-1933] - Make dmlite compile without warnings
* [LCGDM-1934] - Implement the Dome CLI to easily test the functionality offered
* [LCGDM-2004] - Merge the dev branch of DOME into the trunk
* [LCGDM-2027] - Implement Catalog::getCehcksum (base class)
* [LCGDM-2033] - Make DOME update the space token occupied space on a putdone
* [LCGDM-2036] - Move the creation of the dpm metapackages from lcgdm.spec to dmlite.spec
* [LCGDM-2058] - Implement extendedStatByRFN in domeadapter
* [LCGDM-2061] - wrong dependency towards davix ?
* [LCGDM-2062] - Create new dpmhead and dpmdisk packages
* [LCGDM-2071] - replace dpm-python with Dome in dmlite-shell and implement new quotatoken methods
* [LCGDM-2073] - dome_setquotatoken: Add parameter to specify which groups can write into a quotatoken
* [LCGDM-2076] - Explore the possibility of an exception-safe extendedStat
* [LCGDM-2092] - Update the sql file containing the db creation
* [LCGDM-2093] - Install the dmlite scripts into /usr/share/dmlite
* [LCGDM-2099] - Implement dome_modifypool
* [LCGDM-2100] - Use modifypool in the shell
* [LCGDM-2101] - dome_modifyfs/addfs : accept only valid values for s_type
* [LCGDM-2104] - Implement dome_makespace
* [LCGDM-2163] - Drain commands and readonly FS calls
* [LCGDM-2173] - modify quotatokenget

** Improvement
* [LCGDM-2074] - Add the file system status (RO, disabled, ... ) to dome_addfstopool
* [LCGDM-2075] - Implement the call dome_modifyfs
* [LCGDM-2078] - Use the uuid as key in the dome_getquotatoken response
* [LCGDM-2082] - Allow dome_setquotatoken to also set the uuid of the token and the groups
* [LCGDM-2083] - Doublecheck index and constraints in dpm_space_reserv
* [LCGDM-2109] - Log queue token timeout (and purging) at level 1
* [LCGDM-2114] - Print the full path in case of file not found
* [LCGDM-2123] - dmlite-shell triggering GET requests to delete files
* [LCGDM-2124] - Let's try to avoid systematic timeouts, at least in the shell
* [LCGDM-2127] - Probable race condition: the first dome_put after getFileSystems may fail
* [LCGDM-2128] - dmlite-shell misses the parm 'getparentdirs' in the request dome_getquotatoken
* [LCGDM-2156] - Notify checksum and file pulling queues as soon as a previous job has been completed
* [LCGDM-2168] - Conflict with the dpm-xrootd versions built before 0.8.0
* [LCGDM-2182] - Implement dome_modquotatoken
* [LCGDM-2184] - Add to dome_getquotatoken a flag that outputs ALL of them
* [LCGDM-2185] - dome_setquotatoken should be able to also set the groups of the quotatoken
* [LCGDM-2188] - Show s_token in quotatokenget output
* [LCGDM-2190] - quotatokenmod should be able to change only a few parameters