More robust connection pooling 

Wrap the initial connection.open() in its own try/except but don't raise the exception if it occurs.

This allows for the connection retry to happen seamlessly without aborting the entire with() statement.