Skip to content

Bugfix: set the next-header flag correctly in a stack as parameter#1076

Merged
matthiasrichter merged 1 commit into
AliceO2Group:devfrom
matthiasrichter:fix-stack
May 17, 2018
Merged

Bugfix: set the next-header flag correctly in a stack as parameter#1076
matthiasrichter merged 1 commit into
AliceO2Group:devfrom
matthiasrichter:fix-stack

Conversation

@matthiasrichter

Copy link
Copy Markdown
Collaborator

The argument list to built up a header stack can be an argument pack
of stacks and BaseHeader-derived headers. Since staks consist of a
collection of headers, the next-header flag must be set in the last
header of the sequence. Until now, the flag was only set in the first
header (where it was already before)

@matthiasrichter matthiasrichter requested a review from mkrzewic May 15, 2018 21:37
@alibuild

Copy link
Copy Markdown
Collaborator

Error while checking build/O2/o2-dev-fairroot for 5951ace1c21fc0fbf9018a0b0a6f6b1e8fb2044d:

sw/BUILD/FairRoot-latest/log
-- Checking C++11 support for "decltype": works
-- Checking C++11 support for "initializer_list"
-- Checking C++11 support for "initializer_list": works
-- Checking C++11 support for "lambda"
-- Checking C++11 support for "lambda": works
-- Checking C++11 support for "long_long"
-- Checking C++11 support for "long_long": works
-- Checking C++11 support for "nullptr"
-- Checking C++11 support for "nullptr": works
-- Checking C++11 support for "regex"
-- Checking C++11 support for "regex": works
-- Checking C++11 support for "rvalue-references"
-- Checking C++11 support for "rvalue-references": works
-- Checking C++11 support for "sizeof_member"
-- Checking C++11 support for "sizeof_member": works
-- Checking C++11 support for "static_assert"
-- Checking C++11 support for "static_assert": works
-- Checking C++11 support for "variadic_templates"
-- Checking C++11 support for "variadic_templates": works
-- Checking C++11 support for "sharedpointer"
-- Checking C++11 support for "sharedpointer": works
-- Checking C++11 support for "funcptr-to-lambda-conversion"
-- Checking C++11 support for "funcptr-to-lambda-conversion": works
-- fairsoft-config not found
--- Found a Linux system
--- Found GNU compiler collection
--- Build Type: RELWITHDEBINFO
--- Compiler Flags: -fPIC -O2 -std=c++14  -O2 -g -Wshadow
-- Looking for Root...
-- Looking for Root... - Found /mnt/mesos/sandbox/sandbox/sw/slc7_x86-64/ROOT/v6-12-06-2/bin/root
-- Looking for Root... - Found version is 6.12/06 
CMake Error at CMakeLists.txt:162 (find_package):
  By not providing "FindFairLogger.cmake" in CMAKE_MODULE_PATH this project
  has asked CMake to find a package configuration file provided by
  "FairLogger", but CMake did not find one.

  Could not find a package configuration file provided by "FairLogger"
  (requested version 1.1.0) with any of the following names:

    FairLoggerConfig.cmake
    fairlogger-config.cmake

  Add the installation prefix of "FairLogger" to CMAKE_PREFIX_PATH or set
  "FairLogger_DIR" to a directory containing one of the above files.  If
  "FairLogger" provides a separate development package or SDK, be sure it has
  been installed.


-- Configuring incomplete, errors occurred!

Full log here.

@alibuild

Copy link
Copy Markdown
Collaborator

Error while checking build/o2checkcode/o2 for 5951ace1c21fc0fbf9018a0b0a6f6b1e8fb2044d:

sw/BUILD/O2-latest/log
Scanning dependencies of target TimeFrame
[ 29%] Building CXX object DataFormats/TimeFrame/CMakeFiles/TimeFrame.dir/src/TimeFrame.cxx.o
/mnt/mesos/sandbox/sandbox/sw/SOURCES/O2/0_O2_DATAFLOW/0/DataFormats/Headers/test/testDataHeader.cxx: In member function 'void o2::header::headerStack_test::test_method()':
/mnt/mesos/sandbox/sandbox/sw/SOURCES/O2/0_O2_DATAFLOW/0/DataFormats/Headers/test/testDataHeader.cxx:207:44: error: 'o2::header::Stack::Buffer o2::header::Stack::buffer' is protected within this context
       auto* h3 = get<test::MetaHeader*>(s1.buffer.get());
                                            ^~~~~~
