'Initialize the ProgressDatabase instance.
Args:
db_filename: The name of the SQLite database to use.
sql_type: A string of the SQL type to use for entity keys.
py_type: The python type of entity keys.
signature: A string identifying the important invocation options,
used to make sure we are not using an old database.
commit_periodicity: How many operations to perform between commits.'

def __init__(self, db_filename, sql_type, py_type, signature, commit_periodicity=100):

    self.prior_key_end = None
    create_table = ('create    table    progress    (\nid    integer    primary    key    autoincrement,\nstate    integer    not    null,\nkind    text    not    null,\nkey_start    %s,\nkey_end    %s)' % (sql_type, sql_type))
    self.py_type = py_type
    index = 'create    index    i_state    on    progress    (state)'
    _Database.__init__(self, db_filename, create_table, signature, index=index, commit_periodicity=commit_periodicity)
