Problem with reading TTrees on Windows

From: Lynch, Michael (STFC,RAL,PPD) <michael.lynch_at_stfc.ac.uk>
Date: Mon, 14 Sep 2009 14:49:33 +0100


Hello,

I'm running ROOT v5.25/01 on Windows XP SP3, compiled with Microsoft C++ v15.00.30729.01.

I'm trying to test the output of a library I've been working on with the attached program. Test events are generated and stored in both an ASCII text file and a ROOT file. This is meant to compare them, make sure they are the same to within a certain tolerance and output any discrepancies. It works perfectly on SL4.4, GCC 3.4.6 and ROOT v5.25/01. However, on Windows, I get this sort of output:

Error in <TFile::WriteTObject>: Directory TTreeTestFloat.root is not writable
Mismatch found in event 288

        Field 0 Field 1 Field 2 6.07622e-039 1.74468e-039 6.07607e-039 0.860207 -0.647697 -0.418429 Error in <TFile::WriteTObject>: Directory TTreeTestFloat.root is not writable
Mismatch found in event 289

        Field 0 Field 1 Field 2 6.07622e-039 1.74468e-039 6.07607e-039 0.0549127 -0.843825 1.54162
Error in <TFile::WriteTObject>: Directory TTreeTestFloat.root is not writable
Mismatch found in event 290

        Field 0 Field 1 Field 2 6.07622e-039 1.74468e-039 6.07607e-039 1.16317 1.33839 0.832338
Error in <TFile::WriteTObject>: Directory TTreeTestFloat.root is not writable
Mismatch found in event 291

        Field 0 Field 1 Field 2 6.07622e-039 1.74468e-039 6.07607e-039 0.283794 1.53485 -1.88566
Error in <TFile::WriteTObject>: Directory TTreeTestFloat.root is not writable
Mismatch found in event 292

        Field 0 Field 1 Field 2 6.07622e-039 1.74468e-039 6.07607e-039 0.341339 -1.34976 -0.273247 Error in <TFile::WriteTObject>: Directory TTreeTestFloat.root is not writable
Mismatch found in event 293

        Field 0 Field 1 Field 2 6.07622e-039 1.74468e-039 6.07607e-039 0.170947 -0.716357 -0.799599 Error in <TFile::WriteTObject>: Directory TTreeTestFloat.root is not writable
Mismatch found in event 294

        Field 0 Field 1 Field 2 6.07622e-039 1.74468e-039 6.07607e-039 -0.633709 0.910566 -0.354637 Error in <TFile::WriteTObject>: Directory TTreeTestFloat.root is not writable

Here the first line is the data read from the ROOT file, and the second from the text file. All the ROOT events are recorded as the same, even though they are not (if I view the actual ROOT file in a browser, the data follow the correct distribution). There are also all the errors, which do not occur on Linux either.

Is there any reason for this behaviour?

Regards,

Mike

Received on Mon Sep 14 2009 - 15:50:19 CEST

This archive was generated by hypermail 2.2.0 : Mon Sep 14 2009 - 17:50:03 CEST