81efaa1 | Axel Naumann | 22 November 2018, 07:47:19 UTC | Update ROOT version files to v6.14/08. | 22 November 2018, 07:47:19 UTC |
8cfe60a | Axel Naumann | 22 November 2018, 07:27:15 UTC | Update release notes for v6.14/08. | 22 November 2018, 07:27:15 UTC |
27eaeaa | Philippe Canal | 19 November 2018, 23:08:32 UTC | Fix TTreeCache issue related to learning from ROOT-9773. Specifically this fixes the one described at: https://sft.its.cern.ch/jira/browse/ROOT-9773?focusedCommentId=87824&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-87824 where the issue was that adding a single branch did not close the learning and 'worth' provoke a learning prefill. We solved this by distinguishing at the interface level adding branch manual and adding branch as part of the learning. We can now avoid the LearningPrefill during manual adds. | 20 November 2018, 21:38:35 UTC |
d3da0be | Danilo Piparo | 19 November 2018, 13:42:07 UTC | [TTree] Remove unused variables from tests. | 20 November 2018, 10:14:06 UTC |
82c1f08 | Danilo Piparo | 15 November 2018, 21:53:09 UTC | [TTree] Add test for ROOT-9668 | 20 November 2018, 10:13:50 UTC |
e9fdff6 | Danilo Piparo | 15 November 2018, 21:49:55 UTC | [TTree][ROOT-9668] Improve parallelised FlushBaskets adding a branch to a tree after at least one FlushBaskets call was carried out led to a crash. This commits fixes this bug. | 20 November 2018, 10:12:41 UTC |
f72fb18 | moneta | 20 November 2018, 08:37:20 UTC | Fix ROOT-9801, by correctly copying the members for lazy initialization in TFormula::Copy. Add also a test for reproducing ROOT-9801 | 20 November 2018, 08:37:20 UTC |
b7e472c | Danilo Piparo | 15 November 2018, 22:44:48 UTC | [CMake][ROOT-9637] Adopt c++14 flag in root-config unless we are not on osx and gcc the gcc major is 4. | 19 November 2018, 10:25:19 UTC |
2fa2ff5 | Enric Tejedor Saavedra | 12 November 2018, 13:54:58 UTC | No need to install kernel.json.in | 16 November 2018, 14:15:44 UTC |
b647d42 | Enric Tejedor Saavedra | 12 November 2018, 10:56:02 UTC | Rely on SYSCONFDIR just in case install path is custom | 16 November 2018, 14:15:44 UTC |
28371a5 | Enric Tejedor Saavedra | 09 November 2018, 15:32:19 UTC | Define variables with path and name of kernel.json file | 16 November 2018, 14:15:44 UTC |
589ca32 | Enric Tejedor Saavedra | 09 November 2018, 15:29:40 UTC | [ROOT-9685] Install generated kernel.json in etc | 16 November 2018, 14:15:44 UTC |
8914606 | Enric Tejedor Saavedra | 01 November 2018, 16:38:59 UTC | [ROOT-9685] Run the Jupyter ROOT C++ kernel with ROOT's Python version We need to make sure the ROOT C++ kernel of Jupyter runs with the same Python version that ROOT was built with. Since running the kernel with a particular Python installation cannot be enforced by the user by setting the $PATH variable (Jupyter ignores that variable and picks Python from the system), we need to enforce it from the kernel file. We can't define a full path to the right Python binary in the kernel.json file because that path could be different in the machine where ROOT is built and the machine where the C++ kernel runs. The best we can do is include the major and minor version in the kernel.json file, so that we make sure the kernel is not executed with an incompatible version, which would likely lead to a crash. | 16 November 2018, 14:15:44 UTC |
17eef97 | Vassil Vassilev | 18 July 2018, 07:42:14 UTC | [cxxmodules] Add a RAII because we can trigger deserialization. This patch fixes a few recent runtime_cxxmodules failures. | 15 November 2018, 16:15:54 UTC |
75e711f | Danilo Piparo | 07 September 2018, 13:41:02 UTC | [Dictgen] ROOT-9635 ROOT-9615: filter out unwanted rootcling args. (cherry picked from commit 26f54569b46d3d2daae838cf55195d436be7ac80) | 15 November 2018, 16:09:14 UTC |
54cf5d9 | Philippe Canal | 13 November 2018, 19:52:02 UTC | In BuildOld, don't make all unique_ptr as having -> in comment. unique_ptr can be nullptr too sometimes *and* anyway TStreamerInfo::Build does not make the same restriction. The mismatch lead to baffling error message like: Warning in <TStreamerInfo::BuildOld>: Cannot convert A::h from type: B to type: B, skip element This solves one of the problems seen in https://sft.its.cern.ch/jira/browse/ROOT-9702. | 15 November 2018, 12:03:25 UTC |
a009118 | Philippe Canal | 13 November 2018, 18:22:45 UTC | Improve TTreeCache behavior is first GetEntry is outside the learning range. We now actually do a Prefill on the requested entry (rather than learning just one branch) | 15 November 2018, 12:03:25 UTC |
c80000f | Philippe Canal | 13 November 2018, 16:27:00 UTC | When doing LearnPrefill don't go beyond the requested range | 15 November 2018, 12:03:25 UTC |
d0c3ac6 | Philippe Canal | 13 November 2018, 03:03:51 UTC | Do no load in TTreeCache disabled branches | 15 November 2018, 12:03:25 UTC |
6143ac0 | Stephan Hageboeck | 22 October 2018, 12:15:32 UTC | [RooFit] Replace RooArgSet and RooDataSet mempools with single templated mempool. This fixes ROOT-9571 and other crashes when plot reaches the end of main. (cherry picked from commit 5d5e3f3ace0134f17fb9723796809f2aec6f362a) (cherry picked from commit 24333c990adbb7128524b53f457578c671241e1e) (cherry picked from commit d7a7295f56c1344563af71fc2f3ad3c1c7cc18c7) (cherry picked from commit 5d778aa570ccb2989dd37d4b10b78da9a1aef842) (cherry picked from commit 715a2162bf7e61eb32b4bc2b7a87be98ad6555b8) | 13 November 2018, 15:43:11 UTC |
8e96679 | Danilo Piparo | 08 November 2018, 17:19:35 UTC | [DF] Fix compiler warning on slc6/gcc48 | 12 November 2018, 09:33:18 UTC |
f19654f | Danilo Piparo | 11 November 2018, 10:14:18 UTC | Release Notes | 12 November 2018, 09:33:18 UTC |
c31a828 | Enrico Guiraud | 08 November 2018, 13:20:30 UTC | [DF] Add test for Define+nested parallelism | 12 November 2018, 09:33:18 UTC |
6207828 | Danilo Piparo | 08 November 2018, 12:22:08 UTC | [IMT] Improve TThreadExecutor code and document better the work isolation providing a data frame and a HEP framework example. | 12 November 2018, 09:33:18 UTC |
8891487 | Danilo Piparo | 07 November 2018, 12:34:08 UTC | [IMT] Isolate work steered by ThreadedExecutor in a task arena We enclose the parallel_for and parallel_reduce invocation in a task_arena::isolate because we want to prevent work stealing. | 12 November 2018, 09:33:18 UTC |
551d1fd | Danilo Piparo | 07 November 2018, 12:22:17 UTC | [IMT] Refactor implementations of TThreadExecutor::ParallelReduce methods re-expressing those in terms of a single internal template helper, therewith avoiding duplication of code. | 12 November 2018, 09:33:18 UTC |
516f915 | Danilo Piparo | 11 November 2018, 10:05:06 UTC | [BuildSystem] Require at least TBB2018, set builtin to TBB2019 | 12 November 2018, 09:33:18 UTC |
7dab4f5 | Philippe Canal | 06 November 2018, 17:25:21 UTC | Collapse if statements | 06 November 2018, 23:59:39 UTC |
4b22481 | Philippe Canal | 06 November 2018, 17:23:27 UTC | Fix ROOT-9762 (TBranchElement offset calculation) When a rule is associated to the top level node of split collection, we must not add the branch offset, since the rule is about the content of the collection | 06 November 2018, 23:59:39 UTC |
14862b5 | Philippe Canal | 06 November 2018, 02:03:00 UTC | Fix offset calculation (error in db24ec75844). This addresses part of ROOT-9762 | 06 November 2018, 23:59:39 UTC |
dd56ad5 | Philippe Canal | 05 November 2018, 23:09:08 UTC | In TBranchElement::Print use the correct StreamerInfo in case of schema evolution | 06 November 2018, 23:59:39 UTC |
4f1e05c | Philippe Canal | 01 November 2018, 15:07:10 UTC | Properly record kMissing in branch's action sequence. I.e. insure we do not add or substract from the special offset value kMissing (which result in 'valid' offset in the 10,000 range leading to memory over-write or out-of-bounds reads) | 06 November 2018, 23:59:39 UTC |
0dfba5e | Axel Naumann | 05 November 2018, 09:33:40 UTC | Update ROOT version files to v6.14/07. | 05 November 2018, 09:33:40 UTC |
3e89706 | Axel Naumann | 05 November 2018, 09:30:03 UTC | Update ROOT version files to v6.14/06. | 05 November 2018, 09:30:03 UTC |
3d5a528 | Axel Naumann | 05 November 2018, 09:28:49 UTC | [RelNotes] Prepare 6.14/06. | 05 November 2018, 09:28:49 UTC |
05c5818 | Axel Naumann | 19 October 2018, 13:23:30 UTC | [cmake] disable Mac GL deprecation warning, really. Ouch. (cherry picked from commit 950c150ee1d66d79dfb5f1744248d281e89f675e) | 02 November 2018, 07:11:59 UTC |
3888fda | Danilo Piparo | 01 November 2018, 10:20:43 UTC | [DF] Fix RDataSource doxy | 01 November 2018, 10:20:43 UTC |
bd4519b | Yuka Takahashi | 31 October 2018, 17:33:59 UTC | v6 14 Fix runtime_modules compilation failure VecOps was renamed to ROOTVecOps at some point. | 01 November 2018, 09:10:32 UTC |
1618933 | Axel Naumann | 09 October 2018, 06:23:24 UTC | [cmake] Silence macOS10.14 GL deprecation warnings. (cherry picked from commit 11330fd1a14675a8cc06d7c441d4ecb8906613ca) | 01 November 2018, 08:43:14 UTC |
2347be9 | Axel Naumann | 09 October 2018, 06:19:31 UTC | [krb] Remove "register" warning. (cherry picked from commit a2eb6ac40fb8d499ef290cdbe329126234f65c50) | 01 November 2018, 08:43:14 UTC |
9992e1b | Danilo Piparo | 31 October 2018, 10:28:34 UTC | [TreeReader] Add test for multiple readers attached to a leaf | 31 October 2018, 14:56:56 UTC |
528ee53 | Axel Naumann | 30 October 2018, 10:49:16 UTC | [TreeReader] Always set dictionary if available in CreateProxy ...and always set leaf information too, if needed. This fixes ROOT-9743. | 31 October 2018, 14:56:56 UTC |
ddd8b76 | Philippe Canal | 25 October 2018, 20:05:55 UTC | Resolve memory over-write due to execution of a I/O rule on wrong object. This prevent the inappropriate execution on a rule intent for an inner object on the outer object('s memory space) In a case where the top level branch is: 1 edm::Wrapper<std::vector<pat::CompositeCandidate, std::allocator<pat::CompositeCandidate> > > which contains 2 16, obj, vector<pat::CompositeCandidate> simple base pat::PATObject<reco::CompositeCandidate> 3 360, overlapItems_, vector<edm::PtrVector<reco::Candidate> > simple base edm::PtrVectorBase 4 48, cachedItems_, atomic<vector<const void*>*> ***TRANSIENT-WITH-RULE** The TStreamerInfo Action Sequence for (4) was being executed the obj branch/level The bug was that GatherArtificialElements would drill through (3) eventhough it was not split and it did so because it did not recognize there was a branch for it because it added (errorneously) the name of the base class in the branch prefix. | 26 October 2018, 11:43:58 UTC |
57c53fb | Philippe Canal | 23 October 2018, 21:05:04 UTC | Avoid setting fCollProxy multiple times. GetCollectionProxy during the setting of fCollProxy calls TBranchElement::GetInfoImp that in some cases sets fCollProxy and ends up recording it (sometimes) in the action sequence. When GetCollectionProxy sets it too (i.e. change it) there is now a disconnect between the branch and the action sequences that lead to the action sequence to used an unset collection proxy: Fatal in <TGenCollectionProxy>: Size> Logic error - no proxy object set. aborting | 24 October 2018, 16:39:24 UTC |
3cc5375 | Attila Krasznahorkay | 23 October 2018, 08:46:59 UTC | Propagating LibXml2's location to the Davix build. In order to make sure that Davix picks up the same LibXml2 library for its build that ROOT was configured to build against, added some additional configuration arguments to the DAVIX target. | 24 October 2018, 07:07:00 UTC |
06793aa | Stephan Hageboeck | 18 October 2018, 12:29:15 UTC | [ROOT-5236] Memory leaks in HistFactory (#2810) Fix ROOT-5236 Memory leaks in HistFactory. (cherry picked from commit 09f108247d67739b9a57a26f827c30ba696f6f9b) | 18 October 2018, 12:29:15 UTC |
95d8156 | Danilo Piparo | 17 October 2018, 12:33:56 UTC | [DictGen] Fix ROOT-9331: rootcling returns 1 if linkdef parsing caused errors this is achieved with an upgrade of the LinkdefReader::Parse merthod which now returns false if the diagnostic consumer saw at least one error during the lexing phase. | 17 October 2018, 12:37:12 UTC |
786d2ec | Danilo Piparo | 16 October 2018, 08:37:26 UTC | [TTreeProcMT] add missing file | 16 October 2018, 08:37:26 UTC |
e4aadb7 | Danilo Piparo | 15 October 2018, 14:03:01 UTC | [TTreProcessorMT][ROOT-9563] Manual backport of tests and fix the commits are: - 165d27 [TTreeProcessorMT][ROOT-9563] Support trees in subdirectories - 5823f2 [TTreeProcessorMT] Test trees and chains in subdirs - aee4e2 [TTreeProcessorMT] Test for input chains associated to no file This manual cherry-pick is due to the fact that between 6.14 and today a heavy refactoring of the TTreeProcessorMT class took place. As a result, regular cherry-picks do not work properly. | 15 October 2018, 14:03:01 UTC |
58101a3 | Philippe Canal | 15 October 2018, 08:41:06 UTC | TTreeCache::FillBuffer dont return early if read entry not set. | 15 October 2018, 11:44:31 UTC |
accd80d | Enrico Guiraud | 05 October 2018, 11:57:26 UTC | [TreePlayer] Fix `TTreeReaderArray::GetSize` This is a second part of the fix for ROOT-9570. | 12 October 2018, 06:31:18 UTC |
dc12794 | Enrico Guiraud | 05 October 2018, 11:54:17 UTC | [TreePlayer] Also check for correct size of array in test | 12 October 2018, 06:31:11 UTC |
554f301 | Enrico Guiraud | 05 October 2018, 11:52:49 UTC | [TreePlayer][NFC] Remove unused template parameter from test function | 12 October 2018, 06:31:03 UTC |
941e067 | Danilo Piparo | 03 October 2018, 15:12:45 UTC | [TTreeReader][NFC] Make clang-format happy | 12 October 2018, 06:30:02 UTC |
042050f | Danilo Piparo | 03 October 2018, 15:12:20 UTC | [TTreeReader] Add test for reading vector<bool> and arrays of bool with TTreeReaderArray | 12 October 2018, 06:29:52 UTC |
d57d717 | Danilo Piparo | 03 October 2018, 13:50:14 UTC | [TTreeReader] Fix ROOT-9570: now vector<bool> branches are readable TTreeReaderArray now we keep alive the memory the pointer points to upon calling At. | 12 October 2018, 06:29:37 UTC |
dbbea41 | Philippe Canal | 11 October 2018, 20:05:49 UTC | TTreeCache::FillBuffer return when entry is out of range. This avoids errors like: Error in <TTreeCache::FillBuffer>: Inconsistency: fCurrentClusterStart=0 fEntryCurrent=53 fNextClusterStart=100 but fEntryCurrent should not be in between the two when the entry requested is above the max (here 100) but below the next cluster boundary (here 106). | 12 October 2018, 01:59:38 UTC |
ab9c62a | Philippe Canal | 11 October 2018, 20:00:51 UTC | TTreeCache::LearnPrefill push/popd new var introduced by ba9559bcd9. This fixed the problem described in http://root-forum.cern.ch/t/ttreecache-fillbuffer-error-with-root-6-14-04/30914/1 | 12 October 2018, 01:59:38 UTC |
eae194c | Philippe Canal | 11 October 2018, 19:48:43 UTC | Avoid inadvertently using TTreeCache for another TTree | 12 October 2018, 01:59:38 UTC |
5c4561b | Philippe Canal | 11 October 2018, 18:14:30 UTC | TTreeCache::FillBuffer add branch name to Info msg | 12 October 2018, 01:59:38 UTC |
13019ef | Philippe Canal | 11 October 2018, 18:13:56 UTC | TTreeCache::FillBuffer correct Info msg typo | 12 October 2018, 01:59:38 UTC |
b2204cc | Philippe Canal | 10 October 2018, 18:14:34 UTC | Fix cling::Interpreter::compileFunction getting confused by trailing transactions. This fixes https://sft.its.cern.ch/jira/browse/ROOT-9672 by having cling::Interpreter::DeclareCFunction return the transaction containing the compiled code. With the previous code, cling::Interpreter::compileFunction will get confused by transaction created during the callbacks executed during the cling::IncrementalParser::commitTransaction of the main transaction. Reproducer: With a main composed of 'only': int main(int argc, char ** argv) { char const * class_string = (argc == 2) ? argv[1] : "std::vector<int>"; auto const result [[gnu::unused]] = TClass::GetClass(class_string); return 0; } which is a representation of real use case (in a more complex setup) in ART. We were getting: Error in <TClingCallFunc::make_wrapper>: Failed to compile ==== SOURCE BEGIN ==== #pragma clang diagnostic push #pragma clang diagnostic ignored "-Wformat-security" __attribute__((used)) extern "C" void __cf_0(void* obj, int nargs, void** args, void* ret) { if (ret) { (*(TStreamerInfo**)ret) = new TStreamerInfo(); return; } else { new TStreamerInfo(); return; } } #pragma clang diagnostic pop ==== SOURCE END ==== Error in <TClingCallFunc::ExecT>: Called with no wrapper, not implemented! Error in <TVirtualStreamerInfo::Factory>: The plugin handler for TVirtualStreamerInfo was found but failed to create the factory object! The reason is that during TClingCallFunc::make_wrapper, the call to cling::Interpreter::compileFunction ends with: if (const llvm::GlobalValue* GV = getLastTransaction()->getModule()->getNamedValue(name)) However in the 'broken' case, the getLastTransaction does not return the transaction for the code being compiled by DeclareCFunction but instead the one used/created at: #0 cling::IncrementalParser::endTransaction (this=0x4a2980, T=0x8c0fb0) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/interpreter/cling/lib/Interpreter/IncrementalParser.cpp:345 #1 0x00007fffeebc7899 in cling::Interpreter::PushTransactionRAII::pop (this=0x7fffffffcb00) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/interpreter/cling/lib/Interpreter/Interpreter.cpp:111 #2 0x00007fffeebc785e in cling::Interpreter::PushTransactionRAII::~PushTransactionRAII (this=0x7fffffffcb00, __in_chrg=<optimized out>) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/interpreter/cling/lib/Interpreter/Interpreter.cpp:106 #3 0x00007fffeebeb659 in cling::LookupHelper::findScope (this=0x4a9dd0, className=..., diagOnOff=cling::LookupHelper::NoDiagnostics, resultType=0x7fffffffcd08, instantiateTemplate=false) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/interpreter/cling/lib/Interpreter/LookupHelper.cpp:466 #4 0x00007fffeeabe0df in TCling::CheckClassInfo (this=0x4a0550, name=<optimized out>, autoload=<optimized out>, isClassOrNamespaceOnly=<optimized out>) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/metacling/src/TCling.cxx:3630 #5 0x00007ffff7c3040d in TClass::Init (this=this@entry=0xdafd20, name=name@entry=0x7ffff7cb7638 "TGlobal", cversion=cversion@entry=2, typeinfo=typeinfo@entry=0x7ffff7d8b6d8 <typeinfo for TGlobal>, isa=isa@entry=0x477430, dfil=dfil@entry=0x7ffff7cb8cab "TGlobal.h", ifil=<optimized out>, dl=<optimized out>, il=<optimized out>, givenInfo=<optimized out>, silent=<optimized out>) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/meta/src/TClass.cxx:1431 #6 0x00007ffff7c3a1b8 in TClass::TClass (this=0xdafd20, name=0x7ffff7cb7638 "TGlobal", cversion=<optimized out>, info=..., isa=0x477430, dfil=0x7ffff7cb8cab "TGlobal.h", ifil=0x7ffff7cccf88 "/local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/meta/src/TGlobal.cxx", dl=27, il=25, silent=false) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/meta/src/TClass.cxx:1273 #7 0x00007ffff7c3a72a in ROOT::CreateClass (cname=0x7ffff7cb7638 "TGlobal", id=id@entry=2, info=..., isa=isa@entry=0x477430, dfil=dfil@entry=0x7ffff7cb8cab "TGlobal.h", ifil=ifil@entry=0x7ffff7cccf88 "/local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/meta/src/TGlobal.cxx", dl=27, il=25) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/meta/src/TClass.cxx:5607 #8 0x00007ffff7c4b552 in ROOT::Internal::TDefaultInitBehavior::CreateClass (il=25, dl=27, ifil=0x7ffff7cccf88 "/local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/meta/src/TGlobal.cxx", dfil=0x7ffff7cb8cab "TGlobal.h", isa=0x477430, info=..., id=2, cname=<optimized out>, this=0x7ffff7da7508 <ROOT::Internal::DefineBehavior(void*, void*)::theDefault>) at /home/pcanal/root_builds/v6-14-00-patches/opt/include/Rtypes.h:176 #9 ROOT::TGenericClassInfo::GetClass (this=0x7ffff7dab660 <ROOT::GenerateInitInstanceLocal(TGlobal const*)::instance>) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/meta/src/TGenericClassInfo.cxx:250 #10 0x00007ffff7b1a2d8 in TGlobal::Class () at /home/pcanal/root_builds/v6-14-00-patches/opt/core/base/G__Core.cxx:17156 #11 0x00007ffff7ac01de in TGlobal::IsA (this=0xee3bc0) at /home/pcanal/root_builds/v6-14-00-patches/opt/include/TGlobal.h:48 #12 TGlobal::CheckTObjectHashConsistency (this=0xee3bc0) at /home/pcanal/root_builds/v6-14-00-patches/opt/include/TGlobal.h:48 #13 0x00007ffff7be9dcd in TObject::CheckedHash (this=0xee3bc0) at /home/pcanal/root_builds/v6-14-00-patches/opt/include/TObject.h:314 #14 THashTable::GetCheckedHashValue (this=0xe65a20, obj=0xee3bc0) at /home/pcanal/root_builds/v6-14-00-patches/opt/include/THashTable.h:94 #15 THashTable::Add (this=0xe65a20, obj=0xee3bc0) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/cont/src/THashTable.cxx:96 #16 0x00007ffff7be6bf1 in THashList::AddLast (this=this@entry=0x5be690, obj=obj@entry=0xee3bc0) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/cont/src/THashList.cxx:100 #17 0x00007ffff7c4e0d1 in TListOfDataMembers::AddLast (this=0x5be690, obj=0xee3bc0) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/meta/src/TListOfDataMembers.cxx:103 #18 0x00007ffff7ab8785 in TList::Add (obj=0xee3bc0, this=0x5be690) at /home/pcanal/root_builds/v6-14-00-patches/opt/include/TList.h:87 #19 TROOT::GetListOfGlobals (this=0x7ffff7da7a60 <ROOT::Internal::GetROOT1()::alloc>, load=load@entry=false) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/base/src/TROOT.cxx:1767 #20 0x00007fffeeab1058 in TCling::HandleNewDecl (this=0x4a0550, DV=0xedf238, isDeserialized=isDeserialized@entry=true, modifiedTClasses=...) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/metacling/src/TCling.cxx:555 #21 0x00007fffeeabb785 in TCling::UpdateListsOnCommitted (this=0x4a0550, T=...) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/metacling/src/TCling.cxx:6115 #22 0x00007fffeebd0103 in cling::MultiplexInterpreterCallbacks::TransactionCommitted (this=0x57fe20, T=...) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/interpreter/cling/lib/Interpreter/MultiplexInterpreterCallbacks.h:76 #23 0x00007fffeed05d71 in cling::IncrementalParser::commitTransaction (this=0x4a2980, PRT=..., ClearDiagClient=true) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/interpreter/cling/lib/Interpreter/IncrementalParser.cpp:532 #24 0x00007fffeed06399 in cling::IncrementalParser::Compile (this=0x4a2980, input=..., Opts=...) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/interpreter/cling/lib/Interpreter/IncrementalParser.cpp:663 #25 0x00007fffeebcbc4e in cling::Interpreter::DeclareInternal (this=0x4a0f30, input=..., CO=..., T=0x7fffffffd680) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/interpreter/cling/lib/Interpreter/Interpreter.cpp:1195 #26 0x00007fffeebca8e8 in cling::Interpreter::declare (this=0x4a0f30, input=..., T=0x7fffffffd680) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/interpreter/cling/lib/Interpreter/Interpreter.cpp:823 #27 0x00007fffeebcb560 in cling::Interpreter::DeclareCFunction (this=0x4a0f30, name=..., code=..., withAccessControl=true) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/interpreter/cling/lib/Interpreter/Interpreter.cpp:1096 #28 0x00007fffeebcb862 in cling::Interpreter::compileFunction (this=0x4a0f30, name=..., code=..., ifUnique=false, withAccessControl=true) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/interpreter/cling/lib/Interpreter/Interpreter.cpp:1140 #29 0x00007fffeeafb83c in TClingCallFunc::compile_wrapper (withAccessControl=true, wrapper=..., wrapper_name=..., this=0xcf3c10) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/metacling/src/TClingCallFunc.cxx:270 #30 TClingCallFunc::make_wrapper (this=this@entry=0xcf3c10) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/metacling/src/TClingCallFunc.cxx:1096 #31 0x00007fffeeafbcb8 in TClingCallFunc::IFacePtr (this=this@entry=0xcf3c10) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/metacling/src/TClingCallFunc.cxx:2233 #32 0x00007fffeeafbe83 in TClingCallFunc::ExecT<long> (address=0x0, this=0xcf3c10) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/metacling/src/TClingCallFunc.cxx:2045 #33 TClingCallFunc::ExecInt (this=0xcf3c10, address=0x0) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/metacling/src/TClingCallFunc.cxx:2065 #34 0x00007ffff7c56e8d in TMethodCall::Execute (this=0xd97710, object=<optimized out>, retLong=@0x7fffffffd958: 0) at /local2/pcanal/cint_working/rootcling/v6-14-00-patches/core/meta/src/TMethodCall.cxx:457 #35 0x0000000000401009 in TMethodCall::Execute(long&) () #36 0x00000000004010ea in long TPluginHandler::ExecPluginImpl<>() () #37 0x000000000040106d in long TPluginHandler::ExecPlugin<>(int) () #38 0x0000000000400e21 in mytest() () #39 0x0000000000400e92 in main () | 11 October 2018, 22:21:17 UTC |
3023187 | Philippe Canal | 09 October 2018, 21:48:42 UTC | Add TGlobal to the list of known hash-consistent class. This reduces the number of transaction compilation done in early initialization stages. | 11 October 2018, 22:21:17 UTC |
2be140a | Axel Naumann | 08 October 2018, 16:15:51 UTC | [RelNotes] Mention MacOS 10.14. | 08 October 2018, 16:15:51 UTC |
348d350 | Axel Naumann | 02 October 2018, 07:01:12 UTC | [ACLiC] The source string is not null terminated! (cherry picked from commit b0bb7bdaaf40b5696d3641392fc2f47979d34b8f) | 08 October 2018, 16:13:48 UTC |
1ad5440 | Axel Naumann | 02 October 2018, 07:00:43 UTC | [ACLiC] Handle -isysroot. (cherry picked from commit c75c736f30d6b90a3eec004dd43fe4cd328ff125) | 08 October 2018, 16:13:48 UTC |
45b817f | Axel Naumann | 02 October 2018, 07:00:19 UTC | [ACLiC] Add " " between incl path elements even if not found. (cherry picked from commit b9f9e5c96097da3077a1ec3c57b3f5f4a785e14c) | 08 October 2018, 16:13:48 UTC |
2e25082 | Axel Naumann | 28 September 2018, 09:11:14 UTC | [rootcling] Forward "-isysroot DIR" arguments to cling. (cherry picked from commit 31210be1907d07b0f9a1fd9fb9c0643f3f210711) | 08 October 2018, 16:13:48 UTC |
0c5e54d | Axel Naumann | 28 September 2018, 06:44:10 UTC | [cmake] Inject CMAKE_OSX_SYSROOT into sub-CMake of googletest. (cherry picked from commit 48aca85417755795bc650cec6ba4009f71d0531d) | 08 October 2018, 16:13:48 UTC |
579f0b4 | Axel Naumann | 27 September 2018, 06:18:27 UTC | [cmake] Inject -isysroot ${CMAKE_OSX_SYSROOT} to unuran. (cherry picked from commit 7a09a233e98057ef095a0913a22068ab1e42eaa3) | 08 October 2018, 16:13:48 UTC |
cf2898b | Axel Naumann | 26 September 2018, 15:00:05 UTC | [cling] Force the OSX SDK to be the one at build time: Fixes builds with command line tools and macos 10.14. (cherry picked from commit 17c189045764b4444683b01524430f614eeff49a) | 08 October 2018, 16:13:48 UTC |
fd69b20 | Axel Naumann | 25 September 2018, 09:58:04 UTC | [cmake] Pass CMAKE_OSX_SYSROOT to LZMA, AfterImage, pcre. (cherry picked from commit 53715380b52843eb17a261e0ba90b75bbb0c7b86) | 08 October 2018, 16:13:48 UTC |
7c49799 | Axel Naumann | 25 September 2018, 09:51:24 UTC | [cmake] Specify CMAKE_OSX_SYSROOT to freetype: Because parts of freetype do not obey CFLAGS (apinames), we need to instead pass it through CC. (cherry picked from commit be35fd8f81f6e6451349f4f7f324dbe382ebb03a) | 08 October 2018, 16:13:48 UTC |
1100087 | Axel Naumann | 25 September 2018, 09:26:04 UTC | [cmake] Inject -isysroot ${CMAKE_OSX_SYSROOT}. (cherry picked from commit d5e40bdd5be6f864305ed0d31c4f270b196b0c03) | 08 October 2018, 16:13:48 UTC |
82bc7ae | Enrico Guiraud | 08 October 2018, 13:01:04 UTC | [TreePlayer] Remove leftover debug output | 08 October 2018, 13:34:44 UTC |
bd7aa1e | Philippe Canal | 03 October 2018, 15:52:34 UTC | Fix inconsistent behavior in TClusterIterator when there are clusters but fAutoFlush is still negative. With a file has several cluster range but has fAutoFlush set to a negative value: eg. t->Print("clusters"); ****************************************************************************** *Tree :t : t * *Entries : 1000 : Total = 424803 bytes File Size = 33982 * * : : Tree compression factor = 12.78 * ****************************************************************************** Cluster Range # Entry Start Last Entry Size 0 0 49 10 …. 18 900 949 10 19 950 999 -2000000 TClusterIterator was not estimate correctly the cluster size of the last range. This resulted in some circumstances to message like: Error in <TTreeCache::FillBuffer>: Inconsistency: fCurrentClusterStart=900 fEntryCurrent=950 fNextClusterStart=956 but fCurrentEntry should not be in between the two Error in <TTreeCache::FillBuffer>: Inconsistency: fCurrentClusterStart=950 fEntryCurrent=950 fNextClusterStart=953 but fCurrentEntry should not be in between the two Error in <TTreeCache::FillBuffer>: Inconsistency: fCurrentClusterStart=950 fEntryCurrent=950 fNextClusterStart=953 but fCurrentEntry should not be in between the two Error in <TTreeCache::FillBuffer>: Inconsistency: fCurrentClusterStart=950 fEntryCurrent=950 fNextClusterStart=953 but fCurrentEntry should not be in between the two A work-around is to increase the TTreeCacheSize to be large enough that it would contains all the entries of the last range. See https://root-forum.cern.ch/t/ttreecache-fillbuffer-error-with-root-6-14-04/30914 the same problem was also reported by CMS. | 04 October 2018, 13:47:12 UTC |
37800ea | Danilo Piparo | 04 October 2018, 10:04:18 UTC | [VecOps] Rely on collection value printing for RVec, dropping the custom one | 04 October 2018, 10:06:02 UTC |
d2a7ae6 | Bertrand Bellenot | 04 October 2018, 08:39:08 UTC | Fix R__LOAD_LIBRARY(LIBRARY) on Windows | 04 October 2018, 08:39:08 UTC |
4cdb9ef | Danilo Piparo | 24 September 2018, 14:22:50 UTC | [DF][NFC] Add more comments to histo/profile models code and tests | 04 October 2018, 07:38:34 UTC |
a38acee | Danilo Piparo | 24 September 2018, 09:27:41 UTC | [DF][NFC] Make clang-format happy | 04 October 2018, 07:38:24 UTC |
52b7eb0 | Danilo Piparo | 24 September 2018, 09:26:31 UTC | [DF] Test ROOT-9692: 2d profiles with custom binning | 04 October 2018, 07:38:07 UTC |
e2dc26f | Danilo Piparo | 22 September 2018, 13:35:15 UTC | [DF] Test custom axes of mono dimensional profile models | 04 October 2018, 07:37:57 UTC |
3b902ee | Danilo Piparo | 24 September 2018, 09:26:09 UTC | [DF] ROOT-9692 properly handle custom binning of 2d profiles | 04 October 2018, 07:05:57 UTC |
2896eb4 | Danilo Piparo | 22 September 2018, 13:34:39 UTC | [DF] Properly treat custom x axes in TProfileModel | 04 October 2018, 07:01:08 UTC |
1a197b4 | Danilo Piparo | 18 September 2018, 10:54:09 UTC | [VecOps] Fix ROOT-9669: value printing of RVec<T> where T does not have an operator<< this has been resolved relying on value printing itself for the individual items. | 04 October 2018, 06:57:02 UTC |
7fff696 | Danilo Piparo | 20 September 2018, 08:39:31 UTC | [TreePlayer] Fix warning | 04 October 2018, 06:56:29 UTC |
3f2b84b | Danilo Piparo | 20 September 2018, 08:32:05 UTC | [TreeReader] Add unit test for ROOT-9312 | 04 October 2018, 06:56:23 UTC |
62a7f18 | Danilo Piparo | 20 September 2018, 08:25:21 UTC | [TTreeReader] Fix ROOT-9312: cannot reach leaf under certain circumstances If a TTree contained 1. branch "v" with a leaf "a", created with t.Branch("v", &a, "a/I") 2. a branch "w" containing a split struct that has a datamember "v" with a datamember "a" constructing TTreeReaderValue<int>(r, "v.a") attached the reader to "w.v.a" instead of "v.a". In this scenario there wad no way to access "v.a", because constructing TTreeReaderValue<int>(r, "v") attached to "w.v" (and anyway, if it attached to the top level branch "v", it would have yielded the following error message: Error in <TTreeReaderValueBase::GetBranchDataType()>: The branch v was created using a leaf list and cannot be represented as a C++ type. Please access one of its siblings using a TTreeReaderArray: Error in <TTreeReaderValueBase::GetBranchDataType()>: v.a This behaviour was due to the fact that TTree::GetBranch identified branch 2 and this had priority wrt the search of branch elements the names of which contained a "dot". This change reverts the priority order. | 04 October 2018, 06:56:17 UTC |
b8e8aca | Danilo Piparo | 18 September 2018, 11:20:18 UTC | [Doc] Clarify doc of TTree::Branch | 04 October 2018, 06:56:10 UTC |
a16743e | Philippe Canal | 02 October 2018, 15:30:23 UTC | Fix ROOT-9701, IO read rules seemingly no longer executed. The rule were actually still executed on the proper object and in the right order. However when we had - a top level object with a rule for one of its transient member - that top level object also having a data member that is an STL collection. then the fOnfileObject (type TVirtualArray) was inadvertently resized by the top node of the STL object (i.e 'type 4' branch) to the size of the collection. Before the improvement to the rule scheduling the ordering of operations was: 1 - a - resize the top level object's fOnfileObject to 1 2 - b - read the input for the transient member into the fOnfileObject 3 - c - execute the rule using the input/fOnfileObject and updating the transient member 4 - d - resize the top level object's fOnfileObject to size of sub-collection The last stage provoke a reallocation of the element of fOnfileObject (thus losing the input but only 'after' it has been used. With the new rule scheduling the order becomes 1 - a - resize the top level object's fOnfileObject to 1 2 - b - read the input for the transient member into the fOnfileObject 3 - d - resize the top level object's fOnfileObject to size of sub-collection 4 - c - execute the rule using the input/fOnfileObject and updating the transient member and now the consequence of the inadvertent resize becomes visible. i.e. for each entry where the sub-collection 'grows' the transient member value will be invalid. [Note: in the example provided with ROOT-9701 the sub-collection 'grows' by one at each entry] | 03 October 2018, 22:33:06 UTC |
4cfdbbe | Bertrand Bellenot | 03 October 2018, 15:36:54 UTC | Don't use VirtualQuery to check if the memory is valid Calling VirtualQuery() is very expansive. For example, the testUnfold5a.C tutorial (interpreted) times out after 3600 seconds, and runs in about 60 seconds without calling VirtualQuery(). So just bypass it and return true for the time being | 03 October 2018, 15:36:54 UTC |
7fb80b3 | Bertrand Bellenot | 03 October 2018, 13:51:32 UTC | From Sergey: Try to fix compilation error | 03 October 2018, 13:51:32 UTC |
5e00e00 | Sergey Linev | 01 October 2018, 21:55:02 UTC | mysql: special handling of MariaDB when redefining my_bool (cherry picked from commit 8ef9878add1ad950aca81c53bb83910c8058dc3f) | 02 October 2018, 11:48:34 UTC |
742a4a1 | Sergey Linev | 01 October 2018, 21:35:05 UTC | mysql: while my_bool used in statement, provide typedef for v8 (cherry picked from commit fd2bf356491f4b10dd151f6d2a44c9ae4bcc44f6) | 02 October 2018, 11:48:28 UTC |
6dc0779 | Sergey Linev | 01 October 2018, 21:26:06 UTC | mysql: use bool instead of my_bool type Fixes https://sft.its.cern.ch/jira/projects/ROOT/issues/ROOT-9624 Description: https://bugs.mysql.com/bug.php?id=85131 (cherry picked from commit a7f05afce40b6ab1d8a50f831f292dbaba754b02) | 02 October 2018, 11:48:22 UTC |
260d80a | Philippe Canal | 01 October 2018, 17:42:37 UTC | Update release notes | 01 October 2018, 19:26:10 UTC |
d147a89 | Philippe Canal | 29 September 2018, 18:32:45 UTC | Fix ROOT-9694, GetStreamerInfoList infinite recursion. Commit b6523df224 introduces the infinite recursion whenever there was a problem reading the StreamerInfo record and introduces a useless attempt to read from file in the case of a class derived from TFile that overrid GetStreamerInfoList. To allow for increase run-time performance and increase thread scalability the override ability of TFile::GetStreamerInfoList is replaced by an override of TFile::GetStreamerInfoListImp with updated return type and arguments. If a class override TFile::GetStreamerInfoList you will now see a compilation error like: ``` /opt/build/root_builds/rootcling.cmake/include/TSQLFile.h:225:19: error: declaration of 'GetStreamerInfoList' overrides a 'final' function virtual TList *GetStreamerInfoList(); ^ /opt/build/root_builds/rootcling.cmake/include/TFile.h:231:24: note: overridden virtual function is here virtual TList *GetStreamerInfoList() final; // Note: to override behavior, please override GetStreamerInfoListImpl ^ ``` Instead you need to override the protected method: ``` InfoListRet GetStreamerInfoListImpl(bool lookupSICache); ``` which can be implemented as ``` InfoListRet DerivedClass::GetStreamerInfoListImpl(bool /*lookupSICache*/) { ROOT::Internal::RConcurrentHashColl::HashValue hash; TList *infolist = nullptr; // // Body of the former Derived::GetStreamerInfoList with the // return statement replaced with something like: // The second element indicates success or failure of the load. // (i.e. {nullptr, 0, hash} indicates the list has already been processed // {nullptr, 1, hash} indicates the list failed to be loaded return {infolist, 0, hash}; } ``` See TFile::GetStreamerInfoListImpl implementation for an example on how to implement the caching. | 01 October 2018, 19:26:10 UTC |
f315be1 | moneta | 01 October 2018, 10:20:50 UTC | Check read dimension only for versions > 11. Before fNdim was a transient data member. This fixes ROOT-9693 and ROOT-9703 | 01 October 2018, 11:27:56 UTC |
c9c68ab | Philippe Canal | 28 September 2018, 21:50:56 UTC | Fix array initialization | 29 September 2018, 18:42:57 UTC |
859252a | Philippe Canal | 28 September 2018, 01:50:54 UTC | Fix ROOT-9662 race condition in TStreamerInfo loading. When noting that a TStreamerInfo set has already been processed, we must do it in 3 separates steps: - check it was seen before - read and process the set - record that the set as been seen. The previous situation: - check and record that the set as been seen - read and process the set led to a race condition if a second thread was checking the same set before the second step was completed (in which case the second thread was believing that the set was process and looking for the result of the process (one of the StreamerInfo) but could not find it. We extend RConcurrentHashColl to have 2 new operations - standalone Hash calculation - standalone Find of hash - standalone Insert of hash. and we use it to split the check and the recording as described previously. (this is an addendum to 95bf468438) | 29 September 2018, 18:42:57 UTC |