X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=index%2Fmain.c;h=1540f5b96e4020ec6cf0f9f545004590416ef632;hb=1e739c60397fc5274dba921252b63df2664bdb49;hp=1b91efc62822d85c82178b0c308c1f89bad5db19;hpb=2b1851bd5565e3d21f9cf9a37661a584c063b75f;p=idzebra-moved-to-github.git diff --git a/index/main.c b/index/main.c index 1b91efc..1540f5b 100644 --- a/index/main.c +++ b/index/main.c @@ -2,16 +2,20 @@ * Copyright (C) 1994-2002, Index Data * All rights reserved. * - * $Id: main.c,v 1.83 2002-04-04 14:14:13 adam Exp $ + * $Id: main.c,v 1.90 2002-06-19 11:37:11 adam Exp $ */ #include #include #include +#include #ifdef WIN32 #include #else #include #endif +#if HAVE_SYS_TIMES_H +#include +#endif #include #include "zebraapi.h" @@ -27,6 +31,11 @@ int main (int argc, char **argv) int nsections = 0; int disableCommit = 0; size_t mem_max = 0; +#if HAVE_SYS_TIMES_H + struct tms tms1, tms2; + struct timeval start_time, end_time; + long usec; +#endif #ifndef WIN32 char nbuf[100]; #endif @@ -41,6 +50,10 @@ int main (int argc, char **argv) sprintf(nbuf, "%.40s(%d)", *argv, getpid()); yaz_log_init_prefix (nbuf); #endif +#if HAVE_SYS_TIMES_H + times(&tms1); + gettimeofday(&start_time, 0); +#endif rGroupDef.groupName = NULL; rGroupDef.databaseName = NULL; @@ -89,20 +102,29 @@ int main (int argc, char **argv) if (!zs) { #if ZMBOL - logf (LOG_LOG, "zmbol version %s %s", + logf (LOG_LOG, "Z'mbol version %s %s", ZEBRAVER, ZEBRADATE); #else - logf (LOG_LOG, "zebra version %s %s", + logf (LOG_LOG, "Zebra version %s %s", ZEBRAVER, ZEBRADATE); #endif zs = zebra_start (configName ? configName : "zebra.cfg"); - + if (!zs) + exit (1); zh = zebra_open (zs); + if (disableCommit) + zebra_shadow_enable (zh, 0); } if (rGroupDef.databaseName) - zebra_select_database (zh, rGroupDef.databaseName); + { + if (zebra_select_database (zh, rGroupDef.databaseName)) + exit (1); + } else - zebra_select_database (zh, "Default"); + { + if (zebra_select_database (zh, "Default")) + exit (1); + } if (!strcmp (arg, "update")) cmd = 'u'; @@ -128,7 +150,7 @@ int main (int argc, char **argv) } else if (!strcmp (arg, "stat") || !strcmp (arg, "status")) { - assert (!"todo"); + zebra_register_statistics (zh); } else if (!strcmp (arg, "compact")) { @@ -212,6 +234,16 @@ int main (int argc, char **argv) } zebra_close (zh); zebra_stop (zs); +#if HAVE_SYS_TIMES_H + gettimeofday(&end_time, 0); + usec = (end_time.tv_sec - start_time.tv_sec) * 1000000L + + end_time.tv_usec - start_time.tv_usec; + times(&tms2); + yaz_log (LOG_LOG, "zebraidx times: %5.2f %5.2f %5.2f", + (double) usec / 1000000.0, + (double) (tms2.tms_utime - tms1.tms_utime)/100, + (double) (tms2.tms_stime - tms1.tms_stime)/100); +#endif exit (0); return 0; }