From ed70b7f1412307294fd33e35aa981a37363c15e0 Mon Sep 17 00:00:00 2001 From: Not Zed Date: Fri, 10 Aug 2001 01:19:47 +0000 Subject: NOOP if writing to a failed file. (word_index_pre): NOOP if failed file. 2001-08-10 Not Zed * wordindexmem.c (sync_cache_entry): NOOP if writing to a failed file. (word_index_pre): NOOP if failed file. (ibex_create_word_index_mem): Setup blocks value. ** Added internal exception handling to libibex, in the case of errors with on-disk data, exceptions are returned. * block.c (ibex_block_cache_open): Detect fatal errors below us and clean up appropriately. (ibex_block_cache_fail): New function to handle the failure, and keep track of it. (ibex_block_cache_sync): Dont do anything if we've failed on this file. * disktail.c (tail_compress): Add blocks param so we can assert for exceptions. * hash.c, block.c disktail.c: g_assert->ibex_block_cache_assert where dealing with external data. * hash.c (hash_info): Add index param so we can assert for exceptions. * ibex_block.c (ibex_index_buffer): Setjmp before calling into internal routines. (ibex_save): " (ibex_unindex): " (ibex_find): " (ibex_find_name): " (ibex_contains_name): " (ibex_reset): Function to reset the index file if we have an error, call when we have an error. * block.h (ibex_block_cache_assert): Create assertion/exception macros, and include a setjmp buffer for returning it. 2001-08-09 Not Zed * Makefile.am (libibex_la_SOURCES): Remove wordindex.c, wordindexmem is what's used. svn path=/trunk/; revision=11864 --- libibex/wordindex.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'libibex/wordindex.h') diff --git a/libibex/wordindex.h b/libibex/wordindex.h index 9d685cce8f..e113f7e82c 100644 --- a/libibex/wordindex.h +++ b/libibex/wordindex.h @@ -56,6 +56,8 @@ struct _IBEXWord { struct _IBEXStore *namestore; struct _IBEXIndex *nameindex; + struct _memcache *blocks; + /* word caching info (should probably be modularised) */ GHashTable *wordcache; /* word->struct _wordcache mapping */ struct _list wordnodes; /* LRU list of wordcache structures */ @@ -66,7 +68,7 @@ struct _IBEXWord { }; -struct _IBEXWord *ibex_create_word_index(struct _memcache *bc, blockid_t *wordroot, blockid_t *nameroot); +/*struct _IBEXWord *ibex_create_word_index(struct _memcache *bc, blockid_t *wordroot, blockid_t *nameroot);*/ /* alternate implemenation */ struct _IBEXWord *ibex_create_word_index_mem(struct _memcache *bc, blockid_t *wordroot, blockid_t *nameroot); -- cgit v1.2.3