library/src/datastructures/BP-HashTable.cc
// iterate through all hashes and display
iterate through all hashes and display
iterate through all hashes and display
HASH_ITER(hh, entry_table, entry, tmp)
	{
		if(entry == table)
			continue;
		data_lock_status  = ERR_FAILURE;
		table_lock_status = ERR_FAILURE;
		if(entry->type != BP_HASH_TABLE_KEYED_ENTRY_TYPE_NAMED_HASH_TABLE)
		{
			data_lock_status = BP_HashRegCheckOutData
			(
				hreg,
				entry,
				block_till_checkout_established
			);
		}
		else
		{
			table_lock_status = BP_HashRegCheckOutTable
			(
				hreg,
				entry,
				block_till_checkout_established
			);
		}
	}
HASH_ITER ( hh , entry_table , entry , tmp ) { if ( entry == table ) continue ; data_lock_status = ERR_FAILURE ; table_lock_status = ERR_FAILURE ; if ( entry -> type != BP_HASH_TABLE_KEYED_ENTRY_TYPE_NAMED_HASH_TABLE ) { data_lock_status = BP_HashRegCheckOutData ( hreg , entry , block_till_checkout_established ) ; } else { table_lock_status = BP_HashRegCheckOutTable ( hreg , entry , block_till_checkout_established ) ; } }
iterate through all hashes and display
iterate through all hashes and display
// always skip self references // reset lock status on loop // It's either a data entry or a hash table.  If it's data, just lock it.  If it's a table, // check out the tables member elements. // attempt to checkout data entry // attempt to checkout the table recursively