Improved fatal error handling (such as missing EXPLAIN schema).
+Added support for multiple records in one file for filter grs.sgml.
+
Changed record index structure. New layout is incompatible with
previous releases. Added setting "recordcompression" to control
compression of records. Possible values are "none" (no
fi
+for ac_hdr in sys/times.h
+do
+ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
+echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
+echo "configure:1251: checking for $ac_hdr" >&5
+if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+ echo $ac_n "(cached) $ac_c" 1>&6
+else
+ cat > conftest.$ac_ext <<EOF
+#line 1256 "configure"
+#include "confdefs.h"
+#include <$ac_hdr>
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:1261: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+if test -z "$ac_err"; then
+ rm -rf conftest*
+ eval "ac_cv_header_$ac_safe=yes"
+else
+ echo "$ac_err" >&5
+ echo "configure: failed program was:" >&5
+ cat conftest.$ac_ext >&5
+ rm -rf conftest*
+ eval "ac_cv_header_$ac_safe=no"
+fi
+rm -f conftest*
+fi
+if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+ echo "$ac_t""yes" 1>&6
+ ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
+ cat >> confdefs.h <<EOF
+#define $ac_tr_hdr 1
+EOF
+
+else
+ echo "$ac_t""no" 1>&6
+fi
+done
+
echo $ac_n "checking for main in -lwrap""... $ac_c" 1>&6
-echo "configure:1248: checking for main in -lwrap" >&5
+echo "configure:1288: checking for main in -lwrap" >&5
ac_lib_var=`echo wrap'_'main | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
ac_save_LIBS="$LIBS"
LIBS="-lwrap $LIBS"
cat > conftest.$ac_ext <<EOF
-#line 1256 "configure"
+#line 1296 "configure"
#include "confdefs.h"
int main() {
main()
; return 0; }
EOF
-if { (eval echo configure:1263: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1303: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
fi
echo $ac_n "checking for bzCompressInit in -lbz2""... $ac_c" 1>&6
-echo "configure:1284: checking for bzCompressInit in -lbz2" >&5
+echo "configure:1324: checking for bzCompressInit in -lbz2" >&5
ac_lib_var=`echo bz2'_'bzCompressInit | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
ac_save_LIBS="$LIBS"
LIBS="-lbz2 $LIBS"
cat > conftest.$ac_ext <<EOF
-#line 1292 "configure"
+#line 1332 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
bzCompressInit()
; return 0; }
EOF
-if { (eval echo configure:1303: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1343: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:1335: checking for $ac_hdr" >&5
+echo "configure:1375: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 1340 "configure"
+#line 1380 "configure"
#include "confdefs.h"
#include <$ac_hdr>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1345: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1385: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
fi
echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-echo "configure:1373: checking for ANSI C header files" >&5
+echo "configure:1413: checking for ANSI C header files" >&5
if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
-#line 1378 "configure"
+#line 1418 "configure"
#include "confdefs.h"
#include <stdlib.h>
#include <stdarg.h>
#include <float.h>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1386: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1426: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
if test $ac_cv_header_stdc = yes; then
# SunOS 4.x string.h does not declare mem*, contrary to ANSI.
cat > conftest.$ac_ext <<EOF
-#line 1403 "configure"
+#line 1443 "configure"
#include "confdefs.h"
#include <string.h>
EOF
if test $ac_cv_header_stdc = yes; then
# ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
cat > conftest.$ac_ext <<EOF
-#line 1421 "configure"
+#line 1461 "configure"
#include "confdefs.h"
#include <stdlib.h>
EOF
:
else
cat > conftest.$ac_ext <<EOF
-#line 1442 "configure"
+#line 1482 "configure"
#include "confdefs.h"
#include <ctype.h>
#define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
exit (0); }
EOF
-if { (eval echo configure:1453: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:1493: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
:
else
dnl Zebra, Index Data Aps, 1994-1999
-dnl $Id: configure.in,v 1.9 1999-06-25 13:48:02 adam Exp $
+dnl $Id: configure.in,v 1.10 1999-07-14 10:59:26 adam Exp $
dnl See the file LICENSE.2 for details.
dnl
AC_INIT(include/zebraver.h)
fi
AC_CHECK_FUNC(gethostbyname, , AC_CHECK_LIB(nsl, main, [LIBS="$LIBS -lnsl"]))
dnl
+dnl ------ times
+AC_CHECK_HEADERS(sys/times.h)
+dnl
dnl ------ TCP wrapper (for Linux)
AC_CHECK_LIB(wrap, main, [LIBS="$LIBS -lwrap"])
dnl
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: isamc.h,v $
- * Revision 1.8 1999-06-30 09:08:23 adam
+ * Revision 1.9 1999-07-14 10:59:26 adam
+ * Changed functions isc_getmethod, isams_getmethod.
+ * Improved fatal error handling (such as missing EXPLAIN schema).
+ *
+ * Revision 1.8 1999/06/30 09:08:23 adam
* Added coder to reset.
*
* Revision 1.7 1998/03/13 15:30:50 adam
void *clientData;
} *ISAMC_I;
-ISAMC_M isc_getmethod (void);
+void isc_getmethod (ISAMC_M m);
ISAMC isc_open (BFiles bfs, const char *name, int writeflag, ISAMC_M method);
int isc_close (ISAMC is);
* See the file LICENSE for details.
* Sebastian Hammer, Adam Dickmeiss
*
- * $Id: isams.h,v 1.1 1999-05-12 13:08:06 adam Exp $
+ * $Id: isams.h,v 1.2 1999-07-14 10:59:26 adam Exp $
*/
#ifndef ISAMS_H
#define ISAMS_H
void *clientData;
} *ISAMS_I;
-ISAMS_M isams_getmethod (void);
+void isams_getmethod (ISAMS_M me);
ISAMS isams_open (BFiles bfs, const char *name, int writeflag,
ISAMS_M method);
void inv_prstat (BFiles bfs);
void inv_compact (BFiles bfs);
void key_input (BFiles bfs, int nkeys, int cache);
-ISAMC_M key_isamc_m (Res res);
-ISAMS_M key_isams_m (Res res);
+ISAMC_M key_isamc_m (Res res, ISAMC_M me);
+ISAMS_M key_isams_m (Res res, ISAMS_M me);
ISAMH_M key_isamh_m (Res res);
int merge_sort (char **buf, int from, int to);
int key_SU_code (int ch, char *out);
/*
* $Log: index.h,v $
- * Revision 1.64 1999-06-30 15:07:23 heikki
+ * Revision 1.65 1999-07-14 10:59:26 adam
+ * Changed functions isc_getmethod, isams_getmethod.
+ * Improved fatal error handling (such as missing EXPLAIN schema).
+ *
+ * Revision 1.64 1999/06/30 15:07:23 heikki
* Adding isamh stuff
*
* Revision 1.63 1999/05/26 07:49:13 adam
}
else if (res_get_match (common_resource, "isam", "s", NULL))
{
- isams = isams_open (bfs, FNAME_ISAMS, 0, key_isams_m(common_resource));
+ struct ISAMS_M_s isams_m;
+ isams = isams_open (bfs, FNAME_ISAMS, 0,
+ key_isams_m(common_resource, &isams_m));
if (!isams)
{
logf (LOG_FATAL, "isams_open fail");
}
else
{
- isamc = isc_open (bfs, FNAME_ISAMC, 0, key_isamc_m (common_resource));
+ struct ISAMC_M_s isamc_m;
+ isamc = isc_open (bfs, FNAME_ISAMC, 0,
+ key_isamc_m (common_resource, &isamc_m));
if (!isamc)
{
logf (LOG_FATAL, "isc_open fail");
/*
*
* $Log: invstat.c,v $
- * Revision 1.13 1999-07-08 14:23:27 heikki
+ * Revision 1.14 1999-07-14 10:59:26 adam
+ * Changed functions isc_getmethod, isams_getmethod.
+ * Improved fatal error handling (such as missing EXPLAIN schema).
+ *
+ * Revision 1.13 1999/07/08 14:23:27 heikki
* Fixed a bug in isamh_pp_read and cleaned up a bit
*
* Revision 1.12 1999/07/06 12:28:04 adam
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: kcompare.c,v $
- * Revision 1.32 1999-07-13 13:21:15 heikki
+ * Revision 1.33 1999-07-14 10:59:26 adam
+ * Changed functions isc_getmethod, isams_getmethod.
+ * Improved fatal error handling (such as missing EXPLAIN schema).
+ *
+ * Revision 1.32 1999/07/13 13:21:15 heikki
* Managing negative deltas
*
* Revision 1.31 1999/07/06 09:37:04 heikki
}
}
-ISAMC_M key_isamc_m (Res res)
+ISAMC_M key_isamc_m (Res res, ISAMC_M me)
{
- static ISAMC_M me = NULL;
-
- if (me)
- return me;
-
- me = isc_getmethod ();
+ isc_getmethod (me);
me->compare_item = key_compare;
return me;
}
-ISAMS_M key_isams_m (Res res)
+ISAMS_M key_isams_m (Res res, ISAMS_M me)
{
- static ISAMS_M me = NULL;
-
- if (me)
- return me;
-
- me = isams_getmethod ();
+ isams_getmethod (me);
me->compare_item = key_compare;
}
if (res_get_match (common_resource, "isam", "s", NULL))
{
+ struct ISAMS_M_s isams_m;
isams = isams_open (bfs, FNAME_ISAMS, 1,
- key_isams_m (common_resource));
+ key_isams_m (common_resource, &isams_m));
if (!isams)
{
logf (LOG_FATAL, "isams_open fail");
}
else
{
+ struct ISAMC_M_s isamc_m;
isamc = isc_open (bfs, FNAME_ISAMC, 1,
- key_isamc_m (common_resource));
+ key_isamc_m (common_resource, &isamc_m));
if (!isamc)
{
logf (LOG_FATAL, "isc_open fail");
/*
* $Log: kinput.c,v $
- * Revision 1.35 1999-06-30 15:07:23 heikki
+ * Revision 1.36 1999-07-14 10:59:26 adam
+ * Changed functions isc_getmethod, isams_getmethod.
+ * Improved fatal error handling (such as missing EXPLAIN schema).
+ *
+ * Revision 1.35 1999/06/30 15:07:23 heikki
* Adding isamh stuff
*
* Revision 1.34 1999/05/26 07:49:13 adam
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: main.c,v $
- * Revision 1.67 1999-07-06 12:28:04 adam
+ * Revision 1.68 1999-07-14 10:59:26 adam
+ * Changed functions isc_getmethod, isams_getmethod.
+ * Improved fatal error handling (such as missing EXPLAIN schema).
+ *
+ * Revision 1.67 1999/07/06 12:28:04 adam
* Updated record index structure. Format includes version ID. Compression
* algorithm ID is stored for each record block.
*
int cmd = 0;
char *arg;
char *configName = NULL;
- int nsections;
+ int nsections = 0;
int disableCommit = 0;
size_t mem_max = 0;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: zebraapi.c,v $
- * Revision 1.20 1999-07-06 12:28:04 adam
+ * Revision 1.21 1999-07-14 10:59:26 adam
+ * Changed functions isc_getmethod, isams_getmethod.
+ * Improved fatal error handling (such as missing EXPLAIN schema).
+ *
+ * Revision 1.20 1999/07/06 12:28:04 adam
* Updated record index structure. Format includes version ID. Compression
* algorithm ID is stored for each record block.
*
chdir (dir);
#endif
}
+
+static void zebra_register_unlock (ZebraHandle zh);
+
static int zebra_register_lock (ZebraHandle zh)
{
time_t lastChange;
int state;
+ zh->errCode = 0;
+ zh->errString = 0;
+ zh->hits = 0;
+
zebra_chdir (zh);
state = zebra_server_lock_get_state(zh, &lastChange);
state = 0;
}
zebra_server_lock (zh, state);
-#if USE_TIMES
+#if HAVE_SYS_TIMES_H
times (&zh->tms1);
#endif
if (zh->registerState == state)
if (zh->records)
{
zebraExplain_close (zh->zei, 0, 0);
- dict_close (zh->dict);
- sortIdx_close (zh->sortIdx);
+ if (zh->dict)
+ dict_close (zh->dict);
+ if (zh->sortIdx)
+ sortIdx_close (zh->sortIdx);
if (zh->isam)
is_close (zh->isam);
if (zh->isamc)
isc_close (zh->isamc);
+ if (zh->isams)
+ isams_close (zh->isams);
rec_close (&zh->records);
}
bf_cache (zh->bfs, state ? res_get (zh->res, "shadow") : NULL);
zh->registerState = state;
- zh->records = rec_open (zh->bfs, 0, 0);
- if (!(zh->dict = dict_open (zh->bfs, FNAME_DICT, 40, 0, 0)))
- {
- logf (LOG_WARN, "dict_open");
- return -1;
- }
- if (!(zh->sortIdx = sortIdx_open (zh->bfs, 0)))
- {
- logf (LOG_WARN, "sortIdx_open");
- return -1;
- }
+
zh->isam = NULL;
zh->isamc = NULL;
zh->isams = NULL;
- if (res_get_match (zh->res, "isam", "i", NULL))
+ zh->dict = NULL;
+ zh->sortIdx = NULL;
+ zh->zei = NULL;
+
+ if (!(zh->records = rec_open (zh->bfs, 0, 0)))
{
- if (!(zh->isam = is_open (zh->bfs, FNAME_ISAM, key_compare, 0,
- sizeof (struct it_key), zh->res)))
- {
- logf (LOG_WARN, "is_open");
- return -1;
- }
+ logf (LOG_WARN, "rec_open");
+ zh->errCode = 2;
}
- else if (res_get_match (zh->res, "isam", "s", NULL))
+ else
{
- if (!(zh->isams = isams_open (zh->bfs, FNAME_ISAMS, 0,
- key_isams_m(zh->res))))
+ if (!(zh->dict = dict_open (zh->bfs, FNAME_DICT, 40, 0, 0)))
{
- logf (LOG_WARN, "isams_open");
- return -1;
+ logf (LOG_WARN, "dict_open");
+ zh->errCode = 2;
}
- }
- else
- {
- if (!(zh->isamc = isc_open (zh->bfs, FNAME_ISAMC,
- 0, key_isamc_m(zh->res))))
+ if (!(zh->sortIdx = sortIdx_open (zh->bfs, 0)))
+ {
+ logf (LOG_WARN, "sortIdx_open");
+ zh->errCode = 2;
+ }
+ if (res_get_match (zh->res, "isam", "i", NULL))
+ {
+ if (!(zh->isam = is_open (zh->bfs, FNAME_ISAM, key_compare, 0,
+ sizeof (struct it_key), zh->res)))
+ {
+ logf (LOG_WARN, "is_open");
+ zh->errCode = 2;
+ }
+ }
+ else if (res_get_match (zh->res, "isam", "s", NULL))
{
- logf (LOG_WARN, "isc_open");
- return -1;
+ struct ISAMS_M_s isams_m;
+ if (!(zh->isams = isams_open (zh->bfs, FNAME_ISAMS, 0,
+ key_isams_m(zh->res, &isams_m))))
+ {
+ logf (LOG_WARN, "isams_open");
+ zh->errCode = 2;
+ }
+ }
+ else
+ {
+ struct ISAMC_M_s isamc_m;
+ if (!(zh->isamc = isc_open (zh->bfs, FNAME_ISAMC,
+ 0, key_isamc_m(zh->res, &isamc_m))))
+ {
+ logf (LOG_WARN, "isc_open");
+ zh->errCode = 2;
+ }
+ }
+ zh->zei = zebraExplain_open (zh->records, zh->dh, zh->res, 0, 0, 0);
+ if (!zh->zei)
+ {
+ logf (LOG_WARN, "Cannot obtain EXPLAIN information");
+ zh->errCode = 2;
}
}
- zh->zei = zebraExplain_open (zh->records, zh->dh, zh->res, 0, 0, 0);
-
+ if (zh->errCode)
+ {
+ zebra_register_unlock (zh);
+ zh->registerState = -1;
+ return -1;
+ }
return 0;
}
{
static int waitSec = -1;
-#if USE_TIMES
+#if HAVE_SYS_TIMES_H
times (&zh->tms2);
logf (LOG_LOG, "user/system: %ld/%ld",
(long) (zh->tms2.tms_utime - zh->tms1.tms_utime),
ZebraHandle zebra_open (const char *configName)
{
- ZebraHandle zh = (ZebraHandle) xmalloc (sizeof(*zh));
+ ZebraHandle zh;
+ zh = (ZebraHandle) xmalloc (sizeof(*zh));
if (!(zh->res = res_open (configName)))
{
logf (LOG_WARN, "Failed to read resources `%s'", configName);
passwd_db_close (zh->passwd_db);
res_close (zh->res);
xfree (zh);
+ xmalloc_trav("x");
}
struct map_baseinfo {
Z_RPNQuery *query, int num_bases, char **basenames,
const char *setname)
{
- zebra_register_lock (zh);
- zh->errCode = 0;
- zh->errString = NULL;
- zh->hits = 0;
-
+ if (zebra_register_lock (zh))
+ return;
map_basenames (zh, stream, &num_bases, &basenames);
resultSetAddRPN (zh, stream, decode, query, num_bases, basenames, setname);
ZebraPosSet poset;
int i, *pos_array;
- zh->errCode = 0;
- zh->errString = NULL;
+ if (zebra_register_lock (zh))
+ return;
pos_array = (int *) xmalloc (num_recs * sizeof(*pos_array));
for (i = 0; i<num_recs; i++)
pos_array[i] = recs[i].position;
-
- zebra_register_lock (zh);
-
poset = zebraPosSetCreate (zh, setname, num_recs, pos_array);
if (!poset)
{
int *position, int *num_entries, ZebraScanEntry **entries,
int *is_partial)
{
- zh->errCode = 0;
- zh->errString = NULL;
- zebra_register_lock (zh);
+ if (zebra_register_lock (zh))
+ {
+ *entries = 0;
+ *num_entries = 0;
+ return;
+ }
map_basenames (zh, stream, &num_bases, &basenames);
rpn_scan (zh, stream, zapt, attributeset,
num_bases, basenames, position,
const char *output_setname, Z_SortKeySpecList *sort_sequence,
int *sort_status)
{
- zh->errCode = 0;
- zh->errString = NULL;
- zebra_register_lock (zh);
+ if (zebra_register_lock (zh))
+ return;
resultSetSort (zh, stream->mem, num_input_setnames, input_setnames,
output_setname, sort_sequence, sort_status);
zebra_register_unlock (zh);
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: zserver.c,v $
- * Revision 1.70 1999-06-10 12:14:56 adam
+ * Revision 1.71 1999-07-14 10:59:26 adam
+ * Changed functions isc_getmethod, isams_getmethod.
+ * Improved fatal error handling (such as missing EXPLAIN schema).
+ *
+ * Revision 1.70 1999/06/10 12:14:56 adam
* Fixed to use bend_start instead of pre_init.
*
* Revision 1.69 1999/06/10 09:20:03 adam
#endif
#include <data1.h>
-#include <dmalloc.h>
#include "zserver.h"
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: zserver.h,v $
- * Revision 1.42 1999-05-26 07:49:13 adam
+ * Revision 1.43 1999-07-14 10:59:27 adam
+ * Changed functions isc_getmethod, isams_getmethod.
+ * Improved fatal error handling (such as missing EXPLAIN schema).
+ *
+ * Revision 1.42 1999/05/26 07:49:13 adam
* C++ compilation.
*
* Revision 1.41 1999/05/12 13:08:06 adam
*
*/
-
-#ifndef USE_TIMES
-#ifdef __linux__
-#define USE_TIMES 1
-#else
-#define USE_TIMES 0
-#endif
-#endif
-
-#if USE_TIMES
+#if HAVE_SYS_TIMES_H
#include <sys/times.h>
#endif
ZebraLockHandle server_lock_cmt;
ZebraLockHandle server_lock_org;
char *server_path_prefix;
-#if USE_TIMES
+#if HAVE_SYS_TIMES_H
struct tms tms1;
struct tms tms2;
#endif
Passwd_db passwd_db;
};
-
struct rank_control {
char *name;
void *(*create)(ZebraHandle zh);
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: isamc.c,v $
- * Revision 1.18 1999-06-30 09:08:23 adam
+ * Revision 1.19 1999-07-14 10:59:27 adam
+ * Changed functions isc_getmethod, isams_getmethod.
+ * Improved fatal error handling (such as missing EXPLAIN schema).
+ *
+ * Revision 1.18 1999/06/30 09:08:23 adam
* Added coder to reset.
*
* Revision 1.17 1999/05/26 07:49:14 adam
#define SMALL_TEST 0
-ISAMC_M isc_getmethod (void)
+void isc_getmethod (ISAMC_M m)
{
+
static struct ISAMC_filecat_s def_cat[] = {
#if SMALL_TEST
{ 32, 28, 0, 3 },
{ 32768, 32000, 31000, 0 },
#endif
};
- ISAMC_M m = (ISAMC_M) xmalloc (sizeof(*m));
m->filecat = def_cat;
m->code_start = NULL;
m->debug = 1;
m->max_blocks_mem = 10;
-
- return m;
}
-
ISAMC isc_open (BFiles bfs, const char *name, int writeflag, ISAMC_M method)
{
ISAMC is;
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: isams.c,v $
- * Revision 1.4 1999-05-26 07:49:14 adam
+ * Revision 1.5 1999-07-14 10:59:27 adam
+ * Changed functions isc_getmethod, isams_getmethod.
+ * Improved fatal error handling (such as missing EXPLAIN schema).
+ *
+ * Revision 1.4 1999/05/26 07:49:14 adam
* C++ compilation.
*
* Revision 1.3 1999/05/20 12:57:18 adam
int numRead;
};
-ISAMS_M isams_getmethod (void)
+void isams_getmethod (ISAMS_M m)
{
- ISAMS_M m = (ISAMS_M) xmalloc (sizeof(*m));
-
m->code_start = NULL;
m->code_item = NULL;
m->code_stop = NULL;
m->debug = 1;
m->block_size = 128;
-
- return m;
}
ISAMS isams_open (BFiles bfs, const char *name, int writeflag,