Skip to content
Snippets Groups Projects
Commit 1c9e2790 authored by Daniel Gerhardt's avatar Daniel Gerhardt
Browse files

Explicitly enable reduce step for views

This fixes a regression caused by a change in CouchDB4J 0.8 introduced
in commit 1eaebde0. CouchDB4J 0.8+
always defaults to `reduce=false` as long as grouping is not enabled.
parent be976d52
Branches
Tags
No related merge requests found
Pipeline #10482 passed with stages
in 2 minutes and 4 seconds
...@@ -1133,6 +1133,7 @@ public class CouchDBDao implements IDatabaseDao, ApplicationEventPublisherAware ...@@ -1133,6 +1133,7 @@ public class CouchDBDao implements IDatabaseDao, ApplicationEventPublisherAware
final NovaView view = new NovaView("skill_question/count_answers_by_session"); final NovaView view = new NovaView("skill_question/count_answers_by_session");
view.setKey(s.get_id()); view.setKey(s.get_id());
view.setReduce(true);
final ViewResults results = getDatabase().view(view); final ViewResults results = getDatabase().view(view);
if (results.getResults().isEmpty()) { if (results.getResults().isEmpty()) {
return 0; return 0;
...@@ -1894,6 +1895,7 @@ public class CouchDBDao implements IDatabaseDao, ApplicationEventPublisherAware ...@@ -1894,6 +1895,7 @@ public class CouchDBDao implements IDatabaseDao, ApplicationEventPublisherAware
private int getQuestionCount(final NovaView view, final Session session) { private int getQuestionCount(final NovaView view, final Session session) {
view.setKey(session.get_id()); view.setKey(session.get_id());
view.setReduce(true);
final ViewResults results = getDatabase().view(view); final ViewResults results = getDatabase().view(view);
if (results.getJSONArray("rows").optJSONObject(0) == null) { if (results.getJSONArray("rows").optJSONObject(0) == null) {
return 0; return 0;
...@@ -1914,6 +1916,7 @@ public class CouchDBDao implements IDatabaseDao, ApplicationEventPublisherAware ...@@ -1914,6 +1916,7 @@ public class CouchDBDao implements IDatabaseDao, ApplicationEventPublisherAware
private int countQuestionVariantAnswers(final Session session, final String variant) { private int countQuestionVariantAnswers(final Session session, final String variant) {
final NovaView view = new NovaView("skill_question/count_answers_by_session_and_question_variant"); final NovaView view = new NovaView("skill_question/count_answers_by_session_and_question_variant");
view.setKey(session.get_id(), variant); view.setKey(session.get_id(), variant);
view.setReduce(true);
final ViewResults results = getDatabase().view(view); final ViewResults results = getDatabase().view(view);
if (results.getResults().isEmpty()) { if (results.getResults().isEmpty()) {
return 0; return 0;
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment