GDMP Software
The GDMP software is availabe in form of source and binary RPMs or one can check out the code directly form the CVS Repository for GDMP code and instructions to check out code with read access are available. The current official GDMP release is GDMP 3.2.6 (see below). GDMP installations can be monitored using the GDMP Heartbeat Monitor.


GDMP Testsuite 

GDMP Version 4.0  (28 February 2003)

GDMP 4.0-0 binary RPM
GDMP 4.0-0 Client binary RPM
ReplicaCatalogue-gcc32dbg-4.0-0.i386.rpm
BrokerInfo-gcc32dbg-4.0-0.i386.rpm
GDMP 4.0-0 source RPM

CHANGES


GDMP Version 3.2.6  (12 November 2002)

GDMP 3.2-6 binary RPM
GDMP 3.2-6 Client binary RPM
GDMP 3.2-6 source RPM

GDMP Version 3.2-0 (7 October 2002)

GDMP 3.2-0 binary RPM
GDMP 3.2-0 Client binary RPM
GDMP 3.2-0 source RPM

GDMP 3.2-2-objy binary RPM
GDMP 3.2-2-client binary RPM

CHANGES


GDMP Version 3.1-1 (26 September 2002)

GDMP 3.1-1 binary RPM
GDMP 3.1-1 Client binary RPM
GDMP 3.1-1 source RPM


GDMP Version 3.1-0 (19 September 2002)
 
GDMP 3.1-0 binary RPM 
GDMP 3.1-0 Client  binary RPM
GDMP 3.1-0 source RPM

CHANGES to version 3.0


GDMP Version 3.0-11 (12 August 2002) 
 
GDMP 3.0-11  binary RPM  gdmp-3.0-11.i386.rpm
gdmp-objy3.0-11.i386.rpm
source RPM gdmp-3.0-11.src.rpm
GDMP 3.0-11 Client Installation binary RPM gdmp-client-3.0-11.i386.rpm
gdmp-objy-client-3.0-11.i386.rpm
Replica Catalogue C++ API and 
     command line interface
binary RPM ReplicaCatalogue-gcc32dbg-3.0-5.i386.rpm
source RPM ReplicaCatalogue-gcc32dbg-3.0-5.src.rpm
BrokerInfor C++ API and
     command line interface
source RPM BrokerInfo-gcc32dbg-3.0-2.src.rpm
binary RPM BrokerInfo-gcc32dbg-3.0-2.i386.rpm


GDMP Version 3.0-1 (17 May 2002) 
 
 
GDMP 3.0-1  binary RPM gdmp-3.0-1.i386.rpm
source RPM gdmp-3.0-1.src.rpm
GDMP 3.0-1 Client Installation binary RPM gdmp-client-3.0-1.i386.rpm
Replica Catalogue C++ API and 
     command line interface
binary RPM ReplicaCatalogue-gcc32dbg-3.0-1.i386.rpm
source RPM ReplicaCatalogue-gcc32dbg-3.0-1.src.rpm
BrokerInfor C++ API and
     command line interface
binary RPM BrokerInfo-gcc32dbg-3.0-1.i386.rpm
source RPM BrokerInfo-gcc32dbg-3.0-1.src.rpm

New Features: 

  • This release provides only a few bug fixes as regards GDMP 3.0. No User interfaces have been changed and thus GDMP 3.0-1 and GDMP 3.0.
    • Corrected problem of incompatibility of GDMP rpms with BrokerInfo and ReplicaCatalogue rpms.
    • Add create_gridmapfile script to generate VO specific grid-mapfiles and update the host grid-mapfile with the correct entries for the GDMP server. The script interrogates the MDS for SE host cert subjects.
    • There is no need to run a globus gatekeeper on the SE to run correctly GDMP on SE.

GDMP Version 3.0 (4 April 2002) 
 
 
GDMP 3.0  binary RPM  gdmp-3.0-0.i386.rpm
gdmp-objy-3.0-0.i386.rpm (Objectivity)
source RPM gdmp-3.0-0.src.rpm
gdmp-objy-3.0-0.src.rpm 
GDMP 3.0 Client Installation binary RPM gdmp-client-3.0-0.i386.rpm
gdmp-objy-client-3.0-0.i386.rpm
Replica Catalogue C++ API and 
     command line interface
binary RPM ReplicaCatalogue-gcc32dbg-3.0-0.i386.rpm
source RPM ReplicaCatalogue-gcc32dbg-3.0-0.src.rpm
BrokerInfor C++ API and
     command line interface
