summaryrefslogtreecommitdiff
path: root/dist
diff options
context:
space:
mode:
Diffstat (limited to 'dist')
-rw-r--r--dist/api_data.py17
-rw-r--r--dist/api_err.py8
-rw-r--r--dist/filelist11
-rw-r--r--dist/flags.py7
-rwxr-xr-xdist/s_docs3
-rwxr-xr-xdist/s_longlines4
-rwxr-xr-xdist/s_prototypes2
-rw-r--r--dist/s_string.ok16
-rwxr-xr-xdist/s_style2
-rwxr-xr-xdist/s_whitespace2
-rwxr-xr-xdist/s_win4
-rw-r--r--dist/stat_data.py7
12 files changed, 57 insertions, 26 deletions
diff --git a/dist/api_data.py b/dist/api_data.py
index 5ca294a5d60..20c4433efc8 100644
--- a/dist/api_data.py
+++ b/dist/api_data.py
@@ -722,8 +722,8 @@ wiredtiger_open = wiredtiger_open_common + [
\c create option''',
type='boolean'),
Config('in_memory', 'false', r'''
- keep data in-memory only, minimize disk I/O''',
- type='boolean', undoc=True),
+ keep data in-memory only. See @ref in_memory for more information''',
+ type='boolean'),
Config('use_environment', 'true', r'''
use the \c WIREDTIGER_CONFIG and \c WIREDTIGER_HOME environment
variables if the process is not running with special privileges.
@@ -818,6 +818,13 @@ methods = {
Config('bloom_hash_count', '8', r'''
the number of hash values per item for the bloom filter''',
min='2', max='100'),
+ Config('operation', '"and"', r'''
+ the operation applied between this and other joined cursors.
+ When "operation=and" is specified, all the conditions implied by
+ joins must be satisfied for an entry to be returned by the join cursor;
+ when "operation=or" is specified, only one must be satisfied.
+ All cursors joined to a join cursor must have matching operations''',
+ choices=['and', 'or']),
Config('strategy', '', r'''
when set to bloom, a bloom filter is created and populated for
this index. This has an up front cost but may reduce the number
@@ -1073,11 +1080,17 @@ methods = {
type='boolean'),
]),
'WT_CONNECTION.reconfigure' : Method(connection_runtime_config),
+'WT_CONNECTION.set_file_system' : Method([]),
'WT_CONNECTION.load_extension' : Method([
Config('config', '', r'''
configuration string passed to the entry point of the
extension as its WT_CONFIG_ARG argument'''),
+ Config('early_load', 'false', r'''
+ whether this extension should be loaded at the beginning of
+ ::wiredtiger_open. Only applicable to extensions loaded via the
+ wiredtiger_open configurations string''',
+ type='boolean'),
Config('entry', 'wiredtiger_extension_init', r'''
the entry point of the extension, called to initialize the
extension when it is loaded. The signature of the function
diff --git a/dist/api_err.py b/dist/api_err.py
index a17c68ee196..af5f1c12b37 100644
--- a/dist/api_err.py
+++ b/dist/api_err.py
@@ -53,9 +53,11 @@ errors = [
to return an error if recovery is required to use the database.'''),
Error('WT_CACHE_FULL', -31807,
'operation would overflow cache', '''
- This error is generated when wiredtiger_open is configured
- to run in-memory, and an insert or update operation requires more
- than the configured cache size to complete.''', undoc=True),
+ This error is only generated when wiredtiger_open is configured
+ to run in-memory, and an insert or update operation requires
+ more than the configured cache size to complete. The operation
+ may be retried; if a transaction is in progress, it should be
+ rolled back and the operation retried in a new transaction.'''),
Error('WT_PERM_DENIED', -31808,
'permission denied (internal)', undoc=True),
]
diff --git a/dist/filelist b/dist/filelist
index 1d7ffa76922..22d29d22edf 100644
--- a/dist/filelist
+++ b/dist/filelist
@@ -47,6 +47,9 @@ src/btree/row_key.c
src/btree/row_modify.c
src/btree/row_srch.c
src/cache/cache_las.c
+src/checksum/checksum.c
+src/checksum/power8/crc32.S
+src/checksum/power8/crc32_wrapper.c
src/config/config.c
src/config/config_api.c
src/config/config_check.c
@@ -106,10 +109,9 @@ src/os_common/os_abort.c
src/os_common/os_alloc.c
src/os_common/os_fhandle.c
src/os_common/os_fs_inmemory.c
-src/os_common/os_fs_stdio.c
-src/os_common/os_getline.c
+src/os_common/os_fstream.c
+src/os_common/os_fstream_stdio.c
src/os_common/os_getopt.c
-src/os_common/os_init.c
src/os_common/os_strtouq.c
src/os_posix/os_dir.c
src/os_posix/os_dlopen.c
@@ -148,7 +150,6 @@ src/session/session_api.c
src/session/session_compact.c
src/session/session_dhandle.c
src/session/session_salvage.c
-src/support/cksum.c
src/support/cond_auto.c
src/support/crypto.c
src/support/err.c
@@ -160,8 +161,6 @@ src/support/hex.c
src/support/huffman.c
src/support/mtx_rw.c
src/support/pow.c
-src/support/power8/crc32.S
-src/support/power8/crc32_wrapper.c
src/support/rand.c
src/support/scratch.c
src/support/stat.c
diff --git a/dist/flags.py b/dist/flags.py
index 8f7827ad160..48b0a2452a9 100644
--- a/dist/flags.py
+++ b/dist/flags.py
@@ -8,13 +8,6 @@ flags = {
###################################################
# Internal routine flag declarations
###################################################
- 'file_types' : [
- 'FILE_TYPE_CHECKPOINT',
- 'FILE_TYPE_DATA',
- 'FILE_TYPE_DIRECTORY',
- 'FILE_TYPE_LOG',
- 'FILE_TYPE_REGULAR',
- ],
'log_scan' : [
'LOGSCAN_FIRST',
'LOGSCAN_FROM_CKP',
diff --git a/dist/s_docs b/dist/s_docs
index c66bcb0bd06..08602989fe8 100755
--- a/dist/s_docs
+++ b/dist/s_docs
@@ -114,7 +114,8 @@ valid_build()
}
classf=`ls ../docs/struct___* 2>/dev/null`
for c in $classf; do
- echo "$c: Need to add class to PREDEFINED in src/docs/Doxyfile"
+ echo "$c: Add class to PREDEFINED in src/docs/Doxyfile, then remove docs/*.{html,js} and rebuild"
+
done
}
diff --git a/dist/s_longlines b/dist/s_longlines
index 000f33d51d5..2837d400f9e 100755
--- a/dist/s_longlines
+++ b/dist/s_longlines
@@ -8,9 +8,9 @@ l=`(cd .. &&
find bench/wtperf examples ext src test -name '*.[chisy]' &&
find dist -name '*.py' &&
find src -name '*.in') |
- sed -e '/dist\/stat_data\.py/d' \
+ sed -e '/checksum\/power8/d' \
+ -e '/dist\/stat_data\.py/d' \
-e '/include\/extern\.h/d' \
- -e '/support\/power8/d' \
-e '/support\/stat\.c/d'`
for f in $l ; do
diff --git a/dist/s_prototypes b/dist/s_prototypes
index 4ceb69f4c77..aa66d06dbe0 100755
--- a/dist/s_prototypes
+++ b/dist/s_prototypes
@@ -55,7 +55,7 @@ l=`echo ../src\/os*/*.c`
for i in $l; do
proto $i
-done | tee xxx | env LC_ALL=C sort -u
+done | env LC_ALL=C sort -u
) > $t
f=../src/include/extern.h
diff --git a/dist/s_string.ok b/dist/s_string.ok
index eed034abb47..81d09a55225 100644
--- a/dist/s_string.ok
+++ b/dist/s_string.ok
@@ -76,6 +76,7 @@ DECL
DECR
DESC
DHANDLE
+DIRECTIO
DNE
DOI
DONTNEED
@@ -255,6 +256,7 @@ Qsort
RCS
RDNOLOCK
RDONLY
+READONLY
RECNO
REF's
REFs
@@ -487,9 +489,11 @@ conn
connectionp
const
constantp
+cookiep
copydoc
copyin
copyout
+countp
cp
cpuid
crc
@@ -601,6 +605,7 @@ evictserver
exactp
exe
execop
+existp
extern
extlist
fadvise
@@ -617,6 +622,7 @@ ffs
fgetc
fgetln
fh
+fhandle
filefrag
filehandle
fileid
@@ -639,8 +645,10 @@ fopen
fp
fprintf
free'd
+fs
fscanf
fstat
+fstream
fsync
fsyncLock
fsyncs
@@ -668,11 +676,13 @@ gostruct
goutf
gt
handleops
+handlep
hashval
havesize
hdr
highjack
hotbackup
+hselasky
html
huffman
hval
@@ -688,6 +698,7 @@ im
impl
incase
incr
+incrementals
incrementing
indices
indirects
@@ -696,6 +707,7 @@ infeasible
inflateInit
infmt
init
+initializers
initn
initsize
initval
@@ -716,6 +728,7 @@ io
ip
islocked
ispo
+isrc
iter
iteratively
jnr
@@ -738,6 +751,7 @@ lbracket
ld
le
len
+lengthp
lenp
level's
leveldb
@@ -843,6 +857,7 @@ noraw
notfound
notsup
notused
+nowait
nset
nsnap
nul
@@ -938,6 +953,7 @@ recsize
rectype
recurse
refp
+regionp
reinitialization
relocked
resize
diff --git a/dist/s_style b/dist/s_style
index a163eb83b25..85220124971 100755
--- a/dist/s_style
+++ b/dist/s_style
@@ -20,7 +20,7 @@ if [ $# -ne 1 ]; then
-name '*.[chisy]' -o -name '*.in' -o -name '*.dox' |
sed -e '/Makefile.in/d' \
-e '/build_win\/wiredtiger_config.h/d' \
- -e '/support\/power8/d' |
+ -e '/checksum\/power8/d' |
xargs $xp -n 1 -I{} sh ./dist/s_style {}
else
# General style correction and cleanup for a single file
diff --git a/dist/s_whitespace b/dist/s_whitespace
index 74820a4f0e9..8cf3f7dfe6f 100755
--- a/dist/s_whitespace
+++ b/dist/s_whitespace
@@ -38,7 +38,7 @@ for f in `find bench examples ext src test \
-name '*.in' -o \
-name 'Makefile.am' |
sed -e '/Makefile.in/d' \
- -e '/support\/power8/d'`; do
+ -e '/checksum\/power8/d'`; do
whitespace_and_empty_line $f
done
diff --git a/dist/s_win b/dist/s_win
index 562e89f94c6..7fe525c202d 100755
--- a/dist/s_win
+++ b/dist/s_win
@@ -47,8 +47,8 @@ win_filelist()
(
sed \
-e '/\/os_posix\//d' \
- -e '/src\/support\/power8\/crc32.S/d' \
- -e '/src\/support\/power8\/crc32_wrapper.c/d'
+ -e '/src\/checksum\/power8\/crc32.S/d' \
+ -e '/src\/checksum\/power8\/crc32_wrapper.c/d'
echo 'src/os_win/os_dir.c'
echo 'src/os_win/os_dlopen.c'
diff --git a/dist/stat_data.py b/dist/stat_data.py
index bd951e64999..0486d94e278 100644
--- a/dist/stat_data.py
+++ b/dist/stat_data.py
@@ -170,6 +170,9 @@ connection_stats = [
CacheStat('cache_eviction_force', 'pages evicted because they exceeded the in-memory maximum'),
CacheStat('cache_eviction_force_delete', 'pages evicted because they had chains of deleted items'),
CacheStat('cache_eviction_force_fail', 'failed eviction of pages that exceeded the in-memory maximum'),
+ CacheStat('cache_eviction_get_ref', 'eviction calls to get a page'),
+ CacheStat('cache_eviction_get_ref_empty', 'eviction calls to get a page found queue empty'),
+ CacheStat('cache_eviction_get_ref_empty2', 'eviction calls to get a page found queue empty after locking'),
CacheStat('cache_eviction_hazard', 'hazard pointer blocked page eviction'),
CacheStat('cache_eviction_internal', 'internal pages evicted'),
CacheStat('cache_eviction_maximum_page_size', 'maximum page size at eviction', 'no_clear,no_scale,size'),
@@ -177,6 +180,8 @@ connection_stats = [
CacheStat('cache_eviction_queue_not_empty', 'eviction server candidate queue not empty when topping up'),
CacheStat('cache_eviction_server_evicting', 'eviction server evicting pages'),
CacheStat('cache_eviction_server_not_evicting', 'eviction server populating queue, but not evicting pages'),
+ CacheStat('cache_eviction_server_slept', 'eviction server slept, because we did not make progress with eviction'),
+ CacheStat('cache_eviction_server_toobig', 'eviction server skipped very large page'),
CacheStat('cache_eviction_slow', 'eviction server unable to reach eviction goal'),
CacheStat('cache_eviction_split_internal', 'internal pages split during eviction'),
CacheStat('cache_eviction_split_leaf', 'leaf pages split during eviction'),
@@ -189,6 +194,7 @@ connection_stats = [
CacheStat('cache_overhead', 'percentage overhead', 'no_clear,no_scale'),
CacheStat('cache_pages_dirty', 'tracked dirty pages in the cache', 'no_clear,no_scale'),
CacheStat('cache_pages_inuse', 'pages currently held in the cache', 'no_clear,no_scale'),
+ CacheStat('cache_pages_requested', 'pages requested from the cache'),
CacheStat('cache_read', 'pages read into cache'),
CacheStat('cache_read_lookaside', 'pages read into cache requiring lookaside entries'),
CacheStat('cache_write', 'pages written from cache'),
@@ -422,6 +428,7 @@ dsrc_stats = [
CacheStat('cache_inmem_split', 'in-memory page splits'),
CacheStat('cache_inmem_splittable', 'in-memory page passed criteria to be split'),
CacheStat('cache_overflow_value', 'overflow values cached in memory', 'no_scale'),
+ CacheStat('cache_pages_requested', 'pages requested from the cache'),
CacheStat('cache_read', 'pages read into cache'),
CacheStat('cache_read_lookaside', 'pages read into cache requiring lookaside entries'),
CacheStat('cache_read_overflow', 'overflow pages read into cache'),