X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=index%2Fzebraapi.c;h=12bbae06a51751e2ae9f83c1201035f6d1cc2ec7;hb=46c0e649af38cec11668a4a15ab10915b06ccbc1;hp=9f907d0c6358d0e9922ced70b74dd895d7616bb8;hpb=af90f7f836a48a8e4bf6d5c2fc15c7133bac06f3;p=idzebra-moved-to-github.git diff --git a/index/zebraapi.c b/index/zebraapi.c index 9f907d0..12bbae0 100644 --- a/index/zebraapi.c +++ b/index/zebraapi.c @@ -1,4 +1,4 @@ -/* $Id: zebraapi.c,v 1.246 2007-01-17 13:51:36 adam Exp $ +/* $Id: zebraapi.c,v 1.250 2007-03-13 13:46:11 adam Exp $ Copyright (C) 1995-2007 Index Data ApS @@ -143,8 +143,8 @@ ZebraHandle zebra_open(ZebraService zs, Res res) zh->m_staticrank = 0; zh->m_segment_indexing = 0; - zh->busy_handler_func = 0; - zh->busy_handler_data = 0; + zh->break_handler_func = 0; + zh->break_handler_data = 0; default_encoding = res_get_def(zh->session_res, "encoding", "ISO-8859-1"); @@ -1024,12 +1024,12 @@ void zebra_set_partial_result(ZebraHandle zh) } -ZEBRA_RES zebra_set_busy_handler(ZebraHandle zh, - int (*f)(void *client_data), - void *client_data) +ZEBRA_RES zebra_set_break_handler(ZebraHandle zh, + int (*f)(void *client_data), + void *client_data) { - zh->busy_handler_func = f; - zh->busy_handler_data = client_data; + zh->break_handler_func = f; + zh->break_handler_data = client_data; return ZEBRA_OK; } @@ -1482,7 +1482,7 @@ ZEBRA_RES zebra_admin_exchange_record(ZebraHandle zh, &sysno, 0, /* match */ 0, /* fname */ - 0, /* force update */ + 1, /* force update */ 1 /* allow update */ ); if (res == ZEBRA_FAIL) @@ -1635,9 +1635,9 @@ int zebra_string_norm (ZebraHandle zh, unsigned reg_id, \param seqno sequence number val is one of: - d=writing to shadow(dirty) - o=no writing, - c=commit + d=writing to shadow(shadow enabled); writing to register (shadow disabled) + o=reading only + c=commit (writing to register, reading from shadow, shadow mode only) */ static void zebra_set_state (ZebraHandle zh, int val, int seqno) { @@ -1716,7 +1716,7 @@ static void read_res_for_transaction(ZebraHandle zh) v = res_get_prefix(zh->res, "openRW", group, "1"); zh->m_flag_rw = atoi(v); - v = res_get_prefix(zh->res, "fileVerboseLimit", group, "100000"); + v = res_get_prefix(zh->res, "fileVerboseLimit", group, "1000"); zh->m_file_verbose_limit = atoi(v); } @@ -1775,6 +1775,7 @@ ZEBRA_RES zebra_begin_trans(ZebraHandle zh, int rw) zh->records_updated = 0; zh->records_deleted = 0; zh->records_processed = 0; + zh->records_skipped = 0; #if HAVE_SYS_TIMES_H times (&zh->tms1); @@ -1797,6 +1798,11 @@ ZEBRA_RES zebra_begin_trans(ZebraHandle zh, int rw) if (val != 'o') { /* either we didn't finish commit or shadow is dirty */ + if (!rval) + { + yaz_log(YLOG_WARN, "previous transaction did not finish " + "(shadow disabled)"); + } zebra_unlock (zh->lock_shadow); zebra_unlock (zh->lock_normal); if (zebra_commit (zh)) @@ -2082,6 +2088,7 @@ static ZEBRA_RES zebra_commit_ex(ZebraHandle zh, int clean_only) if (val == 'd') { + /* shadow area is dirty and so we must throw it away */ yaz_log(YLOG_WARN, "previous transaction didn't reach commit"); clean_only = 1; } @@ -2298,7 +2305,7 @@ void zebra_set_shadow_enable (ZebraHandle zh, int value) ZEBRA_RES zebra_add_record(ZebraHandle zh, const char *buf, int buf_size) { - return zebra_update_record(zh, 0, 0 /* sysno */, 0, 0, buf, buf_size, 0); + return zebra_update_record(zh, 0, 0 /* sysno */, 0, 0, buf, buf_size, 1); } ZEBRA_RES zebra_insert_record(ZebraHandle zh, @@ -2324,7 +2331,7 @@ ZEBRA_RES zebra_insert_record(ZebraHandle zh, recordType, sysno, match, fname, - 0, + 1, 0); /* allow_update */ if (zebra_end_trans(zh) != ZEBRA_OK) {