@@ -336,7 +336,9 @@ void CArrowTableIterator::convertScaledFixedNumberColumnToDecimalColumn_nanoarro
336336 }
337337 }
338338 ArrowArrayFinishBuildingDefault (newArray, &error);
339+ m_nanoarrowSchemas[batchIdx]->children [colIdx]->release (m_nanoarrowSchemas[batchIdx]->children [colIdx]);
339340 ArrowSchemaMove (newSchema, m_nanoarrowSchemas[batchIdx]->children [colIdx]);
341+ m_nanoarrowTable[batchIdx]->children [colIdx]->release (m_nanoarrowTable[batchIdx]->children [colIdx]);
340342 ArrowArrayMove (newArray, m_nanoarrowTable[batchIdx]->children [colIdx]);
341343 m_newArrays[batchIdx].push_back (std::move (newUniqueArray));
342344 m_newSchemas[batchIdx].push_back (std::move (newUniqueField));
@@ -384,7 +386,9 @@ void CArrowTableIterator::convertScaledFixedNumberColumnToDoubleColumn_nanoarrow
384386 }
385387 }
386388 ArrowArrayFinishBuildingDefault (newArray, &error);
389+ m_nanoarrowSchemas[batchIdx]->children [colIdx]->release (m_nanoarrowSchemas[batchIdx]->children [colIdx]);
387390 ArrowSchemaMove (newSchema, m_nanoarrowSchemas[batchIdx]->children [colIdx]);
391+ m_nanoarrowTable[batchIdx]->children [colIdx]->release (m_nanoarrowTable[batchIdx]->children [colIdx]);
388392 ArrowArrayMove (newArray, m_nanoarrowTable[batchIdx]->children [colIdx]);
389393 m_newArrays[batchIdx].push_back (std::move (newUniqueArray));
390394 m_newSchemas[batchIdx].push_back (std::move (newUniqueField));
@@ -457,7 +461,9 @@ void CArrowTableIterator::convertTimeColumn_nanoarrow(
457461 }
458462
459463 ArrowArrayFinishBuildingDefault (newArray, &error);
464+ m_nanoarrowSchemas[batchIdx]->children [colIdx]->release (m_nanoarrowSchemas[batchIdx]->children [colIdx]);
460465 ArrowSchemaMove (newSchema, m_nanoarrowSchemas[batchIdx]->children [colIdx]);
466+ m_nanoarrowTable[batchIdx]->children [colIdx]->release (m_nanoarrowTable[batchIdx]->children [colIdx]);
461467 ArrowArrayMove (newArray, m_nanoarrowTable[batchIdx]->children [colIdx]);
462468 m_newArrays[batchIdx].push_back (std::move (newUniqueArray));
463469 m_newSchemas[batchIdx].push_back (std::move (newUniqueField));
@@ -675,7 +681,9 @@ void CArrowTableIterator::convertTimestampColumn_nanoarrow(
675681 }
676682
677683 ArrowArrayFinishBuildingDefault (newArray, &error);
684+ m_nanoarrowSchemas[batchIdx]->children [colIdx]->release (m_nanoarrowSchemas[batchIdx]->children [colIdx]);
678685 ArrowSchemaMove (newSchema, m_nanoarrowSchemas[batchIdx]->children [colIdx]);
686+ m_nanoarrowTable[batchIdx]->children [colIdx]->release (m_nanoarrowTable[batchIdx]->children [colIdx]);
679687 ArrowArrayMove (newArray, m_nanoarrowTable[batchIdx]->children [colIdx]);
680688 m_newArrays[batchIdx].push_back (std::move (newUniqueArray));
681689 m_newSchemas[batchIdx].push_back (std::move (newUniqueField));
@@ -813,7 +821,9 @@ void CArrowTableIterator::convertTimestampTZColumn_nanoarrow(
813821 }
814822
815823 ArrowArrayFinishBuildingDefault (newArray, &error);
824+ m_nanoarrowSchemas[batchIdx]->children [colIdx]->release (m_nanoarrowSchemas[batchIdx]->children [colIdx]);
816825 ArrowSchemaMove (newSchema, m_nanoarrowSchemas[batchIdx]->children [colIdx]);
826+ m_nanoarrowTable[batchIdx]->children [colIdx]->release (m_nanoarrowTable[batchIdx]->children [colIdx]);
817827 ArrowArrayMove (newArray, m_nanoarrowTable[batchIdx]->children [colIdx]);
818828 m_newArrays[batchIdx].push_back (std::move (newUniqueArray));
819829 m_newSchemas[batchIdx].push_back (std::move (newUniqueField));
0 commit comments