X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=index%2Fzserver.c;h=002989f037480c4a4af9edc16d215f0963705ce2;hb=3069523c17210f316ece638052eee94fce1db9e1;hp=bd89d6eaf400c01a809bc037c36f6523158fc8d4;hpb=3d01abbe1238c82d62e4c01eb7cac760d3d53377;p=idzebra-moved-to-github.git diff --git a/index/zserver.c b/index/zserver.c index bd89d6e..002989f 100644 --- a/index/zserver.c +++ b/index/zserver.c @@ -1,10 +1,20 @@ /* - * Copyright (C) 1995-1997, Index Data I/S + * Copyright (C) 1995-1998, Index Data I/S * All rights reserved. * Sebastian Hammer, Adam Dickmeiss * * $Log: zserver.c,v $ - * Revision 1.51 1997-10-27 14:33:06 adam + * Revision 1.54 1998-01-29 13:39:13 adam + * Compress ISAM is default. + * + * Revision 1.53 1998/01/12 15:04:09 adam + * The test option (-s) only uses read-lock (and not write lock). + * + * Revision 1.52 1997/11/18 10:05:08 adam + * Changed character map facility so that admin can specify character + * mapping files for each register type, w, p, etc. + * + * Revision 1.51 1997/10/27 14:33:06 adam * Moved towards generic character mapping depending on "structure" * field in abstract syntax file. Fixed a few memory leaks. Fixed * bug with negative integers when doing searches with relational @@ -251,7 +261,7 @@ static int register_lock (ZServerInfo *zi) return -1; zi->isam = NULL; zi->isamc = NULL; - if (res_get_match (zi->res, "isam", "c", NULL)) + if (!res_get_match (zi->res, "isam", "i", NULL)) { if (!(zi->isamc = isc_open (zi->bfs, FNAME_ISAMC, 0, key_isamc_m(zi->res)))) @@ -312,8 +322,9 @@ bend_initresult *bend_init (bend_initrequest *q) logf (LOG_LOG, "Reading resources from %s", sob->configname); if (!(zi->res = res_open (sob->configname))) { - logf (LOG_FATAL, "Cannot open resource `%s'", sob->configname); - exit (1); + logf (LOG_FATAL, "Failed to read resources `%s'", sob->configname); + r->errcode = 1; + return r; } zebra_server_lock_init (zi); zi->dh = data1_create (); @@ -327,7 +338,8 @@ bend_initresult *bend_init (bend_initrequest *q) zi->records = NULL; zi->odr = odr_createmem (ODR_ENCODE); zi->registered_sets = NULL; - zi->zebra_maps = zebra_maps_open (res_get(zi->res, "profilePath")); + zi->zebra_maps = zebra_maps_open (res_get(zi->res, "profilePath"), + zi->res); return r; } @@ -437,9 +449,8 @@ static int record_fetch (ZServerInfo *zi, int sysno, int score, ODR stream, if (!(rt = recType_byName (file_type, subType))) { - logf (LOG_FATAL|LOG_ERRNO, "Retrieve: Cannot handle type %s", - file_type); - exit (1); + logf (LOG_WARN, "Retrieve: Cannot handle type %s", file_type); + return 14; } logf (LOG_DEBUG, "retrieve localno=%d score=%d", sysno, score); retrieveCtrl.fh = &fc;