SetMaxTreeSize and Long64_t

Hello, I am trying to use TTree::SetMaxTreeSize to set the max size large enough to contain all our events in a single file. Since we are writing to an NTFS disk, I figured I might as well use the largest allowed file size (some huge number). The compiler complains then that the number cannot be stored in a “long integer”. But according to the documentation, SetMaxTreeSize takes a Long64_t integer. When I try to explicitly declare a Long64_t, store my large number in it, then pass it to SetMaxTreeSize, I get the same error message.

So my question is, how do I properly set a huge number (allowed within Long64_t and within my file system’s limitations) when the compiler complains about the size of the integer?

Also, there seems to be some contradictory information on the documentation page:
root.cern.ch/root/htmldoc/TTree. … axTreeSize
where it says in the function signature that the default is 1900000000 and separately in the docstring that the default is “100000000000LL, ie 100 Gigabytes”. None of the stated numbers are consistent, and it’s unclear that the “LL” part of the docstring means. I’ll concede that the Gigabytes is likely insisting on the SI 10^9 bytes rather than (1024)^3 bytes, but the signature and docstring are still inconsistent.

An old post mentioned that the comments were updated to include a description of the units involved in setting the max size ( TTree:SetMaxTreeSize - #2 by brun ) however it’s still unclear. If I set 10000, is that 10000 bytes? Is that different than 10000LL?

Thanks for assistance and clarifications.

[quote]So my question is, how do I properly set a huge number (allowed within Long64_t and within my file system’s limitations) when the compiler complains about the size of the integer? [/quote]In C++ to write a long long constant, you must suffix it with LL.

[quote]where it says in the function signature that the default is 1900000000 and separately in the docstring that the default is “100000000000LL, ie 100 Gigabytes”. None of the stated numbers are consistent
[/quote]The default value (100000000000LL), is the value when you never call SetMaxTreeSize while the value
1900000000 is the value used if you can SetMaxTreeSize without any argument.

Cheers,
Philippe.