Update from db-2.3.16.
authordrepper <drepper>
Sun, 25 Jan 1998 16:10:24 +0000 (16:10 +0000)
committerdrepper <drepper>
Sun, 25 Jan 1998 16:10:24 +0000 (16:10 +0000)
db2/db/db.c
db2/db/db_auto.c
db2/db/db_conv.c
db2/db/db_dispatch.c
db2/db/db_dup.c
db2/db/db_pr.c
db2/db/db_rec.c

index 50b14eb..8df7634 100644 (file)
@@ -44,7 +44,7 @@
 #include "config.h"
 
 #ifndef lint
-static const char sccsid[] = "@(#)db.c 10.44 (Sleepycat) 10/25/97";
+static const char sccsid[] = "@(#)db.c 10.45 (Sleepycat) 12/4/97";
 #endif /* not lint */
 
 #ifndef NO_SYSTEM_INCLUDES
@@ -110,9 +110,9 @@ db_open(fname, type, flags, mode, dbenv, dbinfo, dbpp)
        DB_ENV *envp, t_dbenv;
        DB_PGINFO pginfo;
        HASHHDR *hashm;
-       off_t io;
        size_t cachesize;
        ssize_t nr;
+       u_int32_t iopsize;
        int fd, ftype, need_fileid, restore, ret, retry_cnt, swapped;
        char *real_name, mbuf[512];
 
