-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
В рамках #194 был сделан метод обработки таблиц. Теперь обработанные данные нужно перенести на таблицы первого уровня. Первым приоритетом нужно переносить каталог координат и каталог имён.
Это включает в себя метод (обсуждавшийся в дискуссии https://github.com/orgs/HyperLEDA/discussions/171) POST /api/v1/admin/table/status:
{
"table_id": 12345,
"overrides": [
{ // этому объекту будет явным образом присвоен pgc-номер 123456, вне зависимости от того, существует объект с pgc-номером 123456 уже или нет.
"id": "2d6afe64-d9a2-441c-8896-6eac9279da2a", // hyperleda_internal_id, будет отдаваться в GET /api/v1/table/status
"pgc": 123456
},
{ // этому объекту будет присвоен следующий свободный pgc-номер.
"id": "433894c5-e1f1-4b72-a51e-c7eb00bfe7a5"
}
]
}Этот метод будет делать примерно следующее:
- Батчами по batch_size объектов для всех объектов из
rawdata.objects:- Применяет присланные оверрайды - если в оверрайде не указан pgc, то присваивает объекту явным образом статус
new. Если прислан, то присваивает явным образом статусexistingи указанный pgc. - Для всех объектов со статусом
newприсвоить новые pgc-номера, вставить их в реестр объектов (таблицаcommon.pgc) и переносить на первый уровень (что это значит - дальше). - Для всех объектов со статусом
existing- создаёт вне несуществующие pgc (такое может случиться только если pgc был указан в качестве оверрайда), переносит все объекты на первый уровень.
- Применяет присланные оверрайды - если в оверрайде не указан pgc, то присваивает объекту явным образом статус
Объекты в статусе collided будут игнорироваться (кроме тех, что указаны в секции overrides).
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels