Skip to content

Possible infinite recursion in is_subset_eq #2175

@connernilsen

Description

@connernilsen

I'm consistently hitting this stack overflow/infinite loop while doing benchmarking

[16:06:26.212]       <<< *** Aborted at 1768953986 (Unix time, try 'date -d @1768953986') ***
[16:06:26.212]       <<< *** Signal 11 (SIGSEGV) (0x7fb452600f38) received by PID 2085701 (pthread TID 0x7fb452b00640) (linux TID 2086001) (code: invalid permissions for mapped object), stack trace: ***
[16:06:26.340]       <<<     @ 000000000148860f folly::symbolizer::(anonymous namespace)::signalHandler(int, siginfo_t*, void*)
[16:06:26.340]       <<<                        ./fbcode/folly/debugging/symbolizer/SignalHandler.cpp:526
[16:06:26.340]       <<<     @ 000000000004455f (unknown)
[16:06:26.340]       <<<                        /home/engshare/third-party2/glibc/2.34/src/glibc-2.34/signal/../sysdeps/unix/sysv/linux/libc_sigaction.c:8
[16:06:26.340]       <<<                        -> /home/engshare/third-party2/glibc/2.34/src/glibc-2.34/signal/../sysdeps/unix/sysv/linux/x86_64/libc_sigaction.c
[16:06:26.340]       <<<     @ 00000000029be6dc <pyrefly::state::state::TransactionHandle>::get_module
[16:06:26.340]       <<<                        fbcode/pyrefly/pyrefly/lib/state/state.rs:1187
[16:06:26.340]       <<<     @ 00000000029849cf <pyrefly::state::state::TransactionHandle as pyrefly::alt::answers::LookupAnswer>::get::<pyrefly::binding::binding::KeyClassMetadata>
[16:06:26.340]       <<<                        fbcode/pyrefly/pyrefly/lib/state/state.rs:2133
[16:06:26.340]       <<<     @ 00000000025f091d <pyrefly::alt::answers_solver::AnswersSolver<pyrefly::state::state::TransactionHandle>>::get_metadata_for_class
[16:06:26.340]       <<<                        fbcode/pyrefly/pyrefly/lib/alt/answers_solver.rs:738
[16:06:26.340]       <<<     @ 00000000025ef49a <pyrefly::alt::answers_solver::AnswersSolver<pyrefly::state::state::TransactionHandle>>::extends_any
[16:06:26.340]       <<<                        fbcode/pyrefly/pyrefly/lib/alt/class/classdef.rs:192
[16:06:26.340]       <<<     @ 000000000276b445 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.340]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/type_order.rs:119
[16:06:26.340]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.340]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.340]       <<<     @ 000000000276cb58 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.340]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1428
[16:06:26.340]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.340]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.340]       <<<     @ 000000000273efa7 pyrefly::solver::subset::any::<&&pyrefly_types::types::Type, core::slice::iter::Iter<&pyrefly_types::types::Type>, <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#6}>
[16:06:26.340]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1005
[16:06:26.340]       <<<     @ 000000000276ab9a <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.340]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1005
[16:06:26.340]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.340]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.340]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.341]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.341]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.341]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.341]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.341]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.341]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.341]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.341]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.341]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.341]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.341]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.341]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.341]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.341]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.341]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.341]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.341]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.341]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.341]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.341]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.341]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.341]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.341]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.341]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.341]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.341]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.341]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.341]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.341]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.341]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.341]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.341]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.341]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.341]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.341]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.341]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.341]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.341]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.341]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.341]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.341]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.341]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.341]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.341]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.341]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.341]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.341]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.341]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.341]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.341]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.341]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.341]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.341]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.341]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.341]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.341]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.342]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.342]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.342]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.342]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.342]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.342]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.342]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.342]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.342]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.342]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.342]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.342]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.342]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.342]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.342]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.342]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.342]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.342]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.342]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.342]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.342]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.342]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.342]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.342]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.342]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.342]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.342]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.342]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.342]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.342]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.342]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.342]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.342]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.342]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.342]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.342]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.342]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.342]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.342]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.342]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.342]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.342]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.342]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.342]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.342]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602
[16:06:26.342]       <<<     @ 000000000274b59b <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl::{closure#7}
[16:06:26.342]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/subset.rs:1006
[16:06:26.342]       <<<     @ 000000000276abfe <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq_impl
[16:06:26.346]       <<<                        xplat/rust/toolchain/sysroot/1.91.1/library/core/src/result.rs:1558
[16:06:26.346]       <<<     @ 0000000002761025 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.346]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1654
[16:06:26.346]       <<<     @ 0000000002761450 <pyrefly::solver::solver::Subset<pyrefly::state::state::TransactionHandle>>::is_subset_eq
[16:06:26.346]       <<<                        fbcode/pyrefly/pyrefly/lib/solver/solver.rs:1602

Can repro on internal revision: 2c122162e0 (file at end of P2135825465) with command

buck2 --isolation-dir .pyrelsp bxl --reuse-current-config prelude//python/sourcedb/pyrefly.bxl:main @bxl_warm.txt > /dev/null && fbsource/third-party/pyright/facebook/integration_tests/pyrefly_run_on_lsp.sh "Test 1" > run.txt

Another stack overflow I've run into is in P2135829830, but I see it less often and I'm not sure what exactly is happening there.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions