It looks like the "purple" extension is trying to aggregate by groups, but
asking for a non-aggregated value for 'usUnits'.

What extension is this? The purple air extension I see on the wiki uses the
module "user.purpleair", not "user.purple".

On Mon, Apr 29, 2024 at 4:37 PM Clay Jackson <cl...@n7qnm.net> wrote:

> I'm updating from WeeWx Version 4 to 5.0.2 and when I do, the sample
> dashboard for Purple causes imgagegenerator to crash - here's the output
> from syslog.
>
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: Caught
> unrecoverable exception in generator 'weewx.imagegenerator.ImageGenerator'
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** (1140,
> "In aggregated query without GROUP BY, expression #2
> <https://github.com/chaunceygardiner/weewx-purple/issues/2> of SELECT
> list contains nonaggregated column 'weewx.archive.usUnits
> '; this is incompatible with sql_mode=only_full_group_by")
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> Traceback (most recent call last):
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/xtypes.py", line
> 109, in get_series
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** return
> xtype.get_series(obs_type, timespan, db_manager, aggregate_type,
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> TypeError: AQI.get_series() got an unexpected keyword argument 'SKIN_ROOT'
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** During
> handling of the above exception, another exception occurred:
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> Traceback (most recent call last):
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weedb/mysql.py", line
> 53, in guarded_fn
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** return
> fn(*args, **kwargs)
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weedb/mysql.py", line
> 247, in execute
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> self.cursor.execute(mysql_string, tuple(sql_tuple))
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/pymysql/cursors.py",
> line 153, in execute
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** result
> = self._query(query)
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/pymysql/cursors.py",
> line 322, in _query
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> conn.query(q)
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/pymysql/connections.py",
> line 558, in query
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> self._affected_rows = self._read_query_result(unbuffered=unbuffered)
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/pymysql/connections.py",
> line 822, in _read_query_result
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> result.read()
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/pymysql/connections.py",
> line 1200, in read
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> first_packet = self.connection._read_packet()
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/pymysql/connections.py",
> line 772, in _read_packet
> Apr 29 16:26:12 weewx python3[2282]: Traceback (most recent call last):
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/xtypes.py", line
> 109, in get_series
> Apr 29 16:26:12 weewx python3[2282]: return xtype.get_series(obs_type,
> timespan, db_manager, aggregate_type,
> Apr 29 16:26:12 weewx python3[2282]: TypeError: AQI.get_series() got an
> unexpected keyword argument 'SKIN_ROOT'
> Apr 29 16:26:12 weewx python3[2282]: During handling of the above
> exception, another exception occurred:
> Apr 29 16:26:12 weewx python3[2282]: Traceback (most recent call last):
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weedb/mysql.py", line
> 53, in guarded_fn
> Apr 29 16:26:12 weewx python3[2282]: return fn(*args, **kwargs)
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weedb/mysql.py", line
> 247, in execute
> Apr 29 16:26:12 weewx python3[2282]: self.cursor.execute(mysql_string,
> tuple(sql_tuple))
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/pymysql/cursors.py",
> line 153, in execute
> Apr 29 16:26:12 weewx python3[2282]: result = self._query(query)
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/pymysql/cursors.py",
> line 322, in _query
> Apr 29 16:26:12 weewx python3[2282]: conn.query(q)
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/pymysql/connections.py",
> line 558, in query
> Apr 29 16:26:12 weewx python3[2282]: self._affected_rows =
> self._read_query_result(unbuffered=unbuffered)
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/pymysql/connections.py",
> line 822, in _read_query_result
> Apr 29 16:26:12 weewx python3[2282]: result.read()
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/pymysql/connections.py",
> line 1200, in read
> Apr 29 16:26:12 weewx python3[2282]: first_packet =
> self.connection._read_packet()
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/pymysql/connections.py",
> line 772, in _read_packet
> Apr 29 16:26:12 weewx python3[2282]: packet.raise_for_error()
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/pymysql/protocol.py",
> line 221, in raise_for_error
> Apr 29 16:26:12 weewx python3[2282]: err.raise_mysql_exception(self._data)
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/pymysql/err.py", line
> 143, in raise_mysql_exception
> Apr 29 16:26:12 weewx python3[2282]: raise errorclass(errno, errval)
> Apr 29 16:26:12 weewx python3[2282]: pymysql.err.OperationalError: (1140,
> "In aggregated query without GROUP BY, expression #2
> <https://github.com/chaunceygardiner/weewx-purple/issues/2> of SELECT
> list contains nonaggregated column 'weewx.archive.usUnits'; this i
> s incompatible with sql_mode=only_full_group_by")
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> packet.raise_for_error()
> Apr 29 16:26:12 weewx python3[2282]: During handling of the above
> exception, another exception occurred:
> Apr 29 16:26:12 weewx python3[2282]: Traceback (most recent call last):
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/reportengine.py",
> line 220, in run
> Apr 29 16:26:12 weewx python3[2282]: obj.start()
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/reportengine.py",
> line 409, in start
> Apr 29 16:26:12 weewx python3[2282]: self.run()
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/imagegenerator.py",
> line 37, in run
> Apr 29 16:26:12 weewx python3[2282]: self.gen_images(self.gen_ts)
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/imagegenerator.py",
> line 100, in gen_images
> Apr 29 16:26:12 weewx python3[2282]: plot = self.gen_plot(plotgen_ts,
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/imagegenerator.py",
> line 236, in gen_plot
> Apr 29 16:26:12 weewx python3[2282]: start_vec_t, stop_vec_t, data_vec_t =
> weewx.xtypes.get_series(
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/xtypes.py", line
> 114, in get_series
> Apr 29 16:26:12 weewx python3[2282]: return xtype.get_series(obs_type,
> timespan, db_manager, aggregate_type,
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-data/bin/user/purple.py", line 627, in get_series
> Apr 29 16:26:12 weewx python3[2282]: return
> weewx.xtypes.ArchiveTable.get_series(obs_type, timespan, db_manager,
> aggregate_type,
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/xtypes.py", line
> 213, in get_series
> Apr 29 16:26:12 weewx python3[2282]: agg_vt = get_aggregate(obs_type,
> stamp, do_aggregate, db_manager,
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/xtypes.py", line
> 136, in get_aggregate
> Apr 29 16:26:12 weewx python3[2282]: return xtype.get_aggregate(obs_type,
> timespan, aggregate_type, db_manager,
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-data/bin/user/purple.py", line 719, in get_aggregate
> Apr 29 16:26:12 weewx python3[2282]: row = db_manager.getSql(select_stmt)
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/manager.py",
> line 579, in getSql
> Apr 29 16:26:12 weewx python3[2282]: _cursor.execute(sql, sqlargs)
> Apr 29 16:26:12 weewx python3[2282]: File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weedb/mysql.py", line
> 62, in guarded_fn
> Apr 29 16:26:12 weewx python3[2282]: raise klass(e)
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/pymysql/protocol.py",
> line 221, in raise_for_error
> Apr 29 16:26:12 weewx python3[2282]: weedb.DatabaseError: (1140, "In
> aggregated query without GROUP BY, expression #2
> <https://github.com/chaunceygardiner/weewx-purple/issues/2> of SELECT
> list contains nonaggregated column 'weewx.archive.usUnits'; this is
> incompatible with sql_mode=only_full_group_by")
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> err.raise_mysql_exception(self._data)
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/pymysql/err.py", line
> 143, in raise_mysql_exception
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** raise
> errorclass(errno, errval)
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> pymysql.err.OperationalError: (1140, "In aggregated query without GROUP BY,
> expression #2 <https://github.com/chaunceygardiner/weewx-purple/issues/2> of
> SELECT list contains nonaggregated column 'weewx.archive.usUnits'; this is
> incompatible with sql_mode=only_full_group_by")
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** During
> handling of the above exception, another exception occurred:
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> Traceback (most recent call last):
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/reportengine.py",
> line 220, in run
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> obj.start()
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/reportengine.py",
> line 409, in start
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> self.run()
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/imagegenerator.py",
> line 37, in run
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> self.gen_images(self.gen_ts)
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/imagegenerator.py",
> line 100, in gen_images
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** plot =
> self.gen_plot(plotgen_ts,
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/imagegenerator.py",
> line 236, in gen_plot
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> start_vec_t, stop_vec_t, data_vec_t = weewx.xtypes.get_series(
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/xtypes.py", line
> 114, in get_series
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** return
> xtype.get_series(obs_type, timespan, db_manager, aggregate_type,
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-data/bin/user/purple.py", line 627, in get_series
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** return
> weewx.xtypes.ArchiveTable.get_series(obs_type, timespan, db_manager,
> aggregate_type,
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/xtypes.py", line
> 213, in get_series
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** agg_vt
> = get_aggregate(obs_type, stamp, do_aggregate, db_manager,
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/xtypes.py", line
> 136, in get_aggregate
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** return
> xtype.get_aggregate(obs_type, timespan, aggregate_type, db_manager,
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-data/bin/user/purple.py", line 719, in get_aggregate
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** row =
> db_manager.getSql(select_stmt)
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weewx/manager.py",
> line 579, in getSql
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> _cursor.execute(sql, sqlargs)
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** File
> "/home/weewx/weewx-venv/lib/python3.10/site-packages/weedb/mysql.py", line
> 62, in guarded_fn
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: **** raise
> klass(e)
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> weedb.DatabaseError: (1140, "In aggregated query without GROUP BY,
> expression #2 <https://github.com/chaunceygardiner/weewx-purple/issues/2> of
> SELECT list contains nonaggregated column 'weewx.archive.usUnits'; this is
> incompatible with sql_mode=only_full_group_by")
> Apr 29 16:26:12 weewx weewxd[2282]: ERROR weewx.reportengine: ****
> Generator terminated
>
> --
> You received this message because you are subscribed to the Google Groups
> "weewx-user" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to weewx-user+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/weewx-user/6866dcbd-f175-4977-adc5-bd351a06f0e9n%40googlegroups.com
> <https://groups.google.com/d/msgid/weewx-user/6866dcbd-f175-4977-adc5-bd351a06f0e9n%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to weewx-user+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/weewx-user/CAPq0zEAFqGEy67ytqt-4EGCu%3D_PL9CnXmr6bHOuWOuarMzdjPg%40mail.gmail.com.

Reply via email to