MailRuChamps / hlcupdocs

High-loaded systems developer contest
https://highloadcup.ru
151 stars 34 forks source link

Своебразный вывод пустых значений ключей в group (18.12.2018) #110

Closed stremin closed 5 years ago

stremin commented 5 years ago

Вывод пустых значений для метода group устроен странно, вместо одной логики используется несколько. Видимо, работает так: пустые значения (типа "country": null) отбрасываются, если для других ключей есть непустые значения. Но если есть только пустые значения, то они выводятся явно. Примеры:

  1. /accounts/group/?status=%D0%B2%D1%81%D1%91+%D1%81%D0%BB%D0%BE%D0%B6%D0%BD%D0%BE&limit=35&order=-1&query_id=600&birth=1997&keys=city%2Cstatus {"status":"всё сложно","count":15},{"status":"всё сложно","count":2,"city":"Санктярск"},... -- здесь нет city в первом элементе
  2. /accounts/group/?status=%D0%B2%D1%81%D1%91+%D1%81%D0%BB%D0%BE%D0%B6%D0%BD%D0%BE&query_id=387&order=-1&limit=45&keys=country {"groups":[{"country":null,"count":385},{"country":"Румляндия","count":67},... -- а здесь есть

Может быть можно всегда требовать выводить null для пустых значений, или никогда не выводить? Или при валидации не учитывать null значения независимо от формы записи?

recar commented 5 years ago

Логичнее не выводить

igrishaev commented 5 years ago

Аналогично:

expected: {:groups
           [{:count 38, :sex "m"}
            {:count 28, :sex "f"}
            {:count 9, :sex "f", :country "Мализия"}
            {:count 7, :sex "f", :country "Румляндия"}

Здесь пустые country удалены, в другом запросе country null

igrishaev commented 5 years ago

Сделайте, пожалуйста, в каком-то одном стиле -- либо оставлять, либо выводить. Но чтобы везде одинаково.

stremin commented 5 years ago

В test_accounts_251218.zip уже нигде нет null.

igrishaev commented 5 years ago

@stremin не могу найти файл test_accounts_251218.zip. Где его скачать?

stremin commented 5 years ago

На странице https://highloadcup.ru/ru/round/3/task/3/ ссылка "Получить тестовые данные". Сейчас она ведет на https://highloadcup.ru/media/condition/test_accounts_251218.zip (и меняется почти каждый день).

igrishaev commented 5 years ago

@stremin виноват, сидел под анонимом.