Lines Matching defs:dbc

99 	DBC *dbc;
103 dbc = NULL;
120 if ((ret = dbp->cursor(dbp, NULL, &dbc, 0)) != 0)
123 hcp = (HASH_CURSOR *)dbc->internal;
155 (ret = lock_get(dbenv->lk_info, dbc->locker, 0,
156 &dbc->lock_dbt, DB_LOCK_WRITE, &hcp->hlock)) != 0)) {
162 __ham_init_htab(dbc, dbinfo != NULL ? dbinfo->h_nelem : 0,
172 if ((ret = dbc->c_close(dbc)) != 0)
200 __ham_init_htab(dbc, nelem, ffactor)
201 DBC *dbc;
208 hcp = (HASH_CURSOR *)dbc->internal;
209 dbp = dbc->dbp;
243 DBC *dbc;
253 if ((ret = dbp->cursor(dbp, txn, &dbc, DB_WRITELOCK)) != 0)
256 DEBUG_LWRITE(dbc, txn, "ham_delete", key, NULL, flags);
258 hcp = (HASH_CURSOR *)dbc->internal;
264 if ((ret = __ham_lookup(dbc, key, 0, DB_LOCK_WRITE)) == 0)
266 ret = __ham_del_pair(dbc, 1);
271 out: if ((tret = dbc->c_close(dbc)) != 0 && ret == 0)
284 __ham_c_init(dbc)
285 DBC *dbc;
293 __os_malloc(dbc->dbp->pgsize, NULL, &new_curs->split_buf)) != 0) {
298 new_curs->dbc = dbc;
300 dbc->internal = new_curs;
301 dbc->c_am_close = __ham_c_close;
302 dbc->c_am_destroy = __ham_c_destroy;
303 dbc->c_del = __ham_c_del;
304 dbc->c_get = __ham_c_get;
305 dbc->c_put = __ham_c_put;
317 __ham_c_close(dbc)
318 DBC *dbc;
322 if ((ret = __ham_item_done(dbc, 0)) != 0)
325 __ham_item_init((HASH_CURSOR *)dbc->internal);
334 __ham_c_destroy(dbc)
335 DBC *dbc;
339 hcp = (HASH_CURSOR *)dbc->internal;
341 __os_free(hcp->split_buf, dbc->dbp->pgsize);
348 __ham_c_del(dbc, flags)
349 DBC *dbc;
359 DEBUG_LWRITE(dbc, dbc->txn, "ham_c_del", NULL, NULL, flags);
360 dbp = dbc->dbp;
362 hcp = (HASH_CURSOR *)dbc->internal;
364 if ((ret = __db_cdelchk(dbc->dbp, flags,
365 F_ISSET(dbc->dbp, DB_AM_RDONLY), IS_VALID(hcp))) != 0)
379 if (!F_ISSET(dbc, DBC_RMW | DBC_WRITER))
382 if (F_ISSET(dbc, DBC_RMW) &&
383 (ret = lock_get(dbp->dbenv->lk_info, dbc->locker,
384 DB_LOCK_UPGRADE, &dbc->lock_dbt, DB_LOCK_WRITE,
385 &dbc->mylock)) != 0)
396 if ((ret = __ham_get_cpage(dbc, DB_LOCK_WRITE)) != 0)
430 if ((ret = __db_drem(dbc,
437 if ((ret = __ham_get_cpage(dbc,
443 ret = __ham_del_pair(dbc, 1);
475 ret = __ham_del_pair(dbc, 1);
484 ret = __ham_replpair(dbc, &repldbt, 0);
493 normal: ret = __ham_del_pair(dbc, 1);
495 out: if ((t_ret = __ham_item_done(dbc, ret == 0)) != 0 && ret == 0)
499 if (F_ISSET(dbp, DB_AM_CDB) && F_ISSET(dbc, DBC_RMW))
500 (void)__lock_downgrade(dbp->dbenv->lk_info, dbc->mylock,
506 __ham_c_get(dbc, key, data, flags)
507 DBC *dbc;
517 DEBUG_LREAD(dbc, dbc->txn, "ham_c_get",
521 hcp = (HASH_CURSOR *)dbc->internal;
522 dbp = dbc->dbp;
547 ret = __ham_item_prev(dbc, lock_type);
552 ret = __ham_item_last(dbc, lock_type);
555 ret = __ham_item_first(dbc, lock_type);
562 ret = __ham_item_next(dbc, lock_type);
568 ret = __ham_item_next(dbc, lock_type);
573 if (F_ISSET(dbc, DBC_CONTINUE)) {
575 ret = __ham_item_next(dbc, lock_type);
576 } else if (F_ISSET(dbc, DBC_KEYSET))
577 ret = __ham_item(dbc, lock_type);
579 ret = __ham_lookup(dbc, key, 0, lock_type);
588 ret = __ham_item(dbc, lock_type);
602 H_KEYINDEX(hcp->bndx), key, &dbc->rkey.data,
603 &dbc->rkey.size)) != 0)
606 ret = __ham_dup_return(dbc, data, flags);
619 ret = __ham_item_done(dbc, 0);
627 ret = __ham_item_prev(dbc, lock_type);
631 ret = __ham_item_done(dbc, 0);
641 ret = __ham_item_next(dbc, lock_type);
652 out1: if ((t_ret = __ham_item_done(dbc, 0)) != 0 && ret == 0)
660 __ham_c_put(dbc, key, data, flags)
661 DBC *dbc;
672 dbp = dbc->dbp;
674 DEBUG_LWRITE(dbc, dbc->txn, "ham_c_put",
677 hcp = (HASH_CURSOR *)dbc->internal;
695 if (!F_ISSET(dbc, DBC_RMW | DBC_WRITER))
698 if (F_ISSET(dbc, DBC_RMW) &&
699 (ret = lock_get(dbp->dbenv->lk_info, dbc->locker,
700 DB_LOCK_UPGRADE, &dbc->lock_dbt, DB_LOCK_WRITE,
701 &dbc->mylock)) != 0)
719 if ((ret = __ham_lookup(dbc,
724 if ((ret = __ham_item_done(dbc, 0)) != 0)
740 &dbc->rdata.data, &dbc->rdata.size)) == 0) {
750 ret = __ham_add_el(dbc, key, myval, H_KEYDATA);
757 ret = __ham_item(dbc, DB_LOCK_WRITE);
765 ret = __ham_overwrite(dbc, data);
767 ret = __ham_add_dup(dbc, data, flags);
771 ret = __ham_expand_table(dbc);
775 if ((t_ret = __ham_item_done(dbc, ret == 0)) != 0 && ret == 0)
780 if (F_ISSET(dbp, DB_AM_CDB) && F_ISSET(dbc, DBC_RMW))
781 (void)__lock_downgrade(dbp->dbenv->lk_info, dbc->mylock,
792 __ham_expand_table(dbc)
793 DBC *dbc;
801 dbp = dbc->dbp;
802 hcp = (HASH_CURSOR *)dbc->internal;
827 __ham_init_ovflpages(dbc);
831 if (DB_LOGGING(dbc)) {
833 dbc->txn, &new_lsn, 0, dbp->log_fileid,
870 return (__ham_split_page(dbc, old_bucket, new_bucket));
884 n = (u_int32_t)(hcp->dbc->dbp->h_hash(k, len));
897 __ham_dup_return(dbc, val, flags)
898 DBC *dbc;
914 dbp = dbc->dbp;
915 hcp = (HASH_CURSOR *)dbc->internal;
964 if ((ret = __db_dend(dbc,
969 } else if ((ret = __ham_next_cpage(dbc,
982 if ((ret = __db_dsearch(dbc, 0, val,
989 __ham_dsearch(dbc, val, &off, &cmp);
1066 if ((ret = __db_ret(dbp, pp, ndx, myval, &dbc->rdata.data,
1067 &dbc->rdata.size)) != 0)
1081 __ham_overwrite(dbc, nval)
1082 DBC *dbc;
1089 hcp = (HASH_CURSOR *)dbc->internal;
1090 if (F_ISSET(dbc->dbp, DB_AM_DUP))
1091 return (__ham_add_dup(dbc, nval, DB_KEYLAST));
1108 return (__ham_replpair(dbc, myval, 0));
1121 __ham_lookup(dbc, key, sought, mode)
1122 DBC *dbc;
1134 dbp = dbc->dbp;
1135 hcp = (HASH_CURSOR *)dbc->internal;
1140 if ((ret = __ham_item_reset(dbc)) != 0)
1146 if ((ret = __ham_item_next(dbc, mode)) != 0)
1195 if ((t_ret = __ham_item_done(dbc, 0)) != 0 && ret == 0)
1274 dbp = hcp->dbc->dbp;