Using zebra_rec_keys for per-record key store
[idzebra-moved-to-github.git] / index / zserver.c
index b499c21..f1c92c4 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: zserver.c,v 1.134 2005-05-24 11:35:42 adam Exp $
+/* $Id: zserver.c,v 1.140 2005-09-13 11:51:06 adam Exp $
    Copyright (C) 1995-2005
    Index Data ApS
 
@@ -28,7 +28,8 @@ Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
 #include <io.h>
 #include <process.h>
 #include <sys/locking.h>
-#else
+#endif
+#if HAVE_UNISTD_H
 #include <unistd.h>
 #endif
 
@@ -75,7 +76,7 @@ bend_initresult *bend_init (bend_initrequest *q)
     yaz_log (YLOG_DEBUG, "bend_init");
 
     sob = statserv_getcontrol ();
-    if (!(zh = zebra_open (sob->handle)))
+    if (!(zh = zebra_open (sob->handle, 0)))
     {
        yaz_log (YLOG_WARN, "Failed to read config `%s'", sob->configname);
        r->errcode = YAZ_BIB1_PERMANENT_SYSTEM_ERROR;
@@ -213,7 +214,8 @@ static void search_terms(ZebraHandle zh, bend_search_rr *r)
         size_t len = sizeof(outbuf);
 
        zebra_result_set_term_info(zh, r->setname, i,
-                                  &count, &approx, outbuf, &len);
+                                  &count, &approx, outbuf, &len,
+                                  0 /* term_ref_id */ );
 
         sr->elements[i] = odr_malloc (r->stream, sizeof(**sr->elements));
         sr->elements[i]->subqueryId = 0;
@@ -309,7 +311,7 @@ int bend_fetch (void *handle, bend_fetch_rr *r)
     
     r->last_in_set = 0;
     res = zebra_records_retrieve (zh, r->stream, r->setname, r->comp,
-                           r->request_format, 1, &retrievalRecord);
+                                 r->request_format, 1, &retrievalRecord);
     if (res != ZEBRA_OK)
     {
        /* non-surrogate diagnostic */
@@ -357,7 +359,8 @@ static int bend_scan (void *handle, bend_scan_rr *r)
     res = zebra_scan(zh, r->stream, r->term,
                     r->attributeset,
                     &r->term_position,
-                    &r->num_entries, &entries, &is_partial);
+                    &r->num_entries, &entries, &is_partial, 
+                    0 /* setname */);
     if (res == ZEBRA_OK)
     {
        if (is_partial)
@@ -647,9 +650,10 @@ int bend_esrequest (void *handle, bend_esrequest_rr *rr)
                        {
                             int r = zebra_admin_exchange_record (
                                 zh,
-                                rec->u.octet_aligned->buf,
+                                (const char *) rec->u.octet_aligned->buf,
                                 rec->u.octet_aligned->len,
-                                opaque_recid->buf, opaque_recid->len,
+                                (const char *) opaque_recid->buf,
+                               opaque_recid->len,
                                 action);
                             if (r)
                             {
@@ -670,7 +674,7 @@ int bend_esrequest (void *handle, bend_esrequest_rr *rr)
                                    &sysno,
                                    0, /* match */
                                    0, /* fname */
-                                   rec->u.octet_aligned->buf,
+                                   (const char *) rec->u.octet_aligned->buf,
                                    rec->u.octet_aligned->len,
                                    0);
                                if (r == ZEBRA_FAIL)
@@ -688,7 +692,7 @@ int bend_esrequest (void *handle, bend_esrequest_rr *rr)
                                    &sysno,
                                    0, /* match */
                                    0, /* fname */
-                                   rec->u.octet_aligned->buf,
+                                   (const char *) rec->u.octet_aligned->buf,
                                    rec->u.octet_aligned->len,
                                    1);
                                if (r == ZEBRA_FAIL)
@@ -705,7 +709,7 @@ int bend_esrequest (void *handle, bend_esrequest_rr *rr)
                                    &sysno,
                                    0, /* match */
                                    0, /* fname */
-                                   rec->u.octet_aligned->buf,
+                                   (const char *) rec->u.octet_aligned->buf,
                                    rec->u.octet_aligned->len,
                                    0);
                                if (r == ZEBRA_FAIL)