Difference between revisions of "Installation/Compilation problems"

From MidasWiki
Jump to navigation Jump to search
m
m
Line 49: Line 49:
 
* Restart ODB with larger size
 
* Restart ODB with larger size
 
  odbedit -s 100000000
 
  odbedit -s 100000000
* Reload the last saved ODB dump you have. These dumps are typically called something like 'online/history/*.xml'.
+
* Reload the last saved ODB dump you have (see [[ODB#Save and reload the ODB|save and reload the ODB]]). These dumps are typically called something like 'online/history/*.xml'.
 
So from odbedit you do something like
 
So from odbedit you do something like
 
  odbedit> load history/run00071.xml
 
  odbedit> load history/run00071.xml

Revision as of 15:43, 29 July 2015


Installation/Compilation Problems

SSL certificate errors

At some sites you might get a SSL server certificate error during the git clone operation, like

error: SSL certificate problem, verify that the CA cert is OK. Details:

This indicates that you don't have the proper certificate authority (CA) files installed on your computer. Possible solutions:

  • The easiest way out is to tell git to ignore the SSL verification with
 git config --global http.sslVerify false
  • Set the environment variable GIT_SSL_NO_VERIFY=true.
  • But the best solution is to just actually install the correct certificate authority files.

CERNLIB Errors

There are some older analyzer programs included in MIDAS that use PAW/HBOOK. MIDAS will try to build these programs if you have the CERNLIB environment variable set. This may cause errors trying to build mana.cxx, like

gcc  -Dextname -DHAVE_HBOOK -c -g -O2 -Wall -Wno-strict-aliasing -Wuninitialized -Iinclude -Idrivers -I../mxml -I./mscb 
-DHAVE_FTPLIB -D_LARGEFILE64_SOURCE -DHAVE_ROOT -pthread -m64 -I/usr/local/packages/root-5.32/include/root -DHAVE_ZLIB 
-DHAVE_MSCB -DOS_LINUX -fPIC -Wno-unused-function -o linux/lib/hmana.o src/mana.cxx
src/mana.cxx: In function 'INT book_ntuples()':
src/mana.cxx:791: error: invalid conversion from 'const void*' to 'void*'

Unless you care about this functionality, the easiest solution is to unset the environment variable CERNLIB before compiling.

Usage Problems

How to recover from a corrupted ODB

  • Stop your front-ends, mlogger, mhttpd, etc.
  • Remove the shared memory associated to ODB buffer. Find the shared memory segment by doing
ls -l /dev/shm

then remove the segment that will be something like /dev/shm/*_test_ODB_SHM

  • Move the old ODB
cd online
mv .ODB.SHM .ODB.SHM.BAD
  • Restart ODB with larger size
odbedit -s 100000000
  • Reload the last saved ODB dump you have (see save and reload the ODB). These dumps are typically called something like 'online/history/*.xml'.

So from odbedit you do something like

odbedit> load history/run00071.xml
  • OK, now your ODB should be fixed.