binary RPM BrokerInfo-gcc32dbg-3.0-0.i386.rpm
source RPM BrokerInfo-gcc32dbg-3.0-0.src.rpm

New Features: 

1.The GDMP server can use any host or user certificate that does not require a password. It is strongly 
    recommended to use the host certificate/key pair (which is the default one used in the configuration 
    step. The GDMP_Server cert (as it was used until version 2.1) is not used anymore. 

  2.Every client request is now delegated to a GDMP server that checks for authentication/authorisation and 
    then contacts the remote GDMP server that needs to trust the local server. Thus, GDMP now uses a 
    delegation mechanism for client server interaction. This also requires that GDMP servers rather than 
    single users are registered in the remote GDMP specific grid-mapfile. 

    A client will be authenticated once per connection. Once a connection b/w client and server is 
    established, only one authentication is needed (no more authentication per message/request). 

    User certificates only need to be entered into the local grid-mapfile of GDMP servers where they need 
    to have access to. For remote interaction between GDMP servers, the servers need to trust each other 
    and no user certificate is used. Thus, the grid-mapfile needs to have an entry of the remote GDMP 
    server accessing the local server. 

  3.New client/server messaging system is added. Now, for each request there will be an acknowledgement. 
    See the server log file gdmp_server_log.out for details. (It did not add any feature but just to make the 
    code easily maintainable.) 

  4.GDMP exists in the form of a full installation (GDMP server plus all client application) and a client 
    installation. 

  5.gdmp_replicate_get will now search for all the possible replicas for the file which have been published. 
    If a replica is not accessible or the GDMP server for that replica is down or the replica is not stagable on 
    the remote GDMP server, gdmp_replicate_get will go for the next replica to transfer. 

    Example: If a file with fileID "shahzad.fnal.gov_.home.data.file01" is available on 3 GDMP hosts gdmp1, 
    gdmp2 and gdmp3, the GDMP client will try to transfer this file from gdmp1. If gdmp1 is down or file is 
    not on disk and not stagable then gdmp client will skip this host and go for gdmp2 and so on. 

  6.A GDMP client is now independent of installation and storage directories for file/objectivity of a remote 
    GDMP server. Now, the remote GDMP administrator can change the installation directory of GDMP or 
    storage directories and he/she does not need to inform other GDMP sites about it. These attributes will 
    be obtained by the client from the GDMP server at run time. 

    However, we do not recommend to change the storage directories since these directory might be 
    stored in the Information Service (as it is the case for EDG). 

  7.C++ API to GDMP client commands 

  8.The command line tool gdmp_filter_catalogue does not exist anymore but now the filters can be flexibly 
    applied as command line arguments. 

  9.Hierarchical structure of GDMP configuration files that allow a single server to be used for multiple 
    Virtual Organisations. Instead of a single gdmp.conf file, there are now a gdmp.conf, gdmp.shared.conf 
    and gdmp.private.conf files. 

 10.``real'' multiple VO support: one GDMP server can server multiple VOs and listens only on one port. In 
    GDMP 2.1, we had several ports for each VO. 

 11.The directory utils has been changed to sbin. 

 12.Logging of the server output is new: all log information (stdout and stderr) is now in file 
    GDMP_INSTALL_DIR/var/gdmp_server_log.out. gdmp_server_log.err does not exist anymore. 

 13.new command line tools: gdmp_job_status, gdmp_replicate_put and gdmp_remove_local_file 

 14.changes of variables in the GDMP configuration file: 

        GDMP_FLATFILE_ROOT_DIR is now called GDMP_STORAGE_DIR 
        GDMP_OBJY_ROOT_DIR is now called GDMP_OBJY_STORAGE_DIR 
        GDMP_REP_CAT_FLATFILE_COLL_NAME is now called GDMP_REP_CAT_FILE_COLL_NAME 
        GDMP_REP_CAT_FLATFILE_COLL_URL is now called GDMP_REP_CAT_FILE_COLL_URL 

 15.several new and detailed examples have been added to the Sections  and 

 16.description of GDMP monitoring tool: GDMP Heartbeat Monitor added. 

 17.Command line tools for the C++ Replica Catalogue API have been provided and can be used 
    independently of GDMP to access the Globus Replica Catalogue. 

 18.Now it is possible to automatically create rpms using gmake. 

 19.The installation directory structure for supporting multiple VOs has been changed. 

 20.The configuration requires new grid-mapfiles to be installed in the VO specific directories. For EDG 
    only, a script to automatically create/update these files has been provided. Such a script requests a 
    gatekeeper to be installed on the SEs and the hostcert.pem to be user readeable. 

Note that GDMP 3.0 is not backwards compatible to any other previous GDMP versions. 
 
 

GDMP Version 2.1 (6 February 2002
 
 
GDMP 2.1  binary RPM (threaded) gdmp-2.1-0.i386.rpm 
  gdmp-objy-2.1-0.i386.rpm (Objectivity)
source RPM (threaded) gdmp-2.1-0.src.rpm
gdmp-objy-2.1-0.src.rpm (Objectivity)
Replica Catalogue C++ API binary RPM (non-threaded) ReplicaCatalogue-gcc32dbg-2.1-0.i386.rpm
source RPM (non-threaded) ReplicaCatalogue-gcc32dbg-2.1-0.src.rpm
BrokerInfo C++ API binary RPM (non-threaded) BrokerInfo-gcc32dbg-2.1-0.i386.rpm
source RPM (non-threaded) BrokerInfo-gcc32dbg-2.1-0.src.rpm

If you use GDMP outside European Datagrid setup (e.g. PPDG), please read the following note. If you use GDMP with multiple VOs, please read the multiple VO note below. 
New Features: 
 

  • GDMP depends on Globus Toolkit 2.0 Beta 21 (EDG distribution)- the source code can also be built and installed on Globus 2.0b (Globus distribution)
  • support for multiple VOs: configure_gdmp can be used to configure several VOs on one StorageElement (see User Guide Section 3.5)
  • multiuser support via file access group permissions: in version 2.0 several GDMP directories like etc, var and tmp needed to be writable for each single user issuing GDMP client commands. Through file access permissions based on group IDs, access to these directories as well as to the GDMP Storage root directories is managed. This is basically done with the updated configuration script configure_gdmp (see User Guide Section 5)
  • gdmp_get_catalogue is fixed
  • additional documentation for GDMP usage in the European DataGrid Testbed (see HTTP link in User Guide Section 5)
  • some fixes from Replica Catalogue updates: GDMP now checks if the path in the Replica Catalogue is used correctly
  • fix for lock server usage when using Objectivity
  • RPM specifications for Resource Broker and Replica Catalogue have been added to the source RPM (rb.spec.in and rb.spec.in).
  • the file ``bootstrap'' has been added to the source RPM
  • the files README and CHANGES have been added to the source RPM
  • the dependency on rpmlib <= 3.0.4 has been removed when installing the binary rpms.
  • the compiler used to compile binary RPMs is gcc 2.95.2
  • User Guide Appendix F: Trouble shooting for the GDMP server configuration
  • instructions for installing source RPM as non root user (see User Guide Section 3.1.1)
Note for GDMP usage outside European DataGrid
The current version of GDMP is adaped to the European DataGrid testbed setup which requires the C++ compiler version 2.95.2 to be installed in /usr/local/bin. If you want to install the code starting from SOURCE RPMs and you do not have the compiler at that location, you need to delete the first 5 lines of makefile_header after the installation of the source RPMs: 

CC = /usr/local/bin/gcc
CPP = /usr/local/bin/gcc -E
CXX = /usr/local/bin/c++
CXXCPP = /usr/local/bin/c++ -E
LD = /usr/local/bin/gcc

However, you must make sure the use the compiler version 2.95.2. 

Multiple VO note:
After you have installed GDMP with the RPM or from the source code and run configure_gdmp, you need to copy the file gdmp_catalogue_cleanup into the bin directory of the VO. For example, GDMP is installed under /opt/edg/bin and you have set up the VO CMS under /opt/edg/cms, you need to do: 

cp /opt/edg/bin/gdmp_catalogue_cleanup /opt/edg/cms/bin 
 

Known missbehaviour in multiple VO usage:

  • Make sure that the local gdmp.conf file contains the correct port for your VO. In principle, one can subscribe to a GDMP server of a different VO and publish files. This will be fixed in version 3.0 where a client-server delegation checks that a user is part of a VO!


GDMP Version 2.0 (24 October 2001)
 
 
RPMs different versions
binary RPM without Objectivity
binary RPM with Objectivity
source RPM without Objectivity
source RPM with Objectivity
Replica Catalogue C++ API binary RPM (non-threaded)
Replica Catalogue C++ API source RPM (non-threaded)
binary BrokerInfo
source BrokerInfo
CVS tag for check out gdmp_2_0

New features: 

  • GDMP depends on Globus Toolkit 2.0 Alpha Release
  • The GridFTP client library is used instead of NC-FTP.
  • A new tool gdmp_cert_update allows to switch from a CERN to a Globus certificate for the GDMP server
  • In gdmp.conf, three new variables have been added: GLOBUS_LOCATION, OBJECTIVITY_DIR, ORBACUS_DIR




GDMP Version 2.0alpha (30 September 2001) 

    GDMP 2.0alpha: get the package from our CVS repository via: 

    cvs -d :pserver:anonymous@cdcvs.fnal.gov:/cvs/cd_read_only login
    When prompted for a password, type : anoncvs
    cvs -d :pserver:anonymous@cdcvs.fnal.gov:/cvs/cd_read_only checkout -r gdmp-2-0-alpha gdmp

We provide several versions of RPMs (source and binary, with and without Objectivity):


new features and improvements: 

  • GDMP is now a generic file replication tool and files of abritrary file format can be transferred.
  • An additional notification system for file transfers is added.

  • Most of the command line tools have new short, single letteroption names instead of entire words, e.g. gdmp_ping -r instead of gdmp_ping -remotehost. 
  • The tool previously called gdmp_cleanup has been renamed to gdmp_catalogue_cleanup.
  • The tool previously called gdmp_replicate_file_get has been renamed to gdmp_replicate_get.
  • A new tool gdmp_register_local_file has been added that needs to becalled before gdmp_publish_catalogue
  • A local file catalogue keeps track of all files GDMP manages locally
  • The tool gdmp_setup is no longer available as a self-contained installation and configuration procedure is now used.
  • Instead of environment variables, a GDMP configuration file (gdmp.conf) is used.
  • The staging scripts called through GDMP_STAGE_TO_MSS and GDMP_STAGE_FROM_MSS now require two arguments instead of one.
  • A generic replica catalogue API in C++ for the Globus Replica Catalogue is provided.
  • An appendix on the practical usage of the Grid Security Infrastructure has been added.




We keep track of all the versions of GDMP on this page. The GDMP source code is available on four different platforms: Solaris 2.6, 7 and Linux RedHat 6.1 abd 6.2. The code is identical for RedHat 6.1 and Solaris 7. The version for Solaris 2.6 has only a minor change (in the file $GDMP_INSTALL_DIR/ControlMsgs/gdmp_communication.C). 
 
 

GDMP Version 1.2.2 (27th March 2001) - Please update the server certificate as documented !!! 

User Documentation - and for more details (this is only necessary for code developers): Doxygen code documentation
Solaris 7 and RedHat 6.1
Solaris 2.6



GDMP Version 1.2.1 (15 February 2001) 

The user documentation is the same as for GDMP version 1.2 (please see below).
Solaris 7 and RedHat 6.1
Solaris 2.6

This version contains some important error fixes from version 1.2.
GDMP Versions 1.2 (Jan 01 2001)

User Documentation of the release can also be found in the directory tree. Please also refere to the detailed document for GDMP internals
Solaris 7 and RedHat 6.1
Solaris 2.6
    new features and improvements: 

  • Support for staging files from a Mass Storage System (MSS) to disk and purging files from disk to MSS.
  • A new tool gdmp_cleanup can be used for error recovery.
  • The filter option has been changed to enable positive and negative filters. The corresponding tools gdmp_replicate_file_get, gdmp_get_catalogue and gdmp_publish_catalogue also support this feature.
  • Support for replicating entire directory structures into a single directory at the receiving site. Also added support for automatic creating the whole directory structure on the destination similar to the one at the source.
  • A new tool called gdmp_ping has been included that allows to check if a GDMP server is currently listing for incoming requests on a specific port.
  • Support for unique entries in the host list.
  • File time-stamps are made consistent between the source and the destination. (Objectivity attach changes the modification time stamp which has to be corrected)
  • The federation catalogue is checked before adding a file to the import catalogue.
  • gdmp_replicate_file_get now includes a "-port" option for single transfers.
  • Automatic GDMP installation with the INFN Installation toolkit.
  • Some minor bugs of the release 1.1 have been fixed.
GDMP Version 1.1 (6th October 2000)
Documentation for GDMP 1.1 (ps format) 
Code Solaris 7 and RedHat 6.1
Code Solaris 2.6
GDMP Version 1.0 (4th September 2000)
Documentation for GDMP 1.0 (ps format) 
Code Solaris 7 and RedHat 6.1
Code Solaris 2.6
The European Organization for Nuclear Research
Feedback and questions concerning this site should be directed to 
the WP2 mailinglist EDG-WP2@cern.ch
Last updated October 1, 2002