Uploaded image for project: 'ROOT'
  1. ROOT
  2. ROOT-10561

[TTreeProcessorMT] Breaks without EnableImplicitMT on

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: High
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 6.22/00
    • Component/s: None
    • Labels:
      None
    • Environment:

      master on bab74f41abe51c377133c7c62efa13b0be71cf9b

      Description

      TTreeProcessorMT breaks without EnableImplicitMT called before. The problem is, that we access GetImplicitMTPoolSize before creating the pool via TThreadExecutor and then we divide eventually by zero.

      We go [0] into MakeClusters, calling [1] GetImplicitMTPoolSize (returning zero, because uninitialized) and then fail shortly after [2] when we divide by zero.

      [0] https://github.com/root-project/root/blob/master/tree/treeplayer/src/TTreeProcessorMT.cxx#L500
      [1] https://github.com/root-project/root/blob/master/tree/treeplayer/src/TTreeProcessorMT.cxx#L218
      [2] https://github.com/root-project/root/blob/master/tree/treeplayer/src/TTreeProcessorMT.cxx#L224

       

      The solution would be creating the pool manager first, which sets the pool size before.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                eguiraud Enrico Guiraud
                Reporter:
                swunsch Stefan Wunsch
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: