diff --git a/src/sakia/data/repositories/nodes.py b/src/sakia/data/repositories/nodes.py index 5772f4ffba3efadc62939c5b7dfec6c38bf95547..021d8e363bd6467cf1613ee1b252d3a838f3a486 100644 --- a/src/sakia/data/repositories/nodes.py +++ b/src/sakia/data/repositories/nodes.py @@ -122,4 +122,16 @@ class NodesRepo: data = c.fetchone() if data: return block_uid(data[0]) + else: + c = self._conn.execute("""SELECT `current_buid`, + COUNT(`current_buid`) AS `value_occurrence` + FROM `nodes` + WHERE state == 1 AND currency == ? + GROUP BY `current_buid` + ORDER BY `value_occurrence` DESC + LIMIT 1;""", (currency,)) + data = c.fetchone() + if data: + return block_uid(data[0]) + return BlockUID.empty()