docs: @Override
      public int extractPerFragmentStats(int batchSize, long[] executionTimesOut) {
          m_perFragmentStatsBuffer.clear();
          // Discard the first byte since it is the timing on/off switch.
          m_perFragmentStatsBuffer.get();
          int succeededFragmentsCount = m_perFragmentStatsBuffer.getInt();
          if (executionTimesOut != null) {
              assert(executionTimesOut.length >= succeededFragmentsCount);
              for (int i = 0; i < succeededFragmentsCount; i++) {
                  executionTimesOut[i] = m_perFragmentStatsBuffer.getLong();
              }
              // This is the time for the failed fragment.
              if (succeededFragmentsCount < executionTimesOut.length) {
                  executionTimesOut[succeededFragmentsCount] = m_perFragmentStatsBuffer.getLong();
              }
          }
          return succeededFragmentsCount;
      }