v0.15.0
This release brings initial integration of ODC (the process control component of the O²/EPN cluster), support for pushing component configuration to controlled tasks as boost::property_tree::ptree
as well as major improvements to process end of life management. It also exposes the PIDs of all running tasks in the GetTasks
RPC call.
-
ODC integration:
- [build] Add o2-aliecs-odc-shim to Makefile
- [odcshim] Initial commit for ODC shim task
- [odcshim] Update to newest ODC protofile
- [odcshim] Use RUN instead of lower level API + refactor OCC handler
- [odcshim] Do SetProperties before Configure
- [odcshim] Topology provided as env var + implement remaining commands
- [odcshim] AliECS<->ODC state conversion facilities
- [odcshim] Correctly report ODC state
-
Configuration as ptree:
- [core] Add ptree marker to properties map with ToPtree function
- [core] Add support for syntax spec in ToPtree template function
- [core] Add support for timestamp-less payloads in confsys
- [occ] Process incoming ptree key as ptree
- [occ] Correctly graft payload ptree
-
Process end of life:
- [core] Fix deadlock caused from state.Event
- [core] Make state.Event unbuffered channel
- [executor] Do a SIGTERM before the SIGKILL
- [executor] Handle Kill concurrently
- [executor] Run SIGKILL immediately after a failed SIGTERM
- [executor] Fix SIGSEV
- [executor] kill process using PID from OCC
- [executor] Update proto to export PID
- [executor] use OCC pid to kill task on ERROR
- [executor] Set kill timeout to 3 seconds
- [occ] Export PID to protobuf
-
Expose PID in API:
- [coconut] Print PID on GetTasks
- [common] Create TaskMessage event
- [core] Handle TaskMessage in scheduler
- [core] Extend role with GetTaskPID
- [core] Export Task PID to API
- [core] Move PID to task.Task from role
- [executor] Send TaskMessage with PID to scheduler
-
Miscellaneous:
- [coconut] Regenerate coconut documentation
- [coconut] Adapt config import to new behavior of GetLatestTimestamp
- [core] Set periodic output severity to Trace
- [core] Export GetConfig function in all template environments
- [executor] Handle HEARTBEAT event
- [peanut] Simulate run number