kevinjqliu opened a new pull request, #3305:
URL: https://github.com/apache/iceberg-python/pull/3305

   <!--
   Thanks for opening a pull request!
   -->
   
   <!-- In the case this PR will resolve an issue, please replace 
${GITHUB_ISSUE_ID} below with the actual Github issue id. -->
   <!-- Closes #${GITHUB_ISSUE_ID} -->
   
   ## Rationale for this change
   
   `PYTHON=3.13 make test` hangs after all tests pass. 
   
   The `SaslServer` test helper has `except Exception: pass` in its accept 
loop. After `close()` is called, `accept()` raises on every iteration but the 
exception is swallowed, creating a tight busy-loop that holds the GIL and 
prevents the process from exiting.
   
   This is particularly severe on CPython 3.13+ on macOS, where GIL fairness 
changes make the main thread unable to make progress against the spinning 
daemon thread.
   
   ## Changes
   
   - `except Exception: pass` -> `except Exception: break` to exit the loop 
when the socket is closed
   - Reorder `close()`: close the server socket first (unblocks `accept()`), 
then `join()` the thread (ensures no more client appends), then close tracked 
clients
   
   ## Are these changes tested?
   
   `PYTHON=3.13 make test` passes with clean exit.
   
   ## Are there any user-facing changes?
   
   No.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to