Skip to content

Commit cb994c9

Browse files
authored
DPL: increase max size of string metrics to 256 bytes (#5168)
Properly test them while doing so.
1 parent a73ec3c commit cb994c9

2 files changed

Lines changed: 22 additions & 1 deletion

File tree

Framework/Core/include/Framework/DeviceMetricsInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ struct MetricInfo {
4343
// We keep only fixed lenght strings for metrics, as in the end this is not
4444
// really needed. They should be nevertheless 0 terminated.
4545
struct StringMetric {
46-
static constexpr ptrdiff_t MAX_SIZE = 128;
46+
static constexpr ptrdiff_t MAX_SIZE = 256;
4747
char data[MAX_SIZE];
4848
};
4949

Framework/Core/test/test_DeviceMetricsInfo.cxx

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,27 @@ BOOST_AUTO_TEST_CASE(TestDeviceMetricsInfo)
128128
BOOST_CHECK_EQUAL(result, true);
129129
result = DeviceMetricsHelper::processMetric(match, info);
130130
BOOST_CHECK_EQUAL(result, true);
131+
BOOST_CHECK_EQUAL(info.metricLabelsIdx.size(), 4);
132+
BOOST_CHECK_EQUAL(info.metrics.size(), 4);
133+
BOOST_CHECK_EQUAL(info.stringMetrics.size(), 1);
134+
BOOST_CHECK_EQUAL(info.metrics[3].type, MetricType::String);
135+
BOOST_CHECK_EQUAL(info.metrics[3].storeIdx, 0);
136+
BOOST_CHECK_EQUAL(info.metrics[3].pos, 1);
137+
138+
// Parse a string metric with a file description in it
139+
memset(&match, 0, sizeof(match));
140+
metric = "[METRIC] alien-file-name,1 alien:///alice/data/2015/LHC15o/000244918/pass5_lowIR/PWGZZ/Run3_Conversion/96_20201013-1346_child_1/0028/AO2D.root:/,631838549,ALICE::CERN::EOS 1789372895 hostname=test.cern.ch";
141+
result = DeviceMetricsHelper::parseMetric(metric, match);
142+
BOOST_CHECK_EQUAL(result, true);
143+
result = DeviceMetricsHelper::processMetric(match, info);
144+
BOOST_CHECK_EQUAL(result, true);
145+
BOOST_CHECK_EQUAL(info.metricLabelsIdx.size(), 5);
146+
BOOST_CHECK_EQUAL(info.metrics.size(), 5);
147+
BOOST_CHECK_EQUAL(info.stringMetrics.size(), 2);
148+
BOOST_CHECK_EQUAL(info.metrics[4].type, MetricType::String);
149+
BOOST_CHECK_EQUAL(info.metrics[4].storeIdx, 1);
150+
BOOST_CHECK_EQUAL(info.metrics[4].pos, 1);
151+
BOOST_CHECK_EQUAL(std::string(info.stringMetrics[1][0].data), std::string("alien:///alice/data/2015/LHC15o/000244918/pass5_lowIR/PWGZZ/Run3_Conversion/96_20201013-1346_child_1/0028/AO2D.root:/,631838549,ALICE::CERN::EOS"));
131152
}
132153

133154
BOOST_AUTO_TEST_CASE(TestDeviceMetricsInfo2)

0 commit comments

Comments
 (0)