Skip to content

Rrivera/subsystem common context tables#423

Open
rrivera747 wants to merge 7 commits into
developfrom
rrivera/subsystemCommonContextTables
Open

Rrivera/subsystem common context tables#423
rrivera747 wants to merge 7 commits into
developfrom
rrivera/subsystemCommonContextTables

Conversation

@rrivera747

Copy link
Copy Markdown
Contributor

No description provided.

Copilot AI left a comment

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.

Pull request overview

This PR extends otsdaq’s “SubsystemCommon” mechanism to support Context-group common tables (and overrides) that can be propagated from a top-level Gateway to remote subsystems via periodic status requests, enabling dynamic updates of Context tables (e.g., StateMachineTable) on remote gateways. It also improves diagnostic error messages and tightens table-merge behavior.

Changes:

  • Add new version-alias types SubsystemCommonContext / SubsystemCommonContextOverride, validate they only reference Context-group tables, and implement ConfigurationManager::applyContextCommonTables() to apply them to active tables.
  • Extend Gateway-to-Gateway UDP status messaging to include pipe-delimited encoded Context Common table lists, parse/apply them on the remote side, and surface lists in status XML.
  • Improve merge/apply correctness (e.g., mergeViews() tracks appended rows) and enhance runtime error messages for table operations.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
otsdaq/TableCore/TableView.cc Improves exception messages with table/version/row/col context for easier debugging.
otsdaq/TableCore/TableBase.cc Fixes mergeViews() bookkeeping by updating destSize when rows are appended.
otsdaq/GatewaySupervisor/GatewaySupervisor.h Adds new command preambles and member state/mutex for Context Common table propagation.
otsdaq/GatewaySupervisor/GatewaySupervisor.cc Implements Context Common table list caching, transport over status requests, remote parsing, and application to active Context tables.
otsdaq/ConfigurationInterface/ConfigurationTree.cc Adjusts debug logging verbosity for bitmap parsing.
otsdaq/ConfigurationInterface/ConfigurationManager.h Declares new alias constants and applyContextCommonTables() API.
otsdaq/ConfigurationInterface/ConfigurationManager.cc Defines new alias constants, validates Context-only alias usage, and implements Context Common apply logic via mergeViews().

Comment thread otsdaq/GatewaySupervisor/GatewaySupervisor.cc Outdated
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: 📋 Triage

Development

Successfully merging this pull request may close these issues.

3 participants