Skip to content

Commit e9cd5d1

Browse files
Address review comment.
1 parent f23754e commit e9cd5d1

File tree

1 file changed

+19
-6
lines changed

1 file changed

+19
-6
lines changed

src/app/ReadClient.cpp

+19-6
Original file line numberDiff line numberDiff line change
@@ -403,7 +403,11 @@ CHIP_ERROR ReadClient::BuildDataVersionFilterList(DataVersionFilterIBs::Builder
403403
const Span<DataVersionFilter> & aDataVersionFilters,
404404
bool & aEncodedDataVersionList)
405405
{
406-
ChipLogProgress(DataManagement, "Attempting to encode %lu data version filters", static_cast<unsigned long>(aDataVersionFilters.size()));
406+
#if CHIP_PROGRESS_LOGGING
407+
size_t encodedFilterCount = 0;
408+
size_t irrelevantFilterCount = 0;
409+
size_t skippedFilterCount = 0;
410+
#endif
407411
for (auto & filter : aDataVersionFilters)
408412
{
409413
VerifyOrReturnError(filter.IsValidDataVersionFilter(), CHIP_ERROR_INVALID_ARGUMENT);
@@ -421,6 +425,9 @@ CHIP_ERROR ReadClient::BuildDataVersionFilterList(DataVersionFilterIBs::Builder
421425

422426
if (!intersected)
423427
{
428+
#if CHIP_PROGRESS_LOGGING
429+
++irrelevantFilterCount;
430+
#endif
424431
continue;
425432
}
426433

@@ -429,25 +436,31 @@ CHIP_ERROR ReadClient::BuildDataVersionFilterList(DataVersionFilterIBs::Builder
429436
CHIP_ERROR err = EncodeDataVersionFilter(aDataVersionFilterIBsBuilder, filter);
430437
if (err == CHIP_NO_ERROR)
431438
{
439+
#if CHIP_PROGRESS_LOGGING
440+
++encodedFilterCount;
441+
#endif
432442
aEncodedDataVersionList = true;
433443
}
434444
else if (err == CHIP_ERROR_NO_MEMORY || err == CHIP_ERROR_BUFFER_TOO_SMALL)
435445
{
436446
// Packet is full, ignore the rest of the list
437447
aDataVersionFilterIBsBuilder.Rollback(backup);
438448
#if CHIP_PROGRESS_LOGGING
439-
ssize_t nonSkippedFilters = &filter - aDataVersionFilters.data();
440-
size_t skippedFilters = aDataVersionFilters.size() - static_cast<size_t>(nonSkippedFilters);
441-
ChipLogProgress(DataManagement, "Skipped encoding %lu out of %lu data version filters due to lack of space",
442-
static_cast<unsigned long>(skippedFilters), static_cast<unsigned long>(aDataVersionFilters.size()));
449+
ssize_t nonSkippedFilterCount = &filter - aDataVersionFilters.data();
450+
skippedFilterCount = aDataVersionFilters.size() - static_cast<size_t>(nonSkippedFilterCount);
443451
#endif // CHIP_PROGRESS_LOGGING
444-
return CHIP_NO_ERROR;
452+
break;
445453
}
446454
else
447455
{
448456
return err;
449457
}
450458
}
459+
460+
ChipLogProgress(DataManagement,
461+
"%lu data version filters provided, %lu not relevant, %lu encoded, %lu skipped due to lack of space",
462+
static_cast<unsigned long>(aDataVersionFilters.size()), static_cast<unsigned long>(irrelevantFilterCount),
463+
static_cast<unsigned long>(encodedFilterCount), static_cast<unsigned long>(skippedFilterCount));
451464
return CHIP_NO_ERROR;
452465
}
453466

0 commit comments

Comments
 (0)