Im making query and trying to make an order by rating field. This is paginated list so im making partially queries.
But my query is not sorted.
private void callRealOnlineUsersList(int page, String neededGender) {
DatabaseReference mReference = realtimeReference.child("OnlineUsers/" + neededGender);
Query query = mReference.limitToLast(page * TOTAL_ITEMS_TO_LOAD);
query.orderByChild("rating");
query.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
final List<OnlineUser> userList = new ArrayList<>();
for (DataSnapshot postSnapshot : dataSnapshot.getChildren()) {
OnlineUser user = postSnapshot.getValue(OnlineUser.class);
userList.add(new OnlineUser(user.getUid(), user.getName(), user.getImage(), user.getGender(), user.getCountry(), user.getRating()));
}
EventBus.getDefault().post(new ListEvent(userList));
}
Logs are
D/testList: rating 2
D/testList: rating 1
D/testList: rating 25
D/testList: rating 3
D/testList: rating 1
D/testList: rating 4
D/testList: rating 1
D/testList: rating 10
D/testList: rating 2
D/testList: rating 1
D/testList: rating 25