In file included from /mnt/mesos/sandbox/sandbox/sw/SOURCES/O2/0_O2_DATAFLOW/0/DataFormats/Headers/test/testDataHeader.cxx:17:0:
/mnt/mesos/sandbox/sandbox/sw/SOURCES/O2/0_O2_DATAFLOW/0/DataFormats/Headers/include/Headers/DataHeader.h:452:10: note: declared protected here
   Buffer buffer;
          ^~~~~~
/mnt/mesos/sandbox/sandbox/sw/SOURCES/O2/0_O2_DATAFLOW/0/DataFormats/Headers/test/testDataHeader.cxx:209:38: error: 'o2::header::Stack::Buffer o2::header::Stack::buffer' is protected within this context
       h3 = get<test::MetaHeader*>(s2.buffer.get());
                                      ^~~~~~
In file included from /mnt/mesos/sandbox/sandbox/sw/SOURCES/O2/0_O2_DATAFLOW/0/DataFormats/Headers/test/testDataHeader.cxx:17:0:
/mnt/mesos/sandbox/sandbox/sw/SOURCES/O2/0_O2_DATAFLOW/0/DataFormats/Headers/include/Headers/DataHeader.h:452:10: note: declared protected here
   Buffer buffer;
          ^~~~~~
/mnt/mesos/sandbox/sandbox/sw/SOURCES/O2/0_O2_DATAFLOW/0/DataFormats/Headers/test/testDataHeader.cxx:211:32: error: 'o2::header::Stack::Buffer o2::header::Stack::buffer' is protected within this context
       h1 = get<DataHeader*>(s2.buffer.get());
                                ^~~~~~
In file included from /mnt/mesos/sandbox/sandbox/sw/SOURCES/O2/0_O2_DATAFLOW/0/DataFormats/Headers/test/testDataHeader.cxx:17:0:

Full log here.

@alibuild

Copy link
Copy Markdown
Collaborator

Error while checking build/O2/o2 for 5951ace1c21fc0fbf9018a0b0a6f6b1e8fb2044d:

sw/BUILD/O2-latest/log
Scanning dependencies of target TimeFrame
[ 26%] Building CXX object DataFormats/TimeFrame/CMakeFiles/TimeFrame.dir/src/TimeFrame.cxx.o
/mnt/mesos/sandbox/sandbox/sw/SOURCES/O2/dev/0/DataFormats/Headers/test/testDataHeader.cxx: In member function 'void o2::header::headerStack_test::test_method()':
/mnt/mesos/sandbox/sandbox/sw/SOURCES/O2/dev/0/DataFormats/Headers/test/testDataHeader.cxx:207:44: error: 'o2::header::Stack::Buffer o2::header::Stack::buffer' is protected within this context
       auto* h3 = get<test::MetaHeader*>(s1.buffer.get());
                                            ^~~~~~
In file included from /mnt/mesos/sandbox/sandbox/sw/SOURCES/O2/dev/0/DataFormats/Headers/test/testDataHeader.cxx:17:0:
/mnt/mesos/sandbox/sandbox/sw/SOURCES/O2/dev/0/DataFormats/Headers/include/Headers/DataHeader.h:452:10: note: declared protected here
   Buffer buffer;
          ^~~~~~
/mnt/mesos/sandbox/sandbox/sw/SOURCES/O2/dev/0/DataFormats/Headers/test/testDataHeader.cxx:209:38: error: 'o2::header::Stack::Buffer o2::header::Stack::buffer' is protected within this context
       h3 = get<test::MetaHeader*>(s2.buffer.get());
                                      ^~~~~~
In file included from /mnt/mesos/sandbox/sandbox/sw/SOURCES/O2/dev/0/DataFormats/Headers/test/testDataHeader.cxx:17:0:
/mnt/mesos/sandbox/sandbox/sw/SOURCES/O2/dev/0/DataFormats/Headers/include/Headers/DataHeader.h:452:10: note: declared protected here
   Buffer buffer;
          ^~~~~~
/mnt/mesos/sandbox/sandbox/sw/SOURCES/O2/dev/0/DataFormats/Headers/test/testDataHeader.cxx:211:32: error: 'o2::header::Stack::Buffer o2::header::Stack::buffer' is protected within this context
       h1 = get<DataHeader*>(s2.buffer.get());
                                ^~~~~~
In file included from /mnt/mesos/sandbox/sandbox/sw/SOURCES/O2/dev/0/DataFormats/Headers/test/testDataHeader.cxx:17:0:

Full log here.

@matthiasrichter matthiasrichter changed the title Bugfix: set the next-header flag correctly in the last header Bugfix: set the next-header flag correctly in a stack as parameter May 15, 2018
@alibuild

alibuild commented May 15, 2018

Copy link
Copy Markdown
Collaborator

Error while checking build/o2/macos for 5951ace1c21fc0fbf9018a0b0a6f6b1e8fb2044d:

sw/BUILD/O2-latest/log
Scanning dependencies of target test_DetectorsCommonDataFormats_testDetID
Scanning dependencies of target test_CommonDataFormat_testTimeStamp
Scanning dependencies of target Field
/build/ci_checks/o2_checker_macos_o2_ci_0/sw/SOURCES/O2/1076/0/DataFormats/Headers/test/testDataHeader.cxx:207:44: error: 'buffer' is a protected member of 'o2::header::Stack'
      auto* h3 = get<test::MetaHeader*>(s1.buffer.get());
                                           ^
/build/ci_checks/o2_checker_macos_o2_ci_0/sw/SOURCES/O2/1076/0/DataFormats/Headers/include/Headers/DataHeader.h:452:10: note: declared protected here
--
--
/build/ci_checks/o2_checker_macos_o2_ci_0/sw/SOURCES/O2/1076/0/DataFormats/Headers/include/Headers/DataHeader.h:452:10: note: declared protected here
  Buffer buffer;
         ^
/build/ci_checks/o2_checker_macos_o2_ci_0/sw/SOURCES/O2/1076/0/DataFormats/Headers/test/testDataHeader.cxx:209:38: error: 'buffer' is a protected member of 'o2::header::Stack'
      h3 = get<test::MetaHeader*>(s2.buffer.get());
                                     ^
/build/ci_checks/o2_checker_macos_o2_ci_0/sw/SOURCES/O2/1076/0/DataFormats/Headers/include/Headers/DataHeader.h:452:10: note: declared protected here
--
--
/build/ci_checks/o2_checker_macos_o2_ci_0/sw/SOURCES/O2/1076/0/DataFormats/Headers/include/Headers/DataHeader.h:452:10: note: declared protected here
  Buffer buffer;
         ^
/build/ci_checks/o2_checker_macos_o2_ci_0/sw/SOURCES/O2/1076/0/DataFormats/Headers/test/testDataHeader.cxx:211:32: error: 'buffer' is a protected member of 'o2::header::Stack'
      h1 = get<DataHeader*>(s2.buffer.get());
                               ^
/build/ci_checks/o2_checker_macos_o2_ci_0/sw/SOURCES/O2/1076/0/DataFormats/Headers/include/Headers/DataHeader.h:452:10: note: declared protected here

Full log here.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thinking more about this, I would probably add a bounds check in the infect function, by adding the capacity as parameter and checking that there is enough space, what do you think, @mkrzewic ?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi, at first sight I think a bounds check should not be necessary since the complete buffer size is calculated to be just right...
As for the problem you are trying to solve (thanks for spotting it) I think we need some more type safety there because right now it also takes stuff like arrays and strings: so either restrict the construction of Stack to BaseHeader derived stuff & Stacks AND/OR (in this case) we could add a template specialisation of inject() for Stacks.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ah, ok, then we should really specialize (or restrict) to BaseHeader derived stuff and Stacks. Since arrays and strings fit seamlessly into inject at the moment, casting those to BaseHeader and setting the flag is another bug. I will update the PR.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ah, ok, then we should really specialize (or restrict) to BaseHeader derived stuff and Stacks. Since arrays and strings fit seamlessly into inject at the moment, casting those to BaseHeader and setting the flag is another bug. I will update the PR.

@matthiasrichter matthiasrichter May 16, 2018

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

actually we have to exclude everything else than BaseHeader derived stuff in the Stack. We can not guaranty what is in a Stack when we implement specialized versions of inject, and thus we can not set the flags correctly when building a new Stack from additional headers and Stacks. But we rely on that for navigation. So, for our purpose, we have to limit Stack, even though it is in principle more generic.

@alibuild

Copy link
Copy Markdown
Collaborator

Error while checking build/O2/o2-dev-fairroot for f6bd3fa9b1d30d96a5a59b7b03b1d93a44deee57:

sw/BUILD/FairRoot-latest/log
-- Checking C++11 support for "decltype": works
-- Checking C++11 support for "initializer_list"
-- Checking C++11 support for "initializer_list": works
-- Checking C++11 support for "lambda"
-- Checking C++11 support for "lambda": works
-- Checking C++11 support for "long_long"
-- Checking C++11 support for "long_long": works
-- Checking C++11 support for "nullptr"
-- Checking C++11 support for "nullptr": works
-- Checking C++11 support for "regex"
-- Checking C++11 support for "regex": works
-- Checking C++11 support for "rvalue-references"
-- Checking C++11 support for "rvalue-references": works
-- Checking C++11 support for "sizeof_member"
-- Checking C++11 support for "sizeof_member": works
-- Checking C++11 support for "static_assert"
-- Checking C++11 support for "static_assert": works
-- Checking C++11 support for "variadic_templates"
-- Checking C++11 support for "variadic_templates": works
-- Checking C++11 support for "sharedpointer"
-- Checking C++11 support for "sharedpointer": works
-- Checking C++11 support for "funcptr-to-lambda-conversion"
-- Checking C++11 support for "funcptr-to-lambda-conversion": works
-- fairsoft-config not found
--- Found a Linux system
--- Found GNU compiler collection
--- Build Type: RELWITHDEBINFO
--- Compiler Flags: -fPIC -O2 -std=c++14  -O2 -g -Wshadow
-- Looking for Root...
-- Looking for Root... - Found /mnt/mesos/sandbox/sandbox/sw/slc7_x86-64/ROOT/v6-12-06-2/bin/root
-- Looking for Root... - Found version is 6.12/06 
CMake Error at CMakeLists.txt:162 (find_package):
  By not providing "FindFairLogger.cmake" in CMAKE_MODULE_PATH this project
  has asked CMake to find a package configuration file provided by
  "FairLogger", but CMake did not find one.

  Could not find a package configuration file provided by "FairLogger"
  (requested version 1.1.0) with any of the following names:

    FairLoggerConfig.cmake
    fairlogger-config.cmake

  Add the installation prefix of "FairLogger" to CMAKE_PREFIX_PATH or set
  "FairLogger_DIR" to a directory containing one of the above files.  If
  "FairLogger" provides a separate development package or SDK, be sure it has
  been installed.


-- Configuring incomplete, errors occurred!

Full log here.

@alibuild

Copy link
Copy Markdown
Collaborator

Error while checking build/o2checkcode/o2 for f6bd3fa9b1d30d96a5a59b7b03b1d93a44deee57:

sw/BUILD/O2-latest/log
 5/27 Test #54: test_Framework_test_DataSampling .................   Passed    1.02 sec
      Start 55: test_Framework_test_DataRefUtils
 6/27 Test #55: test_Framework_test_DataRefUtils .................   Passed    0.99 sec
      Start 56: test_Framework_test_DataProcessorSpec
 7/27 Test #56: test_Framework_test_DataProcessorSpec ............   Passed    1.00 sec
      Start 57: test_Framework_test_DeviceMetricsInfo
 8/27 Test #57: test_Framework_test_DeviceMetricsInfo ............   Passed    1.04 sec
      Start 58: test_Framework_test_DeviceSpec
 9/27 Test #58: test_Framework_test_DeviceSpec ...................   Passed    0.92 sec
      Start 59: test_Framework_test_FrameworkDataFlowToDDS
