Hi all, 
As I wrote yesterday, I did an invesigation on the RCF Sparc stations 
that has different endianness (which one I can't remember) than i386
machines.  I compiled BRAT on rmine001 [1], and ran the following
short script: 
  int hmm() {                                                                  
    BrMainDb* mainDb = BrMainDb::Instance();                                   
                                                                               
    mainDb->SetHostName("rcas0005.rcf.bnl.gov");                               
    mainDb->SetUserName("query");                                              
                                                                               
    if (!mainDb->Connect())                                                    
      return;                                                                  
    if (!mainDb->ConnectToCalib())                                             
      return;                                                                  
    if (!mainDb->ConnectToRun())                                               
      return;                                                                  
                                                                               
    BrCalibrationManager* calibMan = BrCalibrationManager::Instance();         
    BrTileCalibration* tileCalib =                                             
      (BrTileCalibration*)calibMan->Register("BrTileCalibration",              
                                             "MultTile");                      
                                                                               
    tileCalib->Use("pedestal");                                                
    tileCalib->Use("pedestalWidth");                                           
    tileCalib->Use("adcGain");                                                 
    tileCalib->Use("adcGap");                                                  
    tileCalib->Use("rowMap");                                                  
    tileCalib->Use("ringMap");                                                 
    tileCalib->Use("conversionFunc");                                          
    // tileCalib->Use("correctionFunc");                                       
    tileCalib->Use("ringPosition");                                            
                                                                               
    BrRunInfoManager* runMan = BrRunInfoManager::Instance();                   
    BrRunInfo* runInfo = runMan->Register(2535);                               
                                                                               
                                                                               
    calibMan->Init();                                                          
    runMan->Init();                                                            
    runMan->Update();                                                          
    calibMan->Update(runInfo->GetUnixStartTime()+1,-1);                        
                                                                               
    tileCalib->Print("BDLPTRD");                                               
                                                                               
    mainDb->Close();                                                           
                                                                               
    return 0;                                                                  
  }                                                                            
I also ran that same script from rcas0009, and the results from the
two runs is attached to this message.  A quick diff on these two
output listings quickly shows that they are indeed different.  
Now, that said, it does not nessecarily imply a byteswapping problem,
though it is likely.  Hence, I'd like for anyone with access to
machines with a different chip type than i386 to try an run the above
script (attached for you convenience) and compare the output to the
two reference files.  If the output nontrivially differs from either,
please reply to this message stating the machine specs (OS, Chip,
ROOT, BRAT, Compiler, MySQL), and attach the output.  
Run the test as: 
  bratmain -q -l -b hmm.C >& hmm.<machine name> 
  diff hmm.rcas  hmm.<machine name> 
  diff hmm.rmine hmm.<machine name> 
What bothers me, is that not only the floating point numbers differ,
but also the short integer numbers differ. 
To be quite frank - I really hope someone else will take up this
challenge as I have little time to do it myself.  I'll happely support
anyone that volunteers for this task, ofcourse.  
Yours, 
Christian Holm Christensen -------------------------------------------
Address: Sankt Hansgade 23, 1. th.           Phone:  (+45) 35 35 96 91 
         DK-2200 Copenhagen N                Cell:   (+45) 28 82 16 23
         Denmark                             Office: (+45) 353  25 305 
Email:   cholm@nbi.dk                        Web:    www.nbi.dk/~cholm
[1] I build BRAT against ROOT 3.00/06, since that's the only one that
    was already build - could someone with more experience in building
    ROOT on Solaris please build ROOT 3.01/02 and install it in
    /afs/rhic/opt/brahms/pro from a Solaris machine? Thanks. 
This archive was generated by hypermail 2b30 : Mon Nov 05 2001 - 06:44:19 EST