57 bits disponíveis. 6 bits usados para guardar o tamanho;
varbit atual usa 10 bits MSB para informar o país, sobrando 54 bits para células (códigos de até 13+1 dígitos em 16h);
incorporando 10 bits do pais ao bigint sobram 47 bits (códigos de até 11+1 dígitos em 16h). No Brasil, atualmente são usados 48 bits (até 12 dígitos na 16h ou até 11 dígitos na 16h1c)! Atualização: 10bits referentes ao país serão mapeados em 9 bits.
Impactos da mudança:
Trocar varbit por bigint em coberturas;
Reindexar coberturas;
adaptar clausula where de funções osmc.encode*_;
adaptar clausula where e order em _osmc.encode_shortcode;
adaptar as funções que extraem certos bits, exemplo: osmc.extract*_;
Os commits https://github.com/osm-codes/NaturalCodes/commit/2b1493ba3e637ee68aea2f9029a96b9b617f33c1 e https://github.com/osm-codes/NaturalCodes/commit/22dffaa0842e19e975f9a8c030dcf68c01a799f8 fornecem maneira de usar bigint para indexar células, realizar busca por intervalo ao mesmo tempo que armazenam a quantidade de bits usados.
Considerações preliminares:
incorporando 10 bits do pais ao bigint sobram 47 bits (códigos de até 11+1 dígitos em 16h). No Brasil, atualmente são usados 48 bits (até 12 dígitos na 16h ou até 11 dígitos na 16h1c)!Atualização: 10bits referentes ao país serão mapeados em 9 bits.Impactos da mudança: