Skip to content

Commit cc3079d

Browse files
recursion test prints more info
1 parent 21bb63e commit cc3079d

File tree

2 files changed

+17
-1
lines changed

2 files changed

+17
-1
lines changed

bigframes/pandas/__init__.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import datetime
2121
import inspect
2222
import sys
23+
import traceback
2324
import typing
2425
from typing import Literal, Optional, Sequence, Union
2526

@@ -369,6 +370,19 @@ def reset_session():
369370
# https://github.com/python/cpython/issues/112282
370371
sys.setrecursionlimit(max(10000000, sys.getrecursionlimit()))
371372

373+
374+
original_setrecursionlimit = sys.setrecursionlimit
375+
print(f"recursion limit set to {sys.getrecursionlimit()}")
376+
377+
378+
def patched_setrecursionlimit(n):
379+
print(f"\n[DEBUG] Recursion limit being set to {n} by:")
380+
traceback.print_stack()
381+
original_setrecursionlimit(n)
382+
383+
384+
sys.setrecursionlimit = patched_setrecursionlimit
385+
372386
if resource is not None:
373387
soft_limit, hard_limit = resource.getrlimit(resource.RLIMIT_STACK)
374388
if soft_limit < hard_limit or hard_limit == resource.RLIM_INFINITY:

tests/system/small/test_dataframe.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5755,13 +5755,15 @@ def test_df_dot_operator_series(
57555755

57565756

57575757
def test_recursion_limit(scalars_df_index):
5758+
import sys
5759+
5760+
print(f"doing recursion test, recursion limit set to {sys.getrecursionlimit()}")
57585761
scalars_df_index = scalars_df_index[["int64_too", "int64_col", "float64_col"]]
57595762
for i in range(400):
57605763
scalars_df_index = scalars_df_index + 4
57615764
try:
57625765
scalars_df_index.to_pandas()
57635766
except Exception:
5764-
import sys
57655767

57665768
try:
57675769
import resource

0 commit comments

Comments
 (0)