add: cache->next_transaction_id = 1;
context: block_cache_create(int fd, off_t numBlocks, size_t blockSize){	block_cache *cache = new block_cache;	if (cache == NULL)		return NULL;	cache->hash = hash_init(32, 0, &cached_block_compare, &cached_block_hash);	if (cache->hash == NULL)		goto err1;	cache->transaction_hash = hash_init(16, 0, &transaction_compare, &transaction_hash);	if (cache->transaction_hash == NULL)		goto err2;	if (benaphore_init(&cache->lock, "block cache") < B_OK)		goto err3;	cache->fd = fd;	cache->max_blocks = numBlocks;	cache->block_size = blockSize;	return cache;err3:	hash_uninit(cache->transaction_hash);err2:	hash_uninit(cache->hash);err1:	delete cache;	return NULL;}