Aaron Opfer created ARROW-6667:
----------------------------------

             Summary: [Python] Avoid Reference Cycles in pyarrow.parquet
                 Key: ARROW-6667
                 URL: https://issues.apache.org/jira/browse/ARROW-6667
             Project: Apache Arrow
          Issue Type: Improvement
            Reporter: Aaron Opfer
         Attachments: cycle1_build_nested_path.PNG, cycle2_open_dataset.PNG

Reference cycles appear in two places inside pyarrow.parquet which causes these 
objects to have much longer lifetimes than necessary:

 

{{_build_nested_path}} has a reference cycle because the closured function 
refers to the parent cell which also refers to the closured function again 
(objgraph shown in attachment)

{{open_dataset_file}} is partialed with self inside the {{ParquetFile}} class 
(objgraph shown in attachment).



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to