Browse Source

Fix ordering when requesting summary of block forgers

split-DB
catbref 5 years ago
parent
commit
ae6cf9fc32
  1. 8
      src/main/java/org/qora/repository/hsqldb/HSQLDBBlockRepository.java

8
src/main/java/org/qora/repository/hsqldb/HSQLDBBlockRepository.java

@ -180,9 +180,7 @@ public class HSQLDBBlockRepository implements BlockRepository {
@Override @Override
public List<BlockForgerSummary> getBlockForgers(List<String> addresses, Integer limit, Integer offset, Boolean reverse) throws DataException { public List<BlockForgerSummary> getBlockForgers(List<String> addresses, Integer limit, Integer offset, Boolean reverse) throws DataException {
String subquerySql = "SELECT generator, COUNT(signature) FROM Blocks GROUP BY generator ORDER BY COUNT(signature) "; String subquerySql = "SELECT generator, COUNT(signature) FROM Blocks GROUP BY generator";
if (reverse != null && reverse)
subquerySql += " DESC";
String sql = "SELECT DISTINCT generator, n_blocks, forger, recipient FROM (" + subquerySql + ") AS Forgers (generator, n_blocks) " String sql = "SELECT DISTINCT generator, n_blocks, forger, recipient FROM (" + subquerySql + ") AS Forgers (generator, n_blocks) "
+ " LEFT OUTER JOIN ProxyForgers ON proxy_public_key = generator "; + " LEFT OUTER JOIN ProxyForgers ON proxy_public_key = generator ";
@ -196,6 +194,10 @@ public class HSQLDBBlockRepository implements BlockRepository {
addresses = Collections.emptyList(); addresses = Collections.emptyList();
} }
sql += "ORDER BY n_blocks ";
if (reverse != null && reverse)
sql += "DESC ";
sql += HSQLDBRepository.limitOffsetSql(limit, offset); sql += HSQLDBRepository.limitOffsetSql(limit, offset);
List<BlockForgerSummary> summaries = new ArrayList<>(); List<BlockForgerSummary> summaries = new ArrayList<>();

Loading…
Cancel
Save