Lines Matching refs:db
631 const struct database *db = (const struct database *) arg; in add_key() local
637 stridx = wp - db->keystrtab; in add_key()
647 while (db->hashtable[hidx] != ~((stridx_t) 0)) in add_key()
654 db->hashtable[hidx] = ((db->extra_string ? valstrlen : 0) in add_key()
656 db->keyidxtab[hidx] = stridx; in add_key()
669 static struct database *db; in compute_tables() local
670 for (db = databases; db != NULL; db = db->next) in compute_tables()
671 if (db->nentries != 0) in compute_tables()
679 size_t nhashentries_min = next_prime (db->nentries < TEST_RANGE in compute_tables()
680 ? db->nentries in compute_tables()
681 : db->nentries * 2 - TEST_RANGE); in compute_tables()
682 size_t nhashentries_max = MAX (nhashentries_min, db->nentries * 4); in compute_tables()
684 size_t chainlength_best = db->nentries; in compute_tables()
686 db->hashtable = xmalloc (2 * nhashentries_max * sizeof (stridx_t) in compute_tables()
687 + db->keystrlen); in compute_tables()
688 db->keyidxtab = db->hashtable + nhashentries_max; in compute_tables()
689 db->keystrtab = (char *) (db->keyidxtab + nhashentries_max); in compute_tables()
695 memset (db->hashtable, '\xff', nhashentries * sizeof (stridx_t)); in compute_tables()
698 wp = db->keystrtab; in compute_tables()
700 twalk_r (db->entries, add_key, db); in compute_tables()
722 memset (db->hashtable, '\xff', in compute_tables()
725 wp = db->keystrtab; in compute_tables()
727 twalk_r (db->entries, add_key, db); in compute_tables()
729 db->nhashentries = nhashentries_best; in compute_tables()
759 for (struct database *db = databases; db != NULL; db = db->next) in write_output() local
760 if (db->entries != NULL) in write_output()
765 header->dbs[filled_dbs].id = db->dbid; in write_output()
768 header->dbs[filled_dbs].hashsize = db->nhashentries; in write_output()
770 iov[2 + filled_dbs].iov_base = db->hashtable; in write_output()
771 iov[2 + filled_dbs].iov_len = db->nhashentries * sizeof (stridx_t); in write_output()
775 iov[2 + ndatabases + filled_dbs * 2].iov_base = db->keyidxtab; in write_output()
777 = db->nhashentries * sizeof (stridx_t); in write_output()
781 iov[3 + ndatabases + filled_dbs * 2].iov_base = db->keystrtab; in write_output()
782 iov[3 + ndatabases + filled_dbs * 2].iov_len = db->keystrlen; in write_output()