Setup the Software Stack - TreeMaker/TreeMaker GitHub Wiki

You will only need to do this once per cluster. If you are on CMS Connect, remember that files on the /scratch disk will be removed if they are unused for 30 days.

  1. Log into CMS Connect (replace [username] with your CMS Connect username):
    ssh [username]@login-el7.uscms.org
    
  2. Enter the RHEL7 container:
    cmssw-el7 --env "PERL5LIB=" --bind `readlink -f $HOME` --bind /scratch --bind /ospool --bind /cvmfs -- /bin/bash
    
  3. Make a working directory:
    mkdir -p /scratch/`whoami`/; cd /scratch/`whoami`/
    
  4. Follow the TreeMaker installation instructions:
    wget https://raw.githubusercontent.com/TreeMaker/TreeMaker/Run2_UL/setup.sh
    chmod +x setup.sh
    ./setup.sh
    cd CMSSW_10_6_29_patch1/src/
    cmsenv
    cd TreeMaker/Production/test
    
  5. Get a grid proxy:
    voms-proxy-init -voms cms --valid 168:00
    
    and check that it can be found:
    echo $X509_USER_PROXY
    
    If this command doesn't print any output, do the following:
    mkdir -p ~/tmp
    export X509_USER_PROXY=~/tmp/x509up
    
    then repeat step 4. You should put the line export X509_USER_PROXY=~/tmp/x509up in your .bashrc or .bash_profile (as described in Prerequisites).
  6. Run a unit test and make sure it completes successfully:
    python unitTest.py test=1 run=True fork=False clean=True log=False
    
    A successful output will finish with something like:
    ...
    Begin processing the 1st record. Run 1, Event 30719, LumiSection 40 on stream 0 at 26-Feb-2020 17:46:56.738 CST
    %MSG-w L3Absolute not found:   PATJetUpdater:updatedPatJetsSlimmedJetsAK8PFPuppiSoftDropPackedSubJetsUpdatedJEC  26-Feb-2020 17:47:07 CST Run: 1 Event: 30762
    L2L3Residual and L3Absolute are not part of the jetCorrFactors
    of module patJetCorrFactorsSlimmedJetsAK8PFPuppiSoftDropPackedSubJetsUpdatedJEC. Jets will remain uncorrected.
    %MSG
    %MSG-w L3Absolute not found:  PATJetUpdater:updatedPatJetsAK8UpdatedJEC  26-Feb-2020 17:47:07 CST Run: 1 Event: 30762
    L2L3Residual and L3Absolute are not part of the jetCorrFactors
    of module patJetCorrFactorsAK8UpdatedJEC. Jets will remain uncorrected.
    %MSG
    26-Feb-2020 17:47:21 CST  Closed file root://cmsxrootd.fnal.gov//store/mc/RunIISummer16MiniAODv3/TTJets_SingleLeptFromT_TuneCUETP8M1_13TeV-madgraphMLM-pythia8/MINIAODSIM/PUMoriond17_94X_mcRun2_asymptotic_v3-v2/100000/02CA1945-19EA-E811-A98C-0025905C3D98.root
    
    =============================================
    
    MessageLogger Summary
    
     type     category        sev    module        subroutine        count    total
     ---- -------------------- -- ---------------- ----------------  -----    -----
        1 L3Absolute not found -w PATJetUpdater:up                       1        1
        2 L3Absolute not found -w PATJetUpdater:up                       1        1
        3 XrdAdaptor           -w file_open                              1        1
        4 fileAction           -s file_close                             1        1
        5 fileAction           -s file_open                              2        2
    
     type    category    Examples: run/evt        run/evt          run/evt
     ---- -------------------- ---------------- ---------------- ----------------
        1 L3Absolute not found 1/30762
        2 L3Absolute not found 1/30762
        3 XrdAdaptor           pre-events
        4 fileAction           PostGlobalEndRun
        5 fileAction           pre-events       pre-events
    
    Severity    # Occurrences   Total Occurrences
    --------    -------------   -----------------
    Warning                 3                   3
    System                  3                   3
    
    dropped waiting message count 0
    

FAQs

What if I've already setup my CMSSW release and now there are updates to the TreeMaker and/or CondorProduction software?

This can happen occasionally due to bug fixes or new features. In order to update an existing software stack, run the following commands:

cd ${CMSSW_BASE}/src/Condor/Production/
git pull origin master
cd ${CMSSW_BASE}/src/TreeMaker/
git pull origin Run2_UL
cd ${CMSSW_BASE}/src/
scram b -j 8
cd ${CMSSW_BASE}/src/TreeMaker/Production/test/myProd/

Remember to remake and store the CMSSW tarball using checkVomsTar.sh so that the jobs pick up the new software. More information about this command can be found in Prepare and Submit Jobs (step 3).