Forum Discussion

P_work's avatar
P_work
Icon for Helper I rankHelper I
11 months ago
Solved

Using pyodbc in python 3.11 notebook

If one uses pyodbc to write to and read from several Fabric SQL DB tables and read from several Lakehouse  "tables"  using SQL Endpoint, from within a single notebook, any caveats or pointers? Specif...
  • Anonymous's avatar
    Anonymous
    11 months ago

    Hi P_work ,

    Thanks for the follow up.

    As Vinodh247 already mentioned, keeping long running global connections is not recommended because the SQL analytics endpoint can become idle and drop sessions in the background. The Microsoft documentation notes that the endpoint can be suspended after inactivity:
    https://learn.microsoft.com/en-us/fabric/data-warehouse/sql-analytics-endpoint-performance 

     

    In that case a reused pyodbc connection may fail since pyodbc does not automatically recover when the backend session is dropped.

    There are similar reports in the community where idle connections to the lakehouse SQL endpoint resulted in errors:
    Solved: Failed to access/connect to Lakehouse SQL Endpoint... - Microsoft Fabric Community

     

    To reduce repeated reconnect times you can keep related queries inside the same connection block and optionally add a simple retry approach for transient disconnects.

     

    Hope this helps. Please reach out for further assistance.

    Thank you.