From 4ac7ffc88f998c27874b19511a3294e0addfc4ec Mon Sep 17 00:00:00 2001 From: Adam Dickmeiss Date: Wed, 27 Mar 2002 07:53:13 +0000 Subject: [PATCH] seqno/statevalue in register rather than session --- index/zebraapi.c | 21 +++++++++++---------- index/zserver.h | 6 +++--- 2 files changed, 14 insertions(+), 13 deletions(-) diff --git a/index/zebraapi.c b/index/zebraapi.c index b57ed8a..6e2e3a8 100644 --- a/index/zebraapi.c +++ b/index/zebraapi.c @@ -2,7 +2,7 @@ * Copyright (C) 1995-2002, Index Data * All rights reserved. * - * $Id: zebraapi.c,v 1.49 2002-03-21 10:25:42 adam Exp $ + * $Id: zebraapi.c,v 1.50 2002-03-27 07:53:13 adam Exp $ */ #include @@ -65,8 +65,6 @@ ZebraHandle zebra_open (ZebraService zs) zh->errString = 0; zh->trans_no = 0; - zh->seqno = 0; - zh->last_val = 0; zh->lock_normal = zebra_lock_create (res_get(zs->res, "lockDir"), "norm.LCK", 0); @@ -104,6 +102,9 @@ ZebraService zebra_start (const char *configName) zh->registerState = -1; zh->registerChange = 0; + zh->seqno = 0; + zh->last_val = 0; + if (!(zh->res = res_open (zh->configName))) { logf (LOG_WARN, "Failed to read resources `%s'", zh->configName); @@ -742,14 +743,14 @@ static int zebra_begin_read (ZebraHandle zh) zebra_get_state (zh, &val, &seqno); if (val == 'd') val = 'o'; - if (seqno != zh->seqno) + if (seqno != zh->service->seqno) { - yaz_log (LOG_LOG, "reopen seqno cur/old %d/%d", seqno, zh->seqno); + yaz_log (LOG_LOG, "reopen seqno cur/old %d/%d", seqno, zh->service->seqno); dirty = 1; } - else if (zh->last_val != val) + else if (zh->service->last_val != val) { - yaz_log (LOG_LOG, "reopen last cur/old %d/%d", val, zh->last_val); + yaz_log (LOG_LOG, "reopen last cur/old %d/%d", val, zh->service->last_val); dirty = 1; } if (!dirty) @@ -760,8 +761,8 @@ static int zebra_begin_read (ZebraHandle zh) else zebra_lock_r (zh->lock_normal); - zh->last_val = val; - zh->seqno = seqno; + zh->service->last_val = val; + zh->service->seqno = seqno; zebra_register_deactivate (zh); @@ -848,7 +849,7 @@ void zebra_begin_trans (ZebraHandle zh) zebra_set_state (zh, 'd', seqno); zebra_register_activate (zh, 1, rval ? 1 : 0); - zh->seqno = seqno; + zh->service->seqno = seqno; } void zebra_end_trans (ZebraHandle zh) diff --git a/index/zserver.h b/index/zserver.h index ba264e8..841cb37 100644 --- a/index/zserver.h +++ b/index/zserver.h @@ -3,7 +3,7 @@ * All rights reserved. * Sebastian Hammer, Adam Dickmeiss * - * $Id: zserver.h,v 1.53 2002-03-20 20:24:30 adam Exp $ + * $Id: zserver.h,v 1.54 2002-03-27 07:53:13 adam Exp $ */ #if HAVE_SYS_TIMES_H @@ -65,6 +65,8 @@ struct zebra_service { RecTypes recTypes; Passwd_db passwd_db; Zebra_mutex_cond session_lock; + int seqno; + int last_val; int stop_flag; int active; /* 0=shutdown, 1=enabled and inactive, 2=activated */ }; @@ -104,8 +106,6 @@ struct zebra_session { ZebraLockHandle lock_shadow; int trans_no; - int seqno; - int last_val; int destroyed; ZebraSet sets; int errCode; -- 1.7.10.4