summaryrefslogtreecommitdiff
path: root/src/log/log_get.c
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@baserock.org>2015-02-17 17:25:57 +0000
committer <>2015-03-17 16:26:24 +0000
commit780b92ada9afcf1d58085a83a0b9e6bc982203d1 (patch)
tree598f8b9fa431b228d29897e798de4ac0c1d3d970 /src/log/log_get.c
parent7a2660ba9cc2dc03a69ddfcfd95369395cc87444 (diff)
downloadberkeleydb-master.tar.gz
Imported from /home/lorry/working-area/delta_berkeleydb/db-6.1.23.tar.gz.HEADdb-6.1.23master
Diffstat (limited to 'src/log/log_get.c')
-rw-r--r--src/log/log_get.c24
1 files changed, 14 insertions, 10 deletions
diff --git a/src/log/log_get.c b/src/log/log_get.c
index db30c969..332dab8e 100644
--- a/src/log/log_get.c
+++ b/src/log/log_get.c
@@ -1,7 +1,7 @@
/*-
* See the file LICENSE for redistribution information.
*
- * Copyright (c) 1996, 2012 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1996, 2015 Oracle and/or its affiliates. All rights reserved.
*
* $Id$
*/
@@ -472,7 +472,7 @@ nextrec:
/* If at start-of-file, move to the previous file. */
if (nlsn.offset == 0) {
if (nlsn.file == 1) {
- ret = DB_NOTFOUND;
+ ret = USR_ERR(env, DB_NOTFOUND);
goto err;
}
if ((!lp->db_log_inmemory &&
@@ -480,7 +480,7 @@ nextrec:
0, &status, NULL) != 0 ||
(status != DB_LV_NORMAL &&
status != DB_LV_OLD_READABLE)))) {
- ret = DB_NOTFOUND;
+ ret = USR_ERR(env, DB_NOTFOUND);
goto err;
}
@@ -607,7 +607,7 @@ nohdr: switch (flags) {
if (eof && logc->bp_lsn.file != nlsn.file)
__db_errx(env, DB_STR_A("2583",
"Log file %d not found, check log directory configuration", "%d"),
- nlsn.file);
+ nlsn.file);
else
__db_errx(env, DB_STR("2576",
"Encountered zero length records while traversing backwards"));
@@ -624,7 +624,7 @@ nohdr: switch (flags) {
/* FALLTHROUGH */
case DB_SET:
default:
- ret = DB_NOTFOUND;
+ ret = USR_ERR(env, DB_NOTFOUND);
goto err;
}
}
@@ -830,7 +830,7 @@ __logc_incursor(logc, lsn, hdr, pp)
if (LOG_SWAPPED(env))
__log_hdrswap(hdr, CRYPTO_ON(env));
if (__logc_hdrchk(logc, lsn, hdr, &eof))
- return (DB_NOTFOUND);
+ return (USR_ERR(env, DB_NOTFOUND));
if (eof || logc->bp_lsn.offset + logc->bp_rlen < lsn->offset + hdr->len)
return (0);
@@ -914,7 +914,7 @@ __logc_inregion(logc, lsn, rlockp, last_lsn, hdr, pp, need_cksump)
if (IS_ZERO_LSN(lp->lsn))
return (0);
if (LOG_COMPARE(lsn, &lp->lsn) >= 0)
- return (DB_NOTFOUND);
+ return (USR_ERR(env, DB_NOTFOUND));
else if (lp->db_log_inmemory) {
if ((ret = __log_inmem_lsnoff(dblp, lsn, &b_region)) != 0)
return (ret);
@@ -949,14 +949,14 @@ __logc_inregion(logc, lsn, rlockp, last_lsn, hdr, pp, need_cksump)
if (LOG_SWAPPED(env))
__log_hdrswap(hdr, CRYPTO_ON(env));
if (__logc_hdrchk(logc, lsn, hdr, &eof) != 0)
- return (DB_NOTFOUND);
+ return (USR_ERR(env, DB_NOTFOUND));
if (eof)
return (0);
if (lp->db_log_inmemory) {
if (RINGBUF_LEN(lp, b_region, lp->b_off) < hdr->len)
- return (DB_NOTFOUND);
+ return (USR_ERR(env, DB_NOTFOUND));
} else if (lsn->offset + hdr->len > lp->w_off + lp->buffer_size)
- return (DB_NOTFOUND);
+ return (USR_ERR(env, DB_NOTFOUND));
if (logc->bp_size <= hdr->len) {
len = (size_t)DB_ALIGN((uintmax_t)hdr->len * 2, 128);
if ((ret =
@@ -1535,6 +1535,10 @@ __log_read_record(env, dbpp, td, recbuf, spec, size, argpp)
LOGCOPY_32(env, ap + sp->offset, bp);
bp += sizeof(uinttmp);
break;
+ case LOGREC_LONGARG:
+ LOGCOPY_64(env, ap + sp->offset, bp);
+ bp += sizeof(u_int64_t);
+ break;
case LOGREC_OP:
LOGCOPY_32(env, &op, bp);
*(u_int32_t *)(ap + sp->offset) = op;