@@ -269,17 +269,17 @@ open_retry:       if (LF_ISSET(DB_CREATE)) {
                 * sizes, we limit the default pagesize to 16K.
                 */
                if (dbp->pgsize == 0) {
-                       if ((ret =
-                           __db_ioinfo(real_name, fd, NULL, &io)) != 0) {
+                       if ((ret = __db_ioinfo(real_name,
+                           fd, NULL, NULL, &iopsize)) != 0) {
                                __db_err(dbenv,
                                    "%s: %s", real_name, strerror(ret));
                                goto err;
                        }
-                       if (io < 512)
-                               io = 512;
-                       if (io > 16 * 1024)
-                               io = 16 * 1024;
-                       dbp->pgsize = io;
+                       if (iopsize < 512)
+                               iopsize = 512;
+                       if (iopsize > 16 * 1024)
+                               iopsize = 16 * 1024;
+                       dbp->pgsize = iopsize;
                        F_SET(dbp, DB_AM_PGDEF);
                }
 
index 88bca7b..5d35264 100644 (file)
@@ -20,7 +20,7 @@
  * PUBLIC: int __db_addrem_log
  * PUBLIC:     __P((DB_LOG *, DB_TXN *, DB_LSN *, u_int32_t,
  * PUBLIC:     u_int32_t, u_int32_t, db_pgno_t, u_int32_t,
- * PUBLIC:     size_t, DBT *, DBT *, DB_LSN *));
+ * PUBLIC:     size_t, const DBT *, const DBT *, DB_LSN *));
  */
 int __db_addrem_log(logp, txnid, ret_lsnp, flags,
        opcode, fileid, pgno, indx, nbytes, hdr,
@@ -34,8 +34,8 @@ int __db_addrem_log(logp, txnid, ret_lsnp, flags,
        db_pgno_t pgno;
        u_int32_t indx;
        size_t nbytes;
-       DBT *hdr;
-       DBT *dbt;
+       const DBT *hdr;
+       const DBT *dbt;
        DB_LSN * pagelsn;
 {
        DBT logrec;
@@ -229,7 +229,7 @@ __db_addrem_read(recbuf, argpp)
 /*
  * PUBLIC: int __db_split_log
  * PUBLIC:     __P((DB_LOG *, DB_TXN *, DB_LSN *, u_int32_t,
- * PUBLIC:     u_int32_t, u_int32_t, db_pgno_t, DBT *,
+ * PUBLIC:     u_int32_t, u_int32_t, db_pgno_t, const DBT *,
  * PUBLIC:     DB_LSN *));
  */
 int __db_split_log(logp, txnid, ret_lsnp, flags,
@@ -241,7 +241,7 @@ int __db_split_log(logp, txnid, ret_lsnp, flags,
        u_int32_t opcode;
        u_int32_t fileid;
        db_pgno_t pgno;
-       DBT *pageimage;
+       const DBT *pageimage;
        DB_LSN * pagelsn;
 {
        DBT logrec;
@@ -400,7 +400,7 @@ __db_split_read(recbuf, argpp)
  * PUBLIC: int __db_big_log
  * PUBLIC:     __P((DB_LOG *, DB_TXN *, DB_LSN *, u_int32_t,
  * PUBLIC:     u_int32_t, u_int32_t, db_pgno_t, db_pgno_t,
- * PUBLIC:     db_pgno_t, DBT *, DB_LSN *, DB_LSN *,
+ * PUBLIC:     db_pgno_t, const DBT *, DB_LSN *, DB_LSN *,
  * PUBLIC:     DB_LSN *));
  */
 int __db_big_log(logp, txnid, ret_lsnp, flags,
@@ -415,7 +415,7 @@ int __db_big_log(logp, txnid, ret_lsnp, flags,
        db_pgno_t pgno;
        db_pgno_t prev_pgno;
        db_pgno_t next_pgno;
-       DBT *dbt;
+       const DBT *dbt;
        DB_LSN * pagelsn;
        DB_LSN * prevlsn;
        DB_LSN * nextlsn;
@@ -1079,7 +1079,7 @@ __db_addpage_read(recbuf, argpp)
 /*
  * PUBLIC: int __db_debug_log
  * PUBLIC:     __P((DB_LOG *, DB_TXN *, DB_LSN *, u_int32_t,
- * PUBLIC:     DBT *, u_int32_t, DBT *, DBT *,
+ * PUBLIC:     const DBT *, u_int32_t, const DBT *, const DBT *,
  * PUBLIC:     u_int32_t));
  */
 int __db_debug_log(logp, txnid, ret_lsnp, flags,
@@ -1088,10 +1088,10 @@ int __db_debug_log(logp, txnid, ret_lsnp, flags,
        DB_TXN *txnid;
        DB_LSN *ret_lsnp;
        u_int32_t flags;
-       DBT *op;
+       const DBT *op;
        u_int32_t fileid;
-       DBT *key;
-       DBT *data;
+       const DBT *key;
+       const DBT *data;
        u_int32_t arg_flags;
 {
        DBT logrec;
index 8eccc2e..c075df3 100644 (file)
@@ -44,7 +44,7 @@
 #include "config.h"
 
 #ifndef lint
-static const char sccsid[] = "@(#)db_conv.c    10.7 (Sleepycat) 9/21/97";
+static const char sccsid[] = "@(#)db_conv.c    10.8 (Sleepycat) 1/8/98";
 #endif /* not lint */
 
 #ifndef NO_SYSTEM_INCLUDES
@@ -94,7 +94,7 @@ __db_pgout(pg, pagesize, pp)
  */
 static int
 __db_convert(pg, pp, pagesize, pgin)
-       db_pgno_t pg;                   /* Unused, but left for the future. */
+       db_pgno_t pg;
        void *pp;
        size_t pagesize;
        int pgin;
@@ -107,6 +107,8 @@ __db_convert(pg, pp, pagesize, pgin)
        db_indx_t i, len, tmp;
        u_int8_t *p, *end;
 
+       COMPQUIET(pg, 0);
+
        h = pp;
        if (pgin) {
                M_32_SWAP(h->lsn.file);
index 4f89d2b..736575a 100644 (file)
@@ -43,7 +43,7 @@
 #include "config.h"
 
 #ifndef lint
-static const char sccsid[] = "@(#)db_dispatch.c        10.7 (Sleepycat) 11/23/97";
+static const char sccsid[] = "@(#)db_dispatch.c        10.9 (Sleepycat) 1/17/98";
 #endif /* not lint */
 
 #ifndef NO_SYSTEM_INCLUDES
@@ -61,6 +61,7 @@ static const char sccsid[] = "@(#)db_dispatch.c       10.7 (Sleepycat) 11/23/97";
 #include "db_dispatch.h"
 #include "db_am.h"
 #include "common_ext.h"
+#include "log_auto.h"
 
 /*
  * Data structures to manage the DB dispatch table.  The dispatch table
@@ -113,7 +114,8 @@ __db_dispatch(logp, db, lsnp, redo, info)
                 * seen it, then we call the appropriate recovery routine
                 * in "abort mode".
                 */
-               if (__db_txnlist_find(info, txnid) == DB_NOTFOUND)
+               if (rectype == DB_log_register ||
+                   __db_txnlist_find(info, txnid) == DB_NOTFOUND)
                        return ((dispatch_table[rectype])(logp,
                            db, lsnp, TXN_UNDO, info));
                break;
@@ -122,7 +124,8 @@ __db_dispatch(logp, db, lsnp, redo, info)
                 * In the forward pass, if we haven't seen the transaction,
                 * do nothing, else recovery it.
                 */
-               if (__db_txnlist_find(info, txnid) != DB_NOTFOUND)
+               if (rectype == DB_log_register ||
+                   __db_txnlist_find(info, txnid) != DB_NOTFOUND)
                        return ((dispatch_table[rectype])(logp,
                            db, lsnp, TXN_REDO, info));
                break;
@@ -258,6 +261,8 @@ __db_txnlist_find(listp, txnid)
 /*
  * __db_txnlist_print --
  *     Print out the transaction list.
+ *
+ * PUBLIC: void __db_txnlist_print __P((void *));
  */
 void
 __db_txnlist_print(listp)
index faeefa0..59dfb85 100644 (file)
@@ -8,7 +8,7 @@
 #include "config.h"
 
 #ifndef lint
-static const char sccsid[] = "@(#)db_dup.c     10.10 (Sleepycat) 10/25/97";
+static const char sccsid[] = "@(#)db_dup.c     10.11 (Sleepycat) 1/8/98";
 #endif /* not lint */
 
 #ifndef NO_SYSTEM_INCLUDES
@@ -369,14 +369,13 @@ __db_dsplit(dbp, hp, indxp, size, newfunc)
  * __db_ditem --
  *     Remove an item from a page.
  *
- * PUBLIC:  int __db_ditem __P((DB *, PAGE *, int, u_int32_t));
+ * PUBLIC:  int __db_ditem __P((DB *, PAGE *, u_int32_t, u_int32_t));
  */
 int
 __db_ditem(dbp, pagep, indx, nbytes)
        DB *dbp;
        PAGE *pagep;
-       int indx;
-       u_int32_t nbytes;
+       u_int32_t indx, nbytes;
 {
        DBT ldbt;
        db_indx_t cnt, offset;
index 6b6171a..1135a9e 100644 (file)
@@ -8,7 +8,7 @@
 #include "config.h"
 
 #ifndef lint
-static const char sccsid[] = "@(#)db_pr.c      10.19 (Sleepycat) 11/2/97";
+static const char sccsid[] = "@(#)db_pr.c      10.20 (Sleepycat) 1/8/98";
 #endif /* not lint */
 
 #ifndef NO_SYSTEM_INCLUDES
@@ -81,7 +81,7 @@ __db_dump(dbp, name, all)
 {
        FILE *fp, *save_fp;
 
-       save_fp = NULL;                         /* XXX: Shut the compiler up. */
+       COMPQUIET(save_fp, NULL);
 
        if (set_psize == PSIZE_BOUNDARY)
                __db_psize(dbp->mpf);
index 2c9ca9a..48e09e6 100644 (file)
@@ -8,7 +8,7 @@
 #include "config.h"
 
 #ifndef lint
-static const char sccsid[] = "@(#)db_rec.c     10.10 (Sleepycat) 11/2/97";
+static const char sccsid[] = "@(#)db_rec.c     10.12 (Sleepycat) 1/8/98";
 #endif /* not lint */
 
 #ifndef NO_SYSTEM_INCLUDES
@@ -87,8 +87,8 @@ __db_addrem_recover(logp, dbtp, lsnp, redo, info)
        } else if ((cmp_n == 0 && !redo && argp->opcode == DB_ADD_DUP) ||
            (cmp_p == 0 && redo && argp->opcode == DB_REM_DUP)) {
                /* Need to undo an add, or redo a delete. */
-               if ((ret = __db_ditem(file_dbp, pagep, argp->indx,
-                   argp->nbytes)) != 0)
+               if ((ret = __db_ditem(file_dbp,
+                   pagep, argp->indx, argp->nbytes)) != 0)
                        goto out;
                change = DB_MPOOL_DIRTY;
        }
@@ -585,6 +585,9 @@ __db_debug_recover(logp, dbtp, lsnp, redo, info)
        __db_debug_args *argp;
        int ret;
 
+       COMPQUIET(redo, 0);
+       COMPQUIET(logp, NULL);
+
        REC_PRINT(__db_debug_print);
        REC_NOOP_INTRO(__db_debug_read);
 
@@ -612,6 +615,9 @@ __db_noop_recover(logp, dbtp, lsnp, redo, info)
        __db_noop_args *argp;
        int ret;
 
+       COMPQUIET(redo, 0);
+       COMPQUIET(logp, NULL);
+
        REC_PRINT(__db_noop_print);
        REC_NOOP_INTRO(__db_noop_read);