Thank you, I've changed it to use the server's IP address since, so I'll wait to see if the error happens again.
On Fri, 17 Apr 2020 at 09:00, Adrian Klaver <adrian.kla...@aklaver.com> wrote: > On 4/16/20 5:38 PM, derwin theduck wrote: > > We have been getting this error intermittently (about once a week) in > > Django with channels since switching from a local database server to a > > hosted one: > > > > could not translate host name "timescaledb" to address: Name or service > > not known > > > > Connecting directly to the server with psycopg2 in the python > > interpreter works ok: > > > > >>> import psycopg2 as pg > > >>> pg.__version__ > > '2.7.7 (dt dec pq3 ext lo64)' > > >>> conn = pg.connect(host='timescaledb', database=*, user=*, > > password=*) >>> conn.server_version > > 110005 > > Well I'm go out on a limb and say there is some sort of DNS resolution > issue going on. > > > > > The resident database / network expert maintains that everything is ok > > on the networking side, and that django, once it establishes a > > connection, should not be attempting to reconnect. > > Huh? Leaving open connections is not considered a good thing. In other > words a connection should last for as long as it takes to get it's task > done and then it should close. > > > > > The problem happens not on startup, but in the middle of the day after > > processing transactions without any issues for several hours. > > > > Any idea how to go about troubleshooting / fixing this? :'( > > > > ( File > > > "/home/dduck/.local/lib/python3.7/site-packages/django/db/models/query.py", > > line 276, in __iter__) > > ( self._fetch_all()) > > ( File > > > "/home/dduck/.local/lib/python3.7/site-packages/django/db/models/query.py", > > line 1261, in _fetch_all) > > ( self._result_cache = list(self._iterable_class(self))) > > ( File > > > "/home/dduck/.local/lib/python3.7/site-packages/django/db/models/query.py", > > line 57, in __iter__) > > ( results = compiler.execute_sql(chunked_fetch=self.chunked_fetch, > > chunk_size=self.chunk_size)) > > ( File > > > "/home/dduck/.local/lib/python3.7/site-packages/django/db/models/sql/compiler.py", > > > line 1135, in execute_sql) > > ( cursor = self.connection.cursor()) > > ( File > > > "/home/dduck/.local/lib/python3.7/site-packages/django/utils/asyncio.py", > line > > 24, in inner) > > ( return func(*args, **kwargs)) > > ( File > > > "/home/dduck/.local/lib/python3.7/site-packages/django/db/backends/base/base.py", > > > line 260, in cursor) > > ( return self._cursor()) > > ( File > > > "/home/dduck/.local/lib/python3.7/site-packages/django/db/backends/base/base.py", > > > line 236, in _cursor) > > ( self.ensure_connection()) > > ( File > > > "/home/dduck/.local/lib/python3.7/site-packages/django/utils/asyncio.py", > line > > 24, in inner) > > ( return func(*args, **kwargs)) > > ( File > > > "/home/dduck/.local/lib/python3.7/site-packages/django/db/backends/base/base.py", > > > line 220, in ensure_connection) > > ( self.connect()) > > ( File > > "/home/dduck/.local/lib/python3.7/site-packages/django/db/utils.py", > > line 90, in __exit__) > > ( raise dj_exc_value.with_traceback(traceback) from exc_value) > > ( File > > > "/home/dduck/.local/lib/python3.7/site-packages/django/db/backends/base/base.py", > > > line 220, in ensure_connection) > > ( self.connect()) > > ( File > > > "/home/dduck/.local/lib/python3.7/site-packages/django/utils/asyncio.py", > line > > 24, in inner) > > ( return func(*args, **kwargs)) > > ( File > > > "/home/dduck/.local/lib/python3.7/site-packages/django/db/backends/base/base.py", > > > line 197, in connect) > > ( self.connection = self.get_new_connection(conn_params)) > > ( File > > > "/home/dduck/.local/lib/python3.7/site-packages/django/utils/asyncio.py", > line > > 24, in inner) > > ( return func(*args, **kwargs)) > > ( File > > > "/home/dduck/.local/lib/python3.7/site-packages/django/db/backends/postgresql/base.py", > > > line 185, in get_new_connection) > > ( connection = Database.connect(**conn_params)) > > ( File > > "/usr/local/lib64/python3.7/site-packages/psycopg2/__init__.py", line > > 130, in connect) > > ( conn = _connect(dsn, connection_factory=connection_factory, > > **kwasync)) > > ( could not translate host name "timescaledb" to address: Name or > > service not known) > > > > > > > -- > Adrian Klaver > adrian.kla...@aklaver.com >