36748 {
36749 switch (type) {
36750 case MetricType::OPERATOR_TIMING:
36751 time += metric;
36752 break;
36753 case MetricType::OPERATOR_CARDINALITY:
36754 elements_returned += LossyNumericCast<idx_t>(metric);
36755 break;
36756 case MetricType::RESULT_SET_SIZE:
36757 result_set_size += LossyNumericCast<idx_t>(metric);
36758 break;
36759 case MetricType::SYSTEM_PEAK_BUFFER_MEMORY: {
36760 if (metric > system_peak_buffer_manager_memory) {
36761 system_peak_buffer_manager_memory += LossyNumericCast<idx_t>(metric);
36762 }
36763 break;
36764 }
36765 case MetricType::SYSTEM_PEAK_TEMP_DIR_SIZE: {
36766 if (metric > system_peak_temp_directory_size) {
36767 system_peak_temp_directory_size = LossyNumericCast<idx_t>(metric);
36768 }
36769 break;
36770 }
36771 case MetricType::OPERATOR_ROWS_SCANNED:
36772 rows_scanned = LossyNumericCast<idx_t>(metric);
36773 break;
36774 default:
36775 throw InternalException("OperatorProfiler: Unknown metric type");
36776 }
36777 }