Problem: No MongoDB support for election ID index. (#2507)

Solution: Election ID has to be unique but not every validator set record has it. MongoDB does not support partial indexes, does not even allow for multiple Nones. This is a temporary fix since we are introducing an `election` collection to store election IDs in #2498.
This commit is contained in:
Lev Berman 2018-09-03 15:09:16 +02:00 committed by GitHub
parent 8e55b11da2
commit fe0a4c494b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 1 additions and 4 deletions

View File

@ -133,6 +133,3 @@ def create_validators_secondary_index(conn, dbname):
conn.conn[dbname]['validators'].create_index('height',
name='height',
unique=True,)
conn.conn[dbname]['validators'].create_index('election_id',
name='election_id',
unique=True,)

View File

@ -44,7 +44,7 @@ def test_init_creates_db_tables_and_indexes():
assert set(indexes) == {'_id_', 'pre_commit_id'}
indexes = conn.conn[dbname]['validators'].index_information().keys()
assert set(indexes) == {'_id_', 'height', 'election_id'}
assert set(indexes) == {'_id_', 'height'}
def test_init_database_fails_if_db_exists():