X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=index%2Fzebraapi.c;h=b3258e3e108a9e5c6a2fee4ba8c6b7ddcacc2d69;hb=74fdf8a15af7bb827a256d9df3ecc34a57d2120f;hp=c91b5b2f628ace602d9eb22fa00bbfd664ba93d4;hpb=074e63e27b02896c927606ce5bb324a55613dd31;p=idzebra-moved-to-github.git diff --git a/index/zebraapi.c b/index/zebraapi.c index c91b5b2..b3258e3 100644 --- a/index/zebraapi.c +++ b/index/zebraapi.c @@ -1,4 +1,4 @@ -/* $Id: zebraapi.c,v 1.208 2006-03-29 10:43:24 adam Exp $ +/* $Id: zebraapi.c,v 1.210 2006-03-31 15:58:04 adam Exp $ Copyright (C) 1995-2005 Index Data ApS @@ -459,7 +459,7 @@ struct zebra_register *zebra_register_open(ZebraService zs, const char *name, ret = ZEBRA_FAIL; } } - if (reg->records) + if (ret == ZEBRA_OK) { reg->zei = zebraExplain_open(reg->records, reg->dh, res, rw, reg, @@ -1363,7 +1363,8 @@ ZEBRA_RES zebra_admin_exchange_record(ZebraHandle zh, { if (action == 1) /* fail if insert */ { - zebra_end_trans(zh); + if (zebra_end_trans(zh) != ZEBRA_OK) + yaz_log(YLOG_WARN, "zebra_end_trans failed"); zebra_setError(zh, YAZ_BIB1_ES_IMMEDIATE_EXECUTION_FAILED, "Cannot insert record: already exist"); return ZEBRA_FAIL; @@ -1375,7 +1376,8 @@ ZEBRA_RES zebra_admin_exchange_record(ZebraHandle zh, { if (action == 2 || action == 3) /* fail if delete or update */ { - zebra_end_trans(zh); + if (zebra_end_trans(zh) != ZEBRA_OK) + yaz_log(YLOG_WARN, "zebra_end_trans failed"); zebra_setError(zh, YAZ_BIB1_ES_IMMEDIATE_EXECUTION_FAILED, "Cannot delete/update record: does not exist"); return ZEBRA_FAIL; @@ -1406,7 +1408,11 @@ ZEBRA_RES zebra_admin_exchange_record(ZebraHandle zh, { dict_delete_ord(zh->reg->matchDict, db_ord, recid_z); } - zebra_end_trans(zh); + if (zebra_end_trans(zh) != ZEBRA_OK) + { + yaz_log(YLOG_WARN, "zebra_end_trans failed"); + res = ZEBRA_FAIL; + } return res; } @@ -1466,7 +1472,11 @@ ZEBRA_RES zebra_drop_database(ZebraHandle zh, const char *db) "drop database only supported for isam:b"); ret = ZEBRA_FAIL; } - zebra_end_trans (zh); + if (zebra_end_trans (zh) != ZEBRA_OK) + { + yaz_log(YLOG_WARN, "zebra_end_trans failed"); + ret = ZEBRA_FAIL; + } return ret; } @@ -1485,7 +1495,10 @@ ZEBRA_RES zebra_create_database (ZebraHandle zh, const char *db) if (zebraExplain_newDatabase (zh->reg->zei, db, 0 /* explainDatabase */)) { - zebra_end_trans (zh); + if (zebra_end_trans (zh) != ZEBRA_OK) + { + yaz_log(YLOG_WARN, "zebra_end_trans failed"); + } zebra_setError(zh, YAZ_BIB1_ES_IMMEDIATE_EXECUTION_FAILED, db); return ZEBRA_FAIL; } @@ -2197,7 +2210,11 @@ ZEBRA_RES zebra_insert_record (ZebraHandle zh, match, fname, 0, 0); /* allow_update */ - zebra_end_trans(zh); + if (zebra_end_trans(zh) != ZEBRA_OK) + { + yaz_log(YLOG_WARN, "zebra_end_trans failed"); + res = ZEBRA_FAIL; + } return res; } @@ -2228,7 +2245,11 @@ ZEBRA_RES zebra_update_record (ZebraHandle zh, match, fname, force_update, 1); /* allow_update */ - zebra_end_trans(zh); + if (zebra_end_trans(zh) != ZEBRA_OK) + { + yaz_log(YLOG_WARN, "zebra_end_trans failed"); + res = ZEBRA_FAIL; + } return res; } @@ -2257,7 +2278,11 @@ ZEBRA_RES zebra_delete_record (ZebraHandle zh, match,fname, force_update, 1); /* allow_update */ - zebra_end_trans(zh); + if (zebra_end_trans(zh) != ZEBRA_OK) + { + yaz_log(YLOG_WARN, "zebra_end_trans failed"); + res = ZEBRA_FAIL; + } return res; }