--------------------------------------------------------------------------- @function: COptimizerConfig::Serialize @doc: Serialize optimizer configuration ---------------------------------------------------------------------------
| 117 | // |
| 118 | //--------------------------------------------------------------------------- |
| 119 | void |
| 120 | COptimizerConfig::Serialize(CMemoryPool *mp, CXMLSerializer *xml_serializer, |
| 121 | CBitSet *pbsTrace) const |
| 122 | { |
| 123 | GPOS_ASSERT(nullptr != xml_serializer); |
| 124 | GPOS_ASSERT(nullptr != pbsTrace); |
| 125 | |
| 126 | xml_serializer->OpenElement( |
| 127 | CDXLTokens::GetDXLTokenStr(EdxltokenNamespacePrefix), |
| 128 | CDXLTokens::GetDXLTokenStr(EdxltokenOptimizerConfig)); |
| 129 | |
| 130 | xml_serializer->OpenElement( |
| 131 | CDXLTokens::GetDXLTokenStr(EdxltokenNamespacePrefix), |
| 132 | CDXLTokens::GetDXLTokenStr(EdxltokenEnumeratorConfig)); |
| 133 | xml_serializer->AddAttribute(CDXLTokens::GetDXLTokenStr(EdxltokenPlanId), |
| 134 | m_enumerator_cfg->GetPlanId()); |
| 135 | xml_serializer->AddAttribute( |
| 136 | CDXLTokens::GetDXLTokenStr(EdxltokenPlanSamples), |
| 137 | m_enumerator_cfg->GetPlanId()); |
| 138 | xml_serializer->AddAttribute( |
| 139 | CDXLTokens::GetDXLTokenStr(EdxltokenCostThreshold), |
| 140 | m_enumerator_cfg->GetPlanId()); |
| 141 | xml_serializer->CloseElement( |
| 142 | CDXLTokens::GetDXLTokenStr(EdxltokenNamespacePrefix), |
| 143 | CDXLTokens::GetDXLTokenStr(EdxltokenEnumeratorConfig)); |
| 144 | |
| 145 | xml_serializer->OpenElement( |
| 146 | CDXLTokens::GetDXLTokenStr(EdxltokenNamespacePrefix), |
| 147 | CDXLTokens::GetDXLTokenStr(EdxltokenStatisticsConfig)); |
| 148 | xml_serializer->AddAttribute( |
| 149 | CDXLTokens::GetDXLTokenStr(EdxltokenDampingFactorFilter), |
| 150 | m_stats_conf->DDampingFactorFilter()); |
| 151 | xml_serializer->AddAttribute( |
| 152 | CDXLTokens::GetDXLTokenStr(EdxltokenDampingFactorJoin), |
| 153 | m_stats_conf->DDampingFactorJoin()); |
| 154 | xml_serializer->AddAttribute( |
| 155 | CDXLTokens::GetDXLTokenStr(EdxltokenDampingFactorGroupBy), |
| 156 | m_stats_conf->DDampingFactorGroupBy()); |
| 157 | xml_serializer->AddAttribute( |
| 158 | CDXLTokens::GetDXLTokenStr(EdxltokenMaxStatsBuckets), |
| 159 | m_stats_conf->UlMaxStatsBuckets()); |
| 160 | xml_serializer->CloseElement( |
| 161 | CDXLTokens::GetDXLTokenStr(EdxltokenNamespacePrefix), |
| 162 | CDXLTokens::GetDXLTokenStr(EdxltokenStatisticsConfig)); |
| 163 | |
| 164 | xml_serializer->OpenElement( |
| 165 | CDXLTokens::GetDXLTokenStr(EdxltokenNamespacePrefix), |
| 166 | CDXLTokens::GetDXLTokenStr(EdxltokenCTEConfig)); |
| 167 | xml_serializer->AddAttribute( |
| 168 | CDXLTokens::GetDXLTokenStr(EdxltokenCTEInliningCutoff), |
| 169 | m_cte_conf->UlCTEInliningCutoff()); |
| 170 | xml_serializer->CloseElement( |
| 171 | CDXLTokens::GetDXLTokenStr(EdxltokenNamespacePrefix), |
| 172 | CDXLTokens::GetDXLTokenStr(EdxltokenCTEConfig)); |
| 173 | |
| 174 | xml_serializer->OpenElement( |
| 175 | CDXLTokens::GetDXLTokenStr(EdxltokenNamespacePrefix), |
| 176 | CDXLTokens::GetDXLTokenStr(EdxltokenWindowOids)); |
nothing calls this directly
no test coverage detected