10/27 Test #59: test_Framework_test_FrameworkDataFlowToDDS .......   Passed    0.98 sec
      Start 60: test_Framework_test_Graphviz
11/27 Test #60: test_Framework_test_Graphviz .....................   Passed    0.96 sec
      Start 61: test_Framework_test_InputRecord
12/27 Test #61: test_Framework_test_InputRecord ..................   Passed    0.93 sec
      Start 62: test_Framework_test_ParallelProducer
13/27 Test #62: test_Framework_test_ParallelProducer .............   Passed    3.96 sec
      Start 63: test_Framework_test_LogParsingHelpers
14/27 Test #63: test_Framework_test_LogParsingHelpers ............   Passed    0.86 sec
      Start 64: test_Framework_test_ExternalFairMQDeviceProxy
15/27 Test #64: test_Framework_test_ExternalFairMQDeviceProxy ....   Passed    0.86 sec
      Start 65: test_Framework_test_Services
16/27 Test #65: test_Framework_test_Services .....................   Passed    0.88 sec
      Start 66: test_Framework_test_SingleDataSource
17/27 Test #66: test_Framework_test_SingleDataSource .............   Passed    2.15 sec
      Start 67: test_Framework_test_SuppressionGenerator
18/27 Test #67: test_Framework_test_SuppressionGenerator .........   Passed    1.02 sec
      Start 68: test_Framework_test_TimeParallelPipelining
19/27 Test #68: test_Framework_test_TimeParallelPipelining .......   Passed    1.05 sec
      Start 69: test_Framework_test_TypeTraits
20/27 Test #69: test_Framework_test_TypeTraits ...................   Passed    1.02 sec
      Start 70: test_Framework_test_Variants
21/27 Test #70: test_Framework_test_Variants .....................   Passed    0.98 sec
      Start 71: test_Framework_test_WorkflowHelpers
22/27 Test #71: test_Framework_test_WorkflowHelpers ..............   Passed    0.98 sec
      Start 72: test_Framework_test_TMessageSerializer
23/27 Test #72: test_Framework_test_TMessageSerializer ...........   Passed    1.11 sec
      Start 73: test_Framework_test_DataAllocator
24/27 Test #73: test_Framework_test_DataAllocator ................   Passed    4.15 sec
      Start 74: test_Framework_test_RootTreeReader
25/27 Test #74: test_Framework_test_RootTreeReader ...............   Passed    3.29 sec
      Start 75: test_Framework_test_CallbackRegistry
26/27 Test #75: test_Framework_test_CallbackRegistry .............   Passed    0.90 sec
      Start 76: test_Framework_test_WorkflowOptions
27/27 Test #76: test_Framework_test_WorkflowOptions ..............   Passed    2.95 sec

100% tests passed, 0 tests failed out of 27

Total Test time (real) =  41.09 sec

Full log here.

The argument list to built up a header stack can be an argument pack
of stacks and BaseHeader-derived headers. Since stacks consist of a
collection of headers, the next-header flag must be set in the last
header of the sequence. Until now, the flag was only set in the first
header (where it was already before).

Stack itsself is more generic and would also support e.g. arrays and
strings. However, in order to support header navigation, Stack is
restricted to contain only BaseHeader derived structures. Enforcing
this restriction now with a static_assert.
@alibuild

Copy link
Copy Markdown
Collaborator

Error while checking build/O2/o2-dev-fairroot for c2405f0:

