ethanlin01x commented on issue #3742:
URL: https://github.com/apache/iggy/issues/3742#issuecomment-5093521785

   Thanks @slbotbm for the assignment, and @bartoszkobylinski for the traces.
   
   Reproduced on `master` first: connect a client, kill the server, restart it, 
probe again, once per construction path.
   
   ```
   A: IggyClient(addr) + manual login_user
     before_restart   ok
     while_down       blocked (no response in 10s)
     after_restart    RuntimeError: Unauthenticated
   
   B: IggyClient.from_connection_string(
          
"iggy://iggy:[email protected]:8090?reconnection_retries=unlimited&reconnection_interval=1s")
     before_restart   ok
     while_down       blocked (no response in 10s)
     after_restart    ok
   ```
   
   Two runs, identical (macOS arm64, TCP loopback, `maturin develop` build of 
`master`). A reproduces the reported traceback exactly, and `auto_login` is the 
only variable between the two paths.
   
   Two takeaways:
   
   - **B works today.** `from_connection_string` is already exported and the 
connection string carries the credentials, so the hand-rolled 
connect/login/probe loop should not be needed. @bartoszkobylinski, does it 
recover for you too? If not, that would point at the Rust client rather than 
the Python surface.
   - **Reconnection is on by default**, not unreachable: `while_down` parks 
waiting for the server instead of failing. What is missing is the ability to 
*tune* it. So the gap narrows to `AutoLogin::Disabled` being hardcoded on the 
constructor path, plus configuration only being reachable as an untyped string.
   


-- 
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]

Reply via email to