When we build software for the VDT, we patch Globus and Apache.
To build Globus for VDT 1.9.0, we check out Globus 4.0 using the
globus_4_0_5 tag then we apply the patches that follow. If you
like, you can look at the
source code after it has been patched.
For those who are interested, you can see the exact build script
that we use to build VDT 1.8.1. This script is meant to be run in
the Metronome build and test software,
so it will NOT run out of the box for you. That said, you
might still find it useful to understand how we do the build.
Download build script
You can download the tarball with the complete set of patches here.
| Name | Description | Diff | Ticket |
| 011__gss_assist_gridmap | Enhancement by EDG/LCG: "gridmapdir" functions allow a pool of pre-created anonymous accounts to be mapped to real users (DNs) at run-time, without further intervention by a sysadmin. The functionality is disabled and does not affect any installations unless the environment variable GRIDMAPDIR points to a directory that has been initialized with the anonymous accounts (/etc/grid-security/gridmapdir). | diff | N/A |
| 013__job_manager_acct | Accounting log for job management | diff | Bugzilla 1538 |
| 014__gatekeeper_acct | Log rotation & job accounting | diff | Bugzilla 1538 |
| 017__lsf_acct.diff | Log rotation & job accounting | diff | |
| 018__script-lsf-queue | Change LSF monitoring to allow job accounting to work for failed jobs. | diff | Bugzilla 1538 |
| 019__find-lsf-tools | Find bacct for LSF tools, needed for accounting | diff | Bugzilla 1538 |
| 026__gram_protocol_io | Fix a file descriptor leak and a potential deadlock in GRAM | diff | Bugzilla 1546 |
| 028__gram_job_manager_script | Fix job race state condition in the GRAM job manager. | diff | Bugzilla 1548 |
| 036__gram_job_manager_query | Patch for race condition in job manager | diff | Bugzilla 1550 |
| 037__gram_job_manager_state | Patch for race condition in job manager | diff | Bugzilla 1551 |
| 041__jobmanager_syslog | diff | ||
| 063__condor_log_permissions.diff | Ensure that the Condor job manager makes the log file world-readable, otherwise only one user can submit jobs. | diff |
Bugzilla 3910 |
| 065__prewsgram_multi_condor_log.diff | Make pre-web GRAM use one log file per Condor job instead of one large log file that can't be rotated. | diff |
Bugzilla 4199 |
| 066__disable_streaming.diff | Allow system administrators to disable streaming output in pre-ws gram by passing -disable-streaming to the jobmanager (in $GLOBUS_LOCATION/etc/globus-job-manager.conf | diff |
Bugzilla 4213 |
| 072__no-gram-reporter.diff | Disable the GRAM reporter in the slapd.conf. It's not used normally, and including it causes MDS 2 failures. | diff | |
| 078__gram_jobmanager_filter.diff | Optionally filter gram jobs based on executable name | diff | Bugzilla 4718 |
| 088__gram_condor_gratia_patch.diff | Inform Gratia of completed job, if Gratia is in use.. | diff | |
| 089__teragrid-pbs-fixes.diff | Improvements to the PBS job manager made by TeraGrid. | diff | |
| 096__condor_in_x509_proxy.diff | Tell Condor to forward the user's X509 proxy certificate to the job | diff | |
| 097__osg_grid_globus_location.diff | In an OSG installation, set a job's GLOBUS_LOCATION based on the OSG_GRID environment variable. This will not affect a non-OSG installation. | diff | |
| 098__gpt_fix.diff | Fix minor GPT bug that affects packaging of sqlite | diff | |
| 099__gatekeeper_fork.diff | Add configuration knob to gatekeeper to control where it forks before starting a jobmanager. This allows admins to use xinetd to limit the number of running jobmanagers. By default, Globus's behavior has not been changed, but will only change if the configuration is changed. | diff | |
| 100__globus_i_gsi_gss_utils.diff | Fix GSI bug relating to OpenSSL session reuse | diff | Bugzilla 5475 (VDT Ticket 2879) |
| 101__job_manager_state.diff | Fix race condition in job manager | diff | Bugzilla 5467 (VDT Ticket 2879) |
| 102__gss_unwrap.diff | Fix bug in gss_unwrap() | diff | Bugzilla 5467 (VDT Ticket 5453) |
| 103__gatekeeper_act.diff | Rearrange gatekeeper accounting to facilitate interaction with LCAS/LCMAPS | diff | (VDT Ticket 2879) |
| 104__gridftp_length.diff | Fixed a bug in the GridFTP server. | diff | (VDT Ticket 2989) (Globus ticket 5590) |
| 105__openssl_idea.diff | Removed RC5 and IDEA from Globus's OpenSSL because they are under patent protection and not used by any VDT component. | diff | (Globus ticket 3689) |
| 106__jm_grid_monitor_files.diff | Tweaked jobmanager to look for grid monitor state file in new location. | diff | |
| 107__globus_url_copy.diff | Fix for globus_url_copy to do recursive directory copies to dcache correctly. | diff | (Globus ticket 5706) |
| 108__pr_mp.diff | Fix to prevent MPI application crashes. | diff | (VDT Ticket 2958) (Globus ticket 5533) |
| 109__openssl_098.diff | Use vendor OpenSSL instead of OpenSSL that comes with Globus. Also, fixes to build against OpenSSL 0.9.8. Previously, Globus only worked with OpenSSL 0.9.7. | diff | (Globus ticket 4617) |
VDT 1.9.0 contains Apache 2.2.4. We build it with mod_ssl, mod_proxy, mod_rewrite, mod_python and mod_jk. We also apply patches as follows:
| Name | Description | Diff |
| apache-GSI | Patch Apache to be able to accept Globus's new and RFC style proxies. | diff |
| apache-ctl | Make Apache default to a config file in $VDT_LOCATION/apache/conf/httpd.conf. | diff |
| apache-modpython | Update mod_python to work with Apache 2.2. | diff |