sw/BUILD/FairRoot-latest/log
-- Checking C++11 support for "decltype": works
-- Checking C++11 support for "initializer_list"
-- Checking C++11 support for "initializer_list": works
-- Checking C++11 support for "lambda"
-- Checking C++11 support for "lambda": works
-- Checking C++11 support for "long_long"
-- Checking C++11 support for "long_long": works
-- Checking C++11 support for "nullptr"
-- Checking C++11 support for "nullptr": works
-- Checking C++11 support for "regex"
-- Checking C++11 support for "regex": works
-- Checking C++11 support for "rvalue-references"
-- Checking C++11 support for "rvalue-references": works
-- Checking C++11 support for "sizeof_member"
-- Checking C++11 support for "sizeof_member": works
-- Checking C++11 support for "static_assert"
-- Checking C++11 support for "static_assert": works
-- Checking C++11 support for "variadic_templates"
-- Checking C++11 support for "variadic_templates": works
-- Checking C++11 support for "sharedpointer"
-- Checking C++11 support for "sharedpointer": works
-- Checking C++11 support for "funcptr-to-lambda-conversion"
-- Checking C++11 support for "funcptr-to-lambda-conversion": works
-- fairsoft-config not found
--- Found a Linux system
--- Found GNU compiler collection
--- Build Type: RELWITHDEBINFO
--- Compiler Flags: -fPIC -O2 -std=c++14  -O2 -g -Wshadow
-- Looking for Root...
-- Looking for Root... - Found /mnt/mesos/sandbox/sandbox/sw/slc7_x86-64/ROOT/v6-12-06-2/bin/root
-- Looking for Root... - Found version is 6.12/06 
CMake Error at CMakeLists.txt:162 (find_package):
  By not providing "FindFairLogger.cmake" in CMAKE_MODULE_PATH this project
  has asked CMake to find a package configuration file provided by
  "FairLogger", but CMake did not find one.

  Could not find a package configuration file provided by "FairLogger"
  (requested version 1.1.0) with any of the following names:

    FairLoggerConfig.cmake
    fairlogger-config.cmake

  Add the installation prefix of "FairLogger" to CMAKE_PREFIX_PATH or set
  "FairLogger_DIR" to a directory containing one of the above files.  If
  "FairLogger" provides a separate development package or SDK, be sure it has
  been installed.


-- Configuring incomplete, errors occurred!

Full log here.

@matthiasrichter

Copy link
Copy Markdown
Collaborator Author

@mkrzewic, I have pushed an update

@alibuild

Copy link
Copy Markdown
Collaborator

Error while checking build/o2checkcode/o2 for c2405f0:

sw/BUILD/O2-latest/log
 5/27 Test #54: test_Framework_test_DataSampling .................   Passed    0.92 sec
      Start 55: test_Framework_test_DataRefUtils
 6/27 Test #55: test_Framework_test_DataRefUtils .................   Passed    0.83 sec
      Start 56: test_Framework_test_DataProcessorSpec
 7/27 Test #56: test_Framework_test_DataProcessorSpec ............   Passed    0.92 sec
      Start 57: test_Framework_test_DeviceMetricsInfo
 8/27 Test #57: test_Framework_test_DeviceMetricsInfo ............   Passed    0.88 sec
      Start 58: test_Framework_test_DeviceSpec
 9/27 Test #58: test_Framework_test_DeviceSpec ...................   Passed    1.10 sec
      Start 59: test_Framework_test_FrameworkDataFlowToDDS
10/27 Test #59: test_Framework_test_FrameworkDataFlowToDDS .......   Passed    0.93 sec
      Start 60: test_Framework_test_Graphviz
11/27 Test #60: test_Framework_test_Graphviz .....................   Passed    1.09 sec
      Start 61: test_Framework_test_InputRecord
12/27 Test #61: test_Framework_test_InputRecord ..................   Passed    0.81 sec
      Start 62: test_Framework_test_ParallelProducer
13/27 Test #62: test_Framework_test_ParallelProducer .............   Passed    4.02 sec
      Start 63: test_Framework_test_LogParsingHelpers
14/27 Test #63: test_Framework_test_LogParsingHelpers ............   Passed    0.92 sec
      Start 64: test_Framework_test_ExternalFairMQDeviceProxy
15/27 Test #64: test_Framework_test_ExternalFairMQDeviceProxy ....   Passed    0.76 sec
      Start 65: test_Framework_test_Services
