In our newest installation of “why you should not use Sybase SQL Anywhere” I’d like to report the latest problem I had to solve: for some reason, I couldn’t connect using sqlanydb from Celery tasks.
I had code that worked fine if ran from plain Python, but barfed from a celery worker task with the ominous error:
OperationalError: Failed to initialize connection object
Turns out, sqlanydb isn’t only not thread safe; it’s also not fork safe.
The possible solutions:
- Import the driver inside of your task function.