Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
705f871
Fix for score_docs_as_code version, .bazelrc
Dec 22, 2025
a06cf89
Remove local overridden libatomic dep as not required
Dec 22, 2025
ec70af2
Merge pull request #16 from devendrapatil/main
rmaddikery Dec 22, 2025
b24b911
Project import generated by Copybara.
BMW-Contributor Jan 19, 2026
fe00cc7
Skip test if feature is disabled
rmaddikery Jan 20, 2026
117e909
Merge pull request #21 from raghavendramaddikery/5F5F8339A2E09A676541…
rmaddikery Jan 20, 2026
cf6e46d
Adds missing copyright headers
rmaddikery Jan 20, 2026
a0b8475
Merge pull request #22 from raghavendramaddikery/rama_fixes_missing_c…
rmaddikery Jan 20, 2026
d1ddad5
Project import generated by Copybara.
rmaddikery Jan 21, 2026
d21975d
Merge pull request #23 from raghavendramaddikery/main
rmaddikery Jan 21, 2026
0e14c93
Minor fixes to make modules buildable using bazel (#6)
rmaddikery Dec 19, 2025
1d53174
Setup initial workflow with gcc build (#7)
devendrapat Dec 19, 2025
d4db3b2
Extend codeowners (#9)
pawelrutkaq Dec 19, 2025
1463419
Extend codeowners (#10)
arsibo Dec 19, 2025
dd7d866
infra: fix copyright headers (#16)
arkjedrz Dec 30, 2025
83b8cff
infra: fix `bazel build //...` (#17)
arkjedrz Dec 30, 2025
db52508
infra: add CI workflows (#15)
arkjedrz Jan 6, 2026
4f9703b
infra: enable QNX8 build (#23)
arkjedrz Jan 6, 2026
fbb5285
repo: add `rust-analyzer` support (#22)
arkjedrz Jan 6, 2026
561b140
bazel: remove unused dependencies (#21)
arkjedrz Jan 12, 2026
b427b4e
repo: remove `src/` from CI (#26)
arkjedrz Jan 15, 2026
c13952a
repo: move `src/` to `score` (#25)
arkjedrz Jan 15, 2026
cddacdc
Brings Datarouter changes for reference_platform integration (#31)
rmaddikery Jan 20, 2026
ab8b334
Project import generated by Copybara. (#32)
rmaddikery Jan 21, 2026
d710605
Updates CODEOWNERS for datarouter and mw/log directories (#29)
rmaddikery Jan 22, 2026
0ec81e3
log: C++-based backend implementation (#14)
arkjedrz Jan 22, 2026
840beab
bazel: fix `"cc_*" is not global anymore` (#24)
arkjedrz Jan 23, 2026
934cbe7
Make trlc a dev_dependency (#39)
rmaddikery Jan 23, 2026
a5aceb5
Code owners must be commiters (#36)
pawelrutkaq Jan 26, 2026
a8a92f8
Fix codeowners for Rust (#42)
pawelrutkaq Jan 27, 2026
f159201
chore: use devcontainer image v1.1.0 (#45)
lurtz Jan 28, 2026
eee2686
QNX Toolchain setup for eclipse-score-logging (#27)
RSingh1511 Jan 28, 2026
0bf5d44
log: add QNX x86_64 config support (#50)
arkjedrz Jan 30, 2026
8ce9448
log: add Rust log init for C++ (#38)
arkjedrz Jan 30, 2026
b0bfd67
log: rename `ScoreLogger` to `ScoreLogBridge` (#49)
arkjedrz Jan 30, 2026
09af968
Merge pull request #33 from raghavendramaddikery/rama_sync_score_comm…
rmaddikery Feb 2, 2026
4605c13
Project import generated by Copybara.
rmaddikery Feb 2, 2026
b474827
Fixes feature flag name change for file_transfer
rmaddikery Jan 30, 2026
0cb1511
Bumps baselibs and communication module deps
rmaddikery Jan 30, 2026
edc085f
Merge pull request #30 from raghavendramaddikery/8BDAFD848B4B79222B33…
rmaddikery Feb 3, 2026
b75b4c4
Merge remote-tracking branch 'upstream/main'
rmaddikery Feb 3, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .bazelrc
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ common --//score/datarouter/build_configuration_flags:persistent_logging=False
common --//score/datarouter/build_configuration_flags:persistent_config_feature_enabled=False
common --//score/datarouter/build_configuration_flags:enable_nonverbose_dlt=False
common --//score/datarouter/build_configuration_flags:enable_dynamic_configuration_in_datarouter=False
common --//score/datarouter/build_configuration_flags:dlt_file_transfer_feature=False
common --//score/datarouter/build_configuration_flags:file_transfer=False
common --//score/datarouter/build_configuration_flags:use_local_vlan=True

build --incompatible_strict_action_env
Expand Down
4 changes: 2 additions & 2 deletions MODULE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -95,14 +95,14 @@ bazel_dep(name = "rapidjson", version = "1.1.0")
bazel_dep(name = "score_communication", version = "0.1.2")
git_override(
module_name = "score_communication",
commit = "5a70133dd8bd632f5c07f200a5ee4bc9f507c23b",
commit = "42eb047495099ec70b5c8773f29783cc205bf7df",
remote = "https://github.com/eclipse-score/communication.git",
)

bazel_dep(name = "score_baselibs", version = "0.2.0")
git_override(
module_name = "score_baselibs",
commit = "3c65b223e9f516f95935bb4cd2e83d6088ca016f",
commit = "99d49637a2199f33a71edc479d39970e3bdcb271",
remote = "https://github.com/eclipse-score/baselibs.git",
)

Expand Down
79 changes: 59 additions & 20 deletions score/datarouter/BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -37,8 +37,8 @@ cc_library(
strip_include_prefix = "include",
visibility = [
"//score/datarouter/dlt_filetransfer_trigger_lib:__pkg__",
"//score/datarouter/file_transfer:__subpackages__",
"//score/datarouter/persistent_logging/persistent_logging:__pkg__",
"//score/datarouter/src/file_transfer:__subpackages__",
"//score/datarouter/src/persistent_logging/persistent_logging:__pkg__",
"//score/datarouter/test:__subpackages__",
],
deps = [
Expand Down Expand Up @@ -109,6 +109,7 @@ cc_library(
"//score/datarouter/dynamic_configuration/i_session",
"@score_baselibs//score/os:pthread",
"@score_baselibs//score/os:sys_poll",
"@score_baselibs//score/quality/compiler_warnings",
],
)

Expand All @@ -128,6 +129,7 @@ cc_library(
"//score/datarouter/dynamic_configuration/i_session",
"@score_baselibs//score/os:pthread",
"@score_baselibs//score/os:sys_poll",
"@score_baselibs//score/quality/compiler_warnings",
],
)

Expand Down Expand Up @@ -162,11 +164,11 @@ cc_library(
features = COMPILER_WARNING_FEATURES,
strip_include_prefix = "include",
visibility = [
"//score/datarouter/file_transfer:__subpackages__",
"//score/datarouter/nonverbose_dlt:__pkg__",
"//score/datarouter/nonverbose_dlt_stub:__pkg__",
"//score/datarouter/persistent_logging:__pkg__",
"//score/datarouter/persistent_logging/persistent_logging:__pkg__",
"//score/datarouter/src/file_transfer:__subpackages__",
"//score/datarouter/src/persistent_logging:__pkg__",
"//score/datarouter/src/persistent_logging/persistent_logging:__pkg__",
"//score/datarouter/test:__subpackages__",
],
deps = [
Expand All @@ -185,11 +187,11 @@ cc_library(
features = COMPILER_WARNING_FEATURES,
strip_include_prefix = "include",
visibility = [
"//score/datarouter/file_transfer:__subpackages__",
"//score/datarouter/nonverbose_dlt:__pkg__",
"//score/datarouter/nonverbose_dlt_stub:__pkg__",
"//score/datarouter/persistent_logging:__pkg__",
"//score/datarouter/persistent_logging/persistent_logging:__pkg__",
"//score/datarouter/src/file_transfer:__subpackages__",
"//score/datarouter/src/persistent_logging:__pkg__",
"//score/datarouter/src/persistent_logging/persistent_logging:__pkg__",
],
deps = [
":datarouter_types",
Expand Down Expand Up @@ -448,7 +450,7 @@ cc_library(
features = COMPILER_WARNING_FEATURES,
strip_include_prefix = "include",
visibility = [
"//score/datarouter/file_transfer:__subpackages__",
"//score/datarouter/src/file_transfer:__subpackages__",
],
deps = [
":dltprotocol",
Expand Down Expand Up @@ -492,7 +494,7 @@ cc_library(
],
"//conditions:default": [],
}) + select({
"//score/datarouter/build_configuration_flags:config_dlt_file_transfer": ["DLT_FILE_TRANSFER_FEATURE"],
"//score/datarouter/build_configuration_flags:config_file_transfer": ["DLT_FILE_TRANSFER_FEATURE"],
"//conditions:default": [],
}) + select({
"//score/datarouter/build_configuration_flags:config_persistent_logging": ["PERSISTENT_LOGGING"],
Expand All @@ -508,11 +510,11 @@ cc_library(
],
"//conditions:default": ["//score/datarouter/src/persistency/stub_persistent_dictionary:stub_persistent_dictionary_factory"],
}) + select({
"//score/datarouter/build_configuration_flags:config_dlt_file_transfer": [
"//score/datarouter/file_transfer/file_transfer_impl:file_transfer_stream_handler",
"//score/datarouter/build_configuration_flags:config_file_transfer": [
"//score/datarouter/src/file_transfer/file_transfer_impl:file_transfer_stream_handler",
],
"//conditions:default": [
"//score/datarouter/file_transfer/file_transfer_stub:file_transfer_stream_handler_stub",
"//score/datarouter/src/file_transfer/file_transfer_stub:file_transfer_stream_handler_stub",
],
}) + select({
"//score/datarouter/build_configuration_flags:config_datarouter_nonverbose_dlt": [
Expand All @@ -530,10 +532,10 @@ cc_library(
],
}) + select({
"//score/datarouter/build_configuration_flags:config_persistent_logging": [
"//score/datarouter/persistent_logging/persistent_logging_stub:sysedr_stub",
"//score/datarouter/src/persistent_logging/persistent_logging_stub:sysedr_stub",
],
"//conditions:default": [
"//score/datarouter/persistent_logging/persistent_logging_stub:sysedr_stub",
"//score/datarouter/src/persistent_logging/persistent_logging_stub:sysedr_stub",
],
}),
)
Expand Down Expand Up @@ -593,7 +595,7 @@ cc_library(
":udp_stream_output",
":unixdomain_server",
"//score/datarouter/network:vlan",
"//score/datarouter/persistent_logging/persistent_logging_stub:sysedr_stub",
"//score/datarouter/src/persistent_logging/persistent_logging_stub:sysedr_stub",
"@score_baselibs//score/language/futurecpp",
"@score_baselibs//score/mw/log/configuration:nvconfig",
"@score_baselibs//score/os:socket",
Expand Down Expand Up @@ -760,7 +762,10 @@ cc_library(
"//conditions:default": [],
}),
strip_include_prefix = "include",
visibility = ["//visibility:private"],
visibility = [
"//score/datarouter:__pkg__",
"//score/datarouter/test:__subpackages__",
],
deps = [
":datarouter_feature_config",
":datarouter_lib",
Expand All @@ -770,7 +775,39 @@ cc_library(
"@score_baselibs//score/mw/log/configuration:nvconfigfactory",
] + select({
"//score/datarouter/build_configuration_flags:config_persistent_logging": [
"//score/datarouter/persistent_logging/persistent_logging_stub:sysedr_stub",
"//score/datarouter/src/persistent_logging/persistent_logging_stub:sysedr_stub",
],
"//conditions:default": [],
}),
)

cc_library(
name = "datarouter_socketserver_testing",
testonly = True,
srcs = [
"src/daemon/socketserver.cpp",
],
hdrs = [
"include/daemon/socketserver.h",
],
# TODO: will be reworked in Ticket-207823
features = COMPILER_WARNING_FEATURES,
local_defines = select({
"//score/datarouter/build_configuration_flags:config_persistent_logging": ["PERSISTENT_LOGGING"],
"//conditions:default": [],
}),
strip_include_prefix = "include",
visibility = ["//score/datarouter/test:__subpackages__"],
deps = [
":datarouter_feature_config",
":datarouter_lib",
":dltserver",
":persistentlogconfig",
":socketserver_config_lib_testing",
"@score_baselibs//score/mw/log/configuration:nvconfigfactory",
] + select({
"//score/datarouter/build_configuration_flags:config_persistent_logging": [
"//score/datarouter/src/persistent_logging/persistent_logging_stub:sysedr_stub",
],
"//conditions:default": [],
}),
Expand Down Expand Up @@ -858,8 +895,9 @@ cc_library(
"//score/datarouter/daemon_communication:daemon_session_handle_interface",
"//score/mw/log/detail/data_router:message_passing_interface",
"//score/mw/log/detail/data_router/shared_memory:reader",
"@score_baselibs//score/concurrency",
"@score_baselibs//score/os:pthread",
"@score_communication//score/mw/com/message_passing",
"@score_communication//score/message_passing",
],
)

Expand Down Expand Up @@ -1037,7 +1075,7 @@ cc_library(
":log",
"@score_baselibs//score/mw/log/configuration:nvconfig",
"//score/datarouter/dlt_filetransfer_trigger_lib:filetransfer_message_types",
"//score/datarouter/persistent_logging/persistent_logging_stub:sysedr_stub",
"//score/datarouter/src/persistent_logging/persistent_logging_stub:sysedr_stub",
],
)

Expand All @@ -1048,6 +1086,7 @@ cc_library(
test_suite(
name = "unit_tests",
tests = [
"//score/datarouter/lib/synchronized:synchronized_test",
#"//score/datarouter/persistent_log_request:unit_tests",
#"//score/datarouter/test:unit_tests",
#"//score/datarouter/tools/generator:unit_tests",
Expand Down
6 changes: 3 additions & 3 deletions score/datarouter/build_configuration_flags/BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -71,14 +71,14 @@ config_setting(
)

bool_flag(
name = "dlt_file_transfer_feature",
name = "file_transfer",
build_setting_default = True,
)

config_setting(
name = "config_dlt_file_transfer",
name = "config_file_transfer",
flag_values = {
":dlt_file_transfer_feature": "True",
":file_transfer": "True",
},
visibility = [
"//score/datarouter:__subpackages__",
Expand Down
12 changes: 12 additions & 0 deletions score/datarouter/daemon_communication/BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,18 @@

load("@rules_cc//cc:defs.bzl", "cc_library")
load("@score_baselibs//score/language/safecpp:toolchain_features.bzl", "COMPILER_WARNING_FEATURES")
load("@score_baselibs//score/quality/clang_tidy:extra_checks.bzl", "clang_tidy_extra_checks")

clang_tidy_extra_checks(
name = "clang_tidy_extra_checks",
extra_features = [
"spp_code_style_check_header_guards",
"spp_code_style_check_method_names",
"spp_code_style_check_readability",
"spp_code_style_check_type_names",
"spp_code_style_check_variable_names",
],
)

cc_library(
name = "daemon_session_handle_interface",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ namespace daemon
class ISessionHandle
{
public:
virtual void AcquireRequest() const = 0;
virtual bool AcquireRequest() const = 0;
virtual ~ISessionHandle() = default;
};

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ namespace score::platform::internal::daemon::mock
class SessionHandleMock : public score::platform::internal::daemon::ISessionHandle
{
public:
MOCK_METHOD(void, AcquireRequest, (), (const, override));
MOCK_METHOD(bool, AcquireRequest, (), (const, override));
};

} // namespace score::platform::internal::daemon::mock
Expand Down
58 changes: 36 additions & 22 deletions score/datarouter/datarouter/data_router.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -122,8 +122,6 @@ std::unique_ptr<DataRouter::SourceSession> DataRouter::new_source_session_impl(
std::unique_ptr<score::mw::log::detail::ISharedMemoryReader> reader,
const score::mw::log::NvConfig& nvConfig)
{
std::lock_guard<std::mutex> lock(subscriber_mutex_);

auto sourceSession =
std::make_unique<DataRouter::SourceSession>(*this,
std::move(reader),
Expand All @@ -134,6 +132,19 @@ std::unique_ptr<DataRouter::SourceSession> DataRouter::new_source_session_impl(
quota_enforcement_enabled,
stats_logger_,
std::make_unique<score::platform::internal::LogParser>(nvConfig));

if (!sourceSession)
{
return nullptr;
}

std::lock_guard<std::mutex> lock(subscriber_mutex_);

// Insert is protected by subscriber_mutex_ held by caller (new_source_session_impl).
// This relies on the calling convention that SourceSession is only constructed
// from new_source_session_impl() which acquires the lock before construction.
std::ignore = sources_.insert(sourceSession.get());

if (sourceCallback_)
{
sourceCallback_(std::move(sourceSession->get_parser()));
Expand Down Expand Up @@ -268,9 +279,8 @@ void DataRouter::SourceSession::processAndRouteLogMessages(uint64_t& message_cou
if ((peek_bytes.has_value() && peek_bytes.value() > 0) ||
(cmd->ticks_without_write > kTicksWithoutAcquireWhileNoWrites))
{
cmd->acquire_requested = true;
request_acquire();
needs_fast_reschedule = true;
cmd->acquire_requested = request_acquire();
needs_fast_reschedule = cmd->acquire_requested;
}
else
{
Expand All @@ -279,9 +289,8 @@ void DataRouter::SourceSession::processAndRouteLogMessages(uint64_t& message_cou
}
else
{
cmd->acquire_requested = true;
request_acquire();
needs_fast_reschedule = true;
cmd->acquire_requested = request_acquire();
needs_fast_reschedule = cmd->acquire_requested;
}
}
}
Expand Down Expand Up @@ -377,8 +386,6 @@ DataRouter::SourceSession::SourceSession(DataRouter& router,
stats->name = name;
}

std::ignore = router_.sources_.insert(this);

{
auto stats = stats_data_.lock();
if (stats->name == "DR")
Expand Down Expand Up @@ -524,19 +531,26 @@ void DataRouter::SourceSession::show_stats()
}
}

void DataRouter::SourceSession::request_acquire()
bool DataRouter::SourceSession::request_acquire()
{
++(stats_data_.lock()->count_acquire_requests);

score::cpp::visit(score::cpp::overload(
[](UnixDomainServer::SessionHandle& handle) {
handle.pass_message("<");
},
[](score::cpp::pmr::unique_ptr<score::platform::internal::daemon::ISessionHandle>& handle) {
handle->AcquireRequest();
// For the quality team argumentation, kindly, check Ticket-200702 and Ticket-229594.
}), // LCOV_EXCL_LINE : tooling issue. no code to test in this line.
handle_);
const bool acquire_result =
score::cpp::visit(score::cpp::overload(
[](UnixDomainServer::SessionHandle& handle) {
handle.pass_message("<");
return true;
},
[](score::cpp::pmr::unique_ptr<score::platform::internal::daemon::ISessionHandle>& handle) {
return handle->AcquireRequest();
// For the quality team argumentation, kindly, check Ticket-200702 and Ticket-229594.
}), // LCOV_EXCL_LINE : tooling issue. no code to test in this line.
handle_);

if (acquire_result)
{
++(stats_data_.lock()->count_acquire_requests);
}

return acquire_result;
}

void DataRouter::SourceSession::on_acquire_response(const score::mw::log::detail::ReadAcquireResult& acq)
Expand Down
2 changes: 1 addition & 1 deletion score/datarouter/datarouter/data_router.h
Original file line number Diff line number Diff line change
Expand Up @@ -182,7 +182,7 @@ class DataRouter
void on_closed_by_peer() override;

void checkAndSetQuotaEnforcement();
void request_acquire();
bool request_acquire();

Synchronized<LocalSubscriberData> local_subscriber_data_;
Synchronized<CommandData> command_data_;
Expand Down
Loading
Loading