16/27 Test #65: test_Framework_test_Services .....................   Passed    0.96 sec
      Start 66: test_Framework_test_SingleDataSource
17/27 Test #66: test_Framework_test_SingleDataSource .............   Passed    1.12 sec
      Start 67: test_Framework_test_SuppressionGenerator
18/27 Test #67: test_Framework_test_SuppressionGenerator .........   Passed    1.01 sec
      Start 68: test_Framework_test_TimeParallelPipelining
19/27 Test #68: test_Framework_test_TimeParallelPipelining .......   Passed    0.87 sec
      Start 69: test_Framework_test_TypeTraits
20/27 Test #69: test_Framework_test_TypeTraits ...................   Passed    0.86 sec
      Start 70: test_Framework_test_Variants
21/27 Test #70: test_Framework_test_Variants .....................   Passed    0.91 sec
      Start 71: test_Framework_test_WorkflowHelpers
22/27 Test #71: test_Framework_test_WorkflowHelpers ..............   Passed    0.83 sec
      Start 72: test_Framework_test_TMessageSerializer
23/27 Test #72: test_Framework_test_TMessageSerializer ...........   Passed    0.96 sec
      Start 73: test_Framework_test_DataAllocator
24/27 Test #73: test_Framework_test_DataAllocator ................   Passed    3.98 sec
      Start 74: test_Framework_test_RootTreeReader
25/27 Test #74: test_Framework_test_RootTreeReader ...............   Passed    3.15 sec
      Start 75: test_Framework_test_CallbackRegistry
26/27 Test #75: test_Framework_test_CallbackRegistry .............   Passed    0.85 sec
      Start 76: test_Framework_test_WorkflowOptions
27/27 Test #76: test_Framework_test_WorkflowOptions ..............   Passed    2.99 sec

100% tests passed, 0 tests failed out of 27

Total Test time (real) =  38.71 sec

Full log here.

@mkrzewic

mkrzewic commented May 16, 2018

Copy link
Copy Markdown
Contributor

@matthiasrichter thanks, this should do it. The remaining thing is the ability to construct in place in the correct memory region (aka allocator awareness) and the ability to adopt a buffer (if a receiver, a different device needs to add to the header stack) - I will make that PR once I'm done playing with this concept - soon.

@matthiasrichter

Copy link
Copy Markdown
Collaborator Author

sounds good.

so I will merge once the macos CI is finished, the two other failing CIs are unrelated

@matthiasrichter

Copy link
Copy Markdown
Collaborator Author

As for the error in o2checkcode, there seems to be a file missing, last executed command is

