Biothings.api Implementation: When generating a release note between two builds, $x$ and $y$, the Publisher in Biothings.api codebase will read 3 major pieces of information for each build, i.e. build stats, datasource stats, and mappings. However, if a build $x$ has a cold_collection, which corresponds to another build $x'$, the Publisher should read the combined stats/mappings of $x$ and $x'$.
For build stats, the Publisher will read the combined stats in $x$, no need to read $x'$.
For datasource stats, the Publisher will read the datasource fields in both $x$ and $x'$
For mappings, the Publisher will read the mapping fields in both $x$ and $x'$
Note that Biothings.api Implementatio should work compatibly even if build $x$ is a vanilla without a cold_collection.
MyVariant.info Implementation: The MyVariant indexer should update the build stats of $x$ (in post-index steps). Previously we only updated the build stats to ES mapping meta field. Such build stats should also be written into MongoDB.
This PR is the MyVariant.info Implementation, which enables the Biothings.api Implementation workflow i.
This is part of the fix to https://github.com/biothings/myvariant.info/issues/103.
The whole fix involves two parts:
cold_collection
, which corresponds to another build $x'$, the Publisher should read the combined stats/mappings of $x$ and $x'$.cold_collection
.meta
field. Such build stats should also be written into MongoDB.This PR is the MyVariant.info Implementation, which enables the Biothings.api Implementation workflow i.
P.S. The Biothings.api Implementation is proposed by https://github.com/biothings/biothings.api/pull/240