From b04e7bba9f6fc847f42e447ecb4f2fea5d62f395 Mon Sep 17 00:00:00 2001 From: Diogo Gomes Date: Wed, 7 Mar 2018 00:34:24 +0000 Subject: [PATCH] [SQL Sensor] partial revert of #12452 (#12956) * partial revert of #12452 * return missing --- homeassistant/components/sensor/sql.py | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/homeassistant/components/sensor/sql.py b/homeassistant/components/sensor/sql.py index 4edb13e0416..50d60bfc426 100644 --- a/homeassistant/components/sensor/sql.py +++ b/homeassistant/components/sensor/sql.py @@ -131,23 +131,23 @@ class SQLSensor(Entity): try: sess = self.sessionmaker() result = sess.execute(self._query) + + if not result.returns_rows or result.rowcount == 0: + _LOGGER.warning("%s returned no results", self._query) + self._state = None + self._attributes = {} + return + + for res in result: + _LOGGER.debug("result = %s", res.items()) + data = res[self._column_name] + self._attributes = {k: v for k, v in res.items()} except sqlalchemy.exc.SQLAlchemyError as err: _LOGGER.error("Error executing query %s: %s", self._query, err) return finally: sess.close() - if not result.returns_rows or result.rowcount == 0: - _LOGGER.warning("%s returned no results", self._query) - self._state = None - self._attributes = {} - return - - for res in result: - _LOGGER.debug("result = %s", res.items()) - data = res[self._column_name] - self._attributes = {k: v for k, v in res.items()} - if self._template is not None: self._state = self._template.async_render_with_possible_json_value( data, None)