[[ -e /mnt/mesos/sandbox/sandbox//CMakeLists.txt ]]

This file seems to be missing.

I'm checking whether changing from make to cmake --build in PR alisw/alidist#1136 had an impact on the code checking.

@alibuild

Copy link
Copy Markdown
Collaborator

Error while checking build/O2/o2 for c2405f0:

sw/BUILD/O2-latest/log
      Start 138: test_Framework_test_DataProcessorSpec
 7/27 Test #138: test_Framework_test_DataProcessorSpec ............   Passed    0.95 sec
      Start 139: test_Framework_test_DeviceMetricsInfo
 8/27 Test #139: test_Framework_test_DeviceMetricsInfo ............   Passed    0.96 sec
      Start 140: test_Framework_test_DeviceSpec
 9/27 Test #140: test_Framework_test_DeviceSpec ...................   Passed    1.16 sec
      Start 141: test_Framework_test_FrameworkDataFlowToDDS
10/27 Test #141: test_Framework_test_FrameworkDataFlowToDDS .......   Passed    0.96 sec
      Start 142: test_Framework_test_Graphviz
11/27 Test #142: test_Framework_test_Graphviz .....................   Passed    0.89 sec
      Start 143: test_Framework_test_InputRecord
12/27 Test #143: test_Framework_test_InputRecord ..................   Passed    0.84 sec
      Start 144: test_Framework_test_ParallelProducer
13/27 Test #144: test_Framework_test_ParallelProducer .............   Passed    4.14 sec
      Start 145: test_Framework_test_LogParsingHelpers
14/27 Test #145: test_Framework_test_LogParsingHelpers ............   Passed    0.75 sec
      Start 146: test_Framework_test_ExternalFairMQDeviceProxy
15/27 Test #146: test_Framework_test_ExternalFairMQDeviceProxy ....   Passed    0.74 sec
      Start 147: test_Framework_test_Services
16/27 Test #147: test_Framework_test_Services .....................   Passed    0.85 sec
      Start 148: test_Framework_test_SingleDataSource
17/27 Test #148: test_Framework_test_SingleDataSource .............   Passed    0.84 sec
      Start 149: test_Framework_test_SuppressionGenerator
18/27 Test #149: test_Framework_test_SuppressionGenerator .........   Passed    0.74 sec
      Start 150: test_Framework_test_TimeParallelPipelining
19/27 Test #150: test_Framework_test_TimeParallelPipelining .......   Passed    0.87 sec
      Start 151: test_Framework_test_TypeTraits
20/27 Test #151: test_Framework_test_TypeTraits ...................   Passed    0.88 sec
      Start 152: test_Framework_test_Variants
21/27 Test #152: test_Framework_test_Variants .....................   Passed    0.76 sec
      Start 153: test_Framework_test_WorkflowHelpers
22/27 Test #153: test_Framework_test_WorkflowHelpers ..............   Passed    0.84 sec
      Start 154: test_Framework_test_TMessageSerializer
23/27 Test #154: test_Framework_test_TMessageSerializer ...........   Passed    0.81 sec
      Start 155: test_Framework_test_DataAllocator
24/27 Test #155: test_Framework_test_DataAllocator ................   Passed    3.55 sec
      Start 156: test_Framework_test_RootTreeReader
25/27 Test #156: test_Framework_test_RootTreeReader ...............   Passed    2.95 sec
      Start 157: test_Framework_test_CallbackRegistry
26/27 Test #157: test_Framework_test_CallbackRegistry .............   Passed    0.80 sec
      Start 158: test_Framework_test_WorkflowOptions
27/27 Test #158: test_Framework_test_WorkflowOptions ..............   Passed    2.64 sec

96% tests passed, 1 tests failed out of 27

Total Test time (real) =  63.55 sec

The following tests FAILED:
	132 - test_Framework_test_SimpleStatefulProcessing01 (Timeout)

Full log here.

@matthiasrichter matthiasrichter merged commit e2584ea into AliceO2Group:dev May 17, 2018
@matthiasrichter matthiasrichter deleted the fix-stack branch May 18, 2018 08:57
matthiasrichter added a commit to matthiasrichter/AliceO2 that referenced this pull request May 28, 2018
- Introducing optional header stack parameter to Output description
- Adding helper method to access headers from the header stack at DPL input
- removing code duplication

This depends on PR AliceO2Group#1076
matthiasrichter added a commit that referenced this pull request May 29, 2018
- Introducing optional header stack parameter to Output description
- Adding helper method to access headers from the header stack at DPL input
- removing code duplication

This depends on PR #1076
noferini pushed a commit to noferini/AliceO2 that referenced this pull request May 29, 2018
- Introducing optional header stack parameter to Output description
- Adding helper method to access headers from the header stack at DPL input
- removing code duplication

This depends on PR AliceO2Group#1076
chiarazampolli pushed a commit to chiarazampolli/AliceO2 that referenced this pull request May 29, 2018
- Introducing optional header stack parameter to Output description
- Adding helper method to access headers from the header stack at DPL input
- removing code duplication

This depends on PR AliceO2Group#1076
ehellbar pushed a commit to ehellbar/AliceO2 that referenced this pull request Jun 7, 2018
- Introducing optional header stack parameter to Output description
- Adding helper method to access headers from the header stack at DPL input
- removing code duplication

This depends on PR AliceO2Group#1076
mikesas pushed a commit to mikesas/AliceO2 that referenced this pull request Dec 13, 2022
Co-authored-by: lserksny <laura.serksnyte@cern.ch>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

3 participants