swh:1:snp:af87cd67498ef4fe47c76ed3e7caffe5b61facaf

sort by:
Revision Author Date Message Commit Date
75c0d62 Fix handling of ':' character in a TDirectory name 24 October 2019, 15:57:23 UTC
04be753 Update release notes (hadd speed) 24 October 2019, 14:21:07 UTC
c587105 [hadd] Delay reset of kMustCleanup to avoid recording the change 24 October 2019, 14:21:07 UTC
89a5476 [hadd] Delete the directory from the input file as soon as done with it. So far only the directory for the _first_ input file were delete immmediately, all the other were kept in memory until the files were close. This reduces memory consumption and speedup file closing (tear down) speed. 24 October 2019, 14:21:07 UTC
2fc42fe [hadd] Mark all read objects as do-not-cleanup 24 October 2019, 14:21:07 UTC
e6ae50a TMessage: do not access not-allocated buffer ROOT-10340 When wrong-formatted TMessage is received, length of buffer may be 0. As result, buffer may not be allocated at all. One should avoid that in such case memory is accessed 15 October 2019, 17:49:44 UTC
3a63bc9 Fix handling of inline namespace std::__cxx11 in TClassEdit::GetSplit This fixes ROOT-8396 The issues was the normalization of "std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >" into vector<string> due to the inline namespace (__cxx11). Prior to this commit, it would work but only if the name for normalized twice. This because the order of operation was 1. check if the name is std::basic_string or basic_string 2. do more stuff 3. remove std and std::[any-inlined-namespace-name] now we extended 1 to also search for std::[any-inlined-namespace-name]::basic_string 25 September 2019, 11:47:22 UTC
bb9e08e Must set fMaxClusterRange (transient) in TTree::Streamer. This lead to corrupted cluster range tables (and thus failure in dataframe_snapshot) when importing the cluster table into a TTree that was just read from file and has a cluster table. 30 January 2019, 01:19:28 UTC
f55005c Add basketsInfo option to TBranch::Print 30 January 2019, 01:19:28 UTC
510015d Insure TTreeCloner keep the AutoFlush history. 30 January 2019, 01:19:28 UTC
63fb599 Do not keep AutoFlush history when GetEntries() is 0 30 January 2019, 01:19:28 UTC
6b2664e Update builtin version of openssl to 1.0.2o 16 April 2018, 08:43:51 UTC
a992483 gCoreMutex is not yet available 29 March 2018, 19:03:13 UTC
b036712 Prevent wild over-read when reading badly clustered file. In some cases where the memory available to the TTreeCache can not fit the entirety of (potentially odd-shaped) cluster, the TTreeCache could end up with a situation where (starting at some point) it is invalidated at each entry *and* the basket from the previous cluster boundary up to some entry number less than the current entry are loaded over and over again (until the entry number reaches the next cluster boundary). In a case encountered by CMS, a TTree has a recorded cluster size of 165 events. However the TTree appears to not have been clustered; most basket size are the same and seem to be flushed at 139 events interval. A few branches are flushed less frequently, for example EventAuxiliary is flushed every 459 entries. As a consequence when entry 417 is requested, the cluster boundary is calculated as 330 and the first end as 495. Then all basket containing entries in that range are loaded, including EventAuxiliary's basket containing entries 459 to 917. Then 917 is the highest available (partial) entry available. Thus the next time the TTreeCache is invalidated is when entry 918 is requested. As that point the cluster boundary is calculated as 845 and the first end as 495, however (with the small enough TTreeCache size), the cache is full as soon as the basket for EventAuxiliary is added. This resulted in a 'valid' range for this cache of 845 to 917 and lead to the reading all the baskets added so far ... and thus eventhough none of them would be used for reading and they already had been read once in memory. Then for entry 919, the exact same behavior repeated. The solution consist on marking the 'minimum' valid range as being 'at least' one cluster wide. Thus in the example above for entry 918 through 989, **only** the missing baskets are read individually resulting in 'degraded' performance but **not** a wild over-read. A future enhancement would be, in those cases, restart the next buffer from the last valid entry + 1 rather than the previous event boundary. This would result in a 'slightly' over-read (some baskets might be read twice) rather than the wild useless over-read we had. 29 March 2018, 18:49:22 UTC
8622a77 Actually enable TTree::Print("clusters"). It was unusable due to a typo 29 March 2018, 18:49:21 UTC
36d0b0a Simplify and fix thread-safetly in TFormLeafInfoMethod::ReturnTClass 29 March 2018, 15:21:07 UTC
a8b4eca Restore TTree::Draw ability to use function return a reference to object. For example std::vector::at 29 March 2018, 15:21:05 UTC
e12a366 Remove unwanted errors when looking for R modules 11 January 2018, 15:08:58 UTC
1ff2f92 Define PYTHIA8DATA if not defined 11 January 2018, 15:08:01 UTC
fb34c6b Fix for ROOT-9180 - If R components Rcpp and RInside are missing the 'r' option should be disabled 11 January 2018, 08:43:00 UTC
9c84903 Fix for ROOT-7650 - Complete the 'hdfs' option with CMake 10 January 2018, 07:36:30 UTC
4373d0d TTree::Draw(): Respect binning when drawing TProfile2D with 'col'. When drawing a TProfile2D with TTree::Draw() the histogram Y-axis binning was not set correctly in case the options 'col' and 'prof' where used at the same time in the TTree::Draw() option argument. For example: tree->Draw("var:y:x>>h(100,-1,1,200,-2,2)", "", "colzprof") produced a TProfile2D with 100 bins from -1 to 1 in X, but only 40 bins from -2 to 2 in Y. This fixes ROOT-9034. 24 November 2017, 08:22:07 UTC
3784039 TDavixFile: add support for cross-protocol metalinks Original patch by Georgios Bitzes, manual rebase onto master. (cherry picked from commit 0ddce09a6fd7a25c19de07f1c5a5fe7dd8fba7dc) 23 November 2017, 15:32:25 UTC
7ad9b54 Set CMake policy CMP0068 to NEW for LLVM This change is to avoid warnings from CMake 3.9.3 and newer on macOS. See cmake --help-policy CMP0068 for more information. Fixes ROOT-9031. 16 November 2017, 10:31:49 UTC
9a01cb7 Fixing Ninja error about multiple rules generate liblz4.a 03 October 2017, 18:11:35 UTC
392ddcf Pass ROOT CMake variables to LZ4 build. This ensures that the LZ4 internal build is built with the same compiler as the rest of ROOT. 03 October 2017, 18:11:35 UTC
c9f805c Update CMake policy settings to CMake version 3.4.3 The command cmake_minimum_required(VERSION 3.4.3) implicitly calls cmake_policy(VERSION 3.4.3), which means that policies created in CMake versions prior to 3.4.3 will use the NEW setting by default, and newer policies will generate warnings. After this change, only CMP0068 (CMake 3.9) still needs to be set explicitly as using NEW behavior. 1. https://cmake.org/cmake/help/latest/command/cmake_policy.html 28 September 2017, 19:03:06 UTC
d7a2be0 Fix CMake warnings regarding policy CMP0022 28 September 2017, 19:03:05 UTC
ea86ad8 Remove unused variable causing a compilation warning 28 September 2017, 19:03:05 UTC
c99deb4 Fixing cherry-picking for LZ4 support for makefile ROOT v6-08-00 (classic build) 28 September 2017, 04:21:25 UTC
93b2ef0 Extending FindLZ4.cmake with xxhash includes/library needed for LZ4 checksum functionality 26 September 2017, 20:00:49 UTC
83bdcae Adding support of LZ4 in hadd 19 September 2017, 20:58:59 UTC
318ea9c Adding LZ4 builtin definitions to separate builds with LZ4 builtin and external xxhash 19 September 2017, 20:58:59 UTC
fda9ff6 Adding in addition to LZ4-builtin hxxhash, support to pure xxhash API for builtin_lzma=OFF case 19 September 2017, 20:58:59 UTC
c047cb4 Fix classic build when using builtin LZ4 19 September 2017, 20:58:59 UTC
59d3628 Fixing includes for classic build LZ4 after adding new checksum feature 19 September 2017, 20:58:59 UTC
ff11980 Add LZ4 support to classic configure scripts. 19 September 2017, 20:58:59 UTC
06c6ace Formatting fixes for clang-format. 19 September 2017, 20:58:59 UTC
4870724 Add checksum to the LZ4 compressed buffer format. Simply reuses the XXHASH implementation from the LZ4 library (also used in the LZ4 frame format). 19 September 2017, 20:58:59 UTC
60161b2 Fixes in CMakefiles after merging 19 September 2017, 20:58:59 UTC
84deee7 Fixing merge conflicts 19 September 2017, 20:58:59 UTC
6a6eef5 Treat lz4 as all other built-ins 19 September 2017, 20:58:59 UTC
bc8d00c Whitespace-only changes for clang-tidy. 19 September 2017, 20:58:59 UTC
6df32e9 Do not use Unix-specific flag on Windows. 19 September 2017, 20:58:59 UTC
ece0d99 Make use of TTreePlayer optional. 19 September 2017, 20:58:59 UTC
b0babd2 Rename xz to lzma to be self-consistent. 19 September 2017, 20:58:59 UTC
8c737e4 Refactor common logic into helper functions. 19 September 2017, 20:58:59 UTC
18b3cdd Utilize constant, not hardcoded integer. Add LZ4 support to core library. 19 September 2017, 20:58:59 UTC
e0770a3 Touch-up whitespace per clang-tidy. Update copyright date on files new to this branch. Add comment explaining logic in CMakeFile.txt Mostly whitespaces; of note, the re-definition of R__likely/unlikely has been moved back into RConfig.h. 19 September 2017, 20:58:59 UTC
ad919d7 Hardcode LZ4 tarball URL to point at GitHub. 19 September 2017, 20:58:59 UTC
24a388e Add support for LZ4 as a compression format. Add lz4 source tarball for built-in version. Tweak Event example to make it easier to compare compression algorithms. Tweak build files for Event example to include TreePlayer (for TTreePerfStats). Until we're sure we need it, no special path for Win32. Add -fPIC flag to compile lz4 19 September 2017, 20:58:59 UTC
f6d9026 Remove unnecessary search in GetMissingDictionariesForMembers. If TDataMember has a TDataType then the member has a basic type. TDataType::Class 'just' returns the TClass representing TDataType itself. 28 August 2017, 20:47:56 UTC
91d5c0a Actually activate GetMissingDictionariesForBaseClasses. It was inadvertently useless as TBaseClass::Class() returns the TClass describing TBaseClass itself while TBaseClass::GetClassPointer returns the TClass describing the base class. 28 August 2017, 20:47:54 UTC
9565886 White space 28 August 2017, 20:47:51 UTC
6fb5cef Update release notes 25 August 2017, 18:47:21 UTC
18d854e Avoid leaking 'old' TProtoClass 25 August 2017, 18:45:43 UTC
b494f0d Fix ROOT-8896 (Problem with string_view's operator<<) 16 August 2017, 18:34:10 UTC
31d3b15 Fix ROOT-8946 (TViewPubDataMembers finding wrong element). This was due to THashList::GetListForObject returning a list that contains more than just the request objects. 08 August 2017, 17:31:49 UTC
5d1f785 Update Release notes 22 June 2017, 21:27:16 UTC
162c98d Fixing an O(N^2) scaling problem caused by TTree::Draw() * TTreeFormala::GetRealInstance repeatedly went trough a while loop that was trasversed again and again for each new query (with lineary increasing instances). This led to a real problem when drawing on a branch that consistent of many data objects (themselves containing small variable sized containers). * The problem is fixed by caching the state of a previous call. 22 June 2017, 21:25:47 UTC
42b847b Use full path for loading CDLL 16 June 2017, 15:00:58 UTC
e2951b4 These days, freetype depends on -lz. (cherry picked from commit a41483a1ecd61f77751875ae3a3ad0c4c3636449) 08 June 2017, 07:54:56 UTC
40389fb Insure that the TBranch Streamer is used in GetTotalSize. This insures that the already-written basket are not included. 03 June 2017, 21:06:30 UTC
a10090c In TBranch::Streamer insure that we never steam already basket already written to disk 03 June 2017, 21:06:30 UTC
5b403bb Remove unused variable 03 June 2017, 09:38:28 UTC
79dbf2d Small change to TTree::OptimizeBaskets to avoid disc reads 02 June 2017, 20:07:35 UTC
fc98e39 ROOT-8811 - python: cannot pickle ROOT.Long() (not found as ROOT.long) 31 May 2017, 19:43:55 UTC
fe7763a Fix for ROOT-8809 - push_back on a vector of pointers may not work in PyROOT 31 May 2017, 15:45:12 UTC
91b8ef6 Fix for ROOT-8805 - itemsize not set on buffers returned by PyROOT functions 31 May 2017, 09:20:18 UTC
5c29813 Fix ROOT-8804 (crash in InitCounter function) The problem was induced by a class name and normalized class name being different but being mistaken for a case of schema evolution 28 May 2017, 20:00:31 UTC
c5d5840 Be more precise about the type needed by TStreamerElement::Init 28 May 2017, 20:00:31 UTC
0654dcd GMDLParser: Parse floating point value followed only by white space with stod. This has the side-effect of greatly reducing (actually eliminating in the case reported at ROOT-ABCD) the number of calls made by the GDMLParser into the interpreter. This is turn help avoid triggering the kernel bug (present in 3.10, fixed in 4.11) It is a kernel bug where memory pages that moved back from the page file *sometimes* get the executable bit (or some other page table information) copied incorrectly and/or not on time. We have verified that the problem is seen for both bare-metal and VM running a 3.10 kernel and is *not* seen in neither bare-metal and VM running a 4.11. Some of the changes in the kernel source code between the two version are explicitly race condition in the page fault/retiring handler that lead to already moved page being written to. 25 May 2017, 19:54:45 UTC
3a495ad Use __STRICT_ANSI__ and __FAST_MATH__ as set during compilation of cling. (cherry picked from commit 2da9530fa69e17f0a4d95aecfad55430d244c806) 19 May 2017, 16:02:57 UTC
ff9a7c0 Address ROOT-8795 by locking the access to fSpecials in TROOT::FindObject. CMS has been seeing a periodic crash involving TH2::DoProjection while another thread happens to be doing a minimization. The incidents can be seen here https://github.com/cms-sw/cmssw/issues/18620 The problem is the following: TH2::DoProjection calls TROOT::FindObject https://root.cern.ch/doc/master/TH2_8cxx_source.html#l02086 TROOT::FindObject reads fSpecials without taking the lock https://root.cern.ch/doc/master/TROOT_8cxx_source.html#l01202 while TMinuit manipulates the list of specials while holding a lock. E.g. https://root.cern.ch/doc/master/TMinuit_8cxx_source.html#l00463 If TH2::DoProjection is running concurrently as TMinuit is begin used, it leads to a data race which causes the crash. 16 May 2017, 14:52:04 UTC
687d51e Update release notes 15 May 2017, 20:27:24 UTC
76a461c Avoid nullptr dereference 15 May 2017, 19:40:55 UTC
f7fd2e0 Correct out-of order lock acquisition. Previously we had: TFile::Open TFile::GetType TUnixSystem::IsPathLocal TSystem::FindHelper TPluginHandler::CheckForExecPlugin ** take the TPluginHandler lock ** TPluginHandler::SetupCallEnv TClass::GetClass ** take the ROOT/Interpreter lock ** vs TFile::Open TPluginHandler::ExecPluginImpl ** take the ROOT/Interpreter lock ** TMethodCall::Execute ... interpreter layer TPluginManager::AddHandler ** take the TPluginHandler lock ** 15 May 2017, 19:24:46 UTC
88b8054 Set the kNotGlobal bit when removing a TF1 from the global list. This avoids spurrious warning about inconsitent state in the case where multiple thread create (for fitting) multiple function with the same name and remove them 'concurrently' with AddToGlobalList(false). 15 May 2017, 19:24:42 UTC
50ad534 Mention TMinuit thread friendliness 13 May 2017, 04:11:16 UTC
c583e7f Make mnrn15 consistent upon usage by multiple thread. The results are now correct but not reproduceable, the stream of random number in all the thread are intermingled. 13 May 2017, 02:25:50 UTC
4e4441a Add missing file static to hide variable 13 May 2017, 02:25:49 UTC
0c9197d Remove unnecessary static 13 May 2017, 02:25:49 UTC
b931f41 Remove unnecessary goto 13 May 2017, 02:25:48 UTC
f6a4e0c Make const expression constexpr 13 May 2017, 02:25:48 UTC
5071e51 Remove unnecesarry static or make them const 13 May 2017, 02:25:47 UTC
659bf50 Fix for ROOT-8792 - Compilation with builtin XRootD fails with GCC 7 11 May 2017, 19:52:50 UTC
e3bde5c Dyn scopes: skip scopes nested in the wrapper (ROOT-8773). (cherry picked from commit ab4b24b439c6aaee8a8bf6b810be38b6069c96a2) 04 May 2017, 13:21:57 UTC
f7b3366 Process sequentially special branch fBranchRef. As pointed out by Philippe: if requested by the user, a special branch (recorded in TTree::fBranchRef) is created that keeps track of which branch contains objects that are 'referenced' by TRef. Upon reading and then dereferencing of a TRef object, TRef::GetObject is called which turns around and calls TBranchRef::Notify which will call GetEntry on the branch. There might be a race condition in the multi-threaded TTree::GetEntry if TRef::GetObject is called during its execution. This is possible if the user inserts schema-evolution rules that use the TRef. So it might be wise to pre-emptively load the TBranchRef in the sequential section. 02 May 2017, 14:07:07 UTC
3b5851e Fix for tutorial-multicore-imt001_parBranchProcessing. In the input file of the aforementioned tutorial, some top-level branches depended on another branch that determined their size for every entry (e.g. the size of an array branch). When processing this kind of data, branches that depend on size (or count) branches will trigger a call to TBranch::GetEntry on the latter to ensure their size is read. The scenario described above made the parallelization of TTree::GetEntry thread-unsafe, since a count branch could be processed at the same time by two tasks: its own task and the task that was processing the branch that needed the size. This has been solved by factoring out the count branches, which are processed first sequentially and independently of the rest of the branches. The latter can be processed safely in parallel afterwards because all the sizes have been read already. 02 May 2017, 14:06:52 UTC
9d7a01f Update TCollectionProxy/fEnv when reading a new entry (ROOT-8747). Before, Read() relied on the caller to do the Pop/PushProxy pair, and that rarely happend. (cherry picked from commit f1f19924590f7a180b1b4140cb430686bcb57364) 02 May 2017, 11:59:53 UTC
c7d2631 Added Float16_t as fundamental type for PyROOT. Completes ROOT-8732. 27 April 2017, 09:08:47 UTC
03d9b19 Adding explicitely the impicit fortran libraries. This fixes the problem observed on MacOS with latest versions of gfortran. 26 April 2017, 16:57:41 UTC
8715261 [TMVA] Prevent double->float conversions in TestMatrixArithmetic Casting the matrices from double to float create small rounding errors of the order of 1e-06 in the reference matrices themselves, so when they are multiplied the sum over long rows/columns accumulates many rounding errors and make the test fail. Using TMatrixT of float as the reference to begin with eliminates this problem. 21 April 2017, 08:28:14 UTC
5774ffa Fix for ROOT-8732 (#517) * Fix for ROOT-8732 - PyROOT cannot read/write C++ class fields of Double32_t * Try to please clang-format * Again :-( 20 April 2017, 21:42:53 UTC
6eb2b67 rootd: do not use popen() to expand path names (#513) Addressed security threat reported by S. Luders. Using the same technology used in TSystem::ExpandFileName (with clang-format processing). 19 April 2017, 15:32:45 UTC
0a96bfe Fix for ROOT-8752- ROOT_GENERATE_DICTIONARY generates rootmap with wrong libsuffix on MacOS 19 April 2017, 14:39:10 UTC
1e97147 [IO] Fix ROOT-8742 cannot safely run on a tree in different threads even if the trees come from files opened in each thread. The solution consists in protecting the TBranchElement::SetAddress. 18 April 2017, 05:41:27 UTC
728bf7b Update copyright notice 18 April 2017, 05:40:41 UTC
b6e22d2 Fix for the precision on ARM64 13 April 2017, 10:26:05 UTC
03a32ab Attempt to fix roottest_root_math_genvector_coordinates4D on ARM64. 13 April 2017, 10:26:05 UTC
back to top