summaryrefslogtreecommitdiff
path: root/test/tcl/memp005.tcl
blob: 44b43a9da3bf91f8bdd5e820e08848547cfb6e59 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# See the file LICENSE for redistribution information.
#
# Copyright (c) 2010, 2015 Oracle and/or its affiliates.  All rights reserved.
#
# $Id$
#
# TEST	memp005
# TEST  Make sure that db pagesize does not interfere with mpool pagesize.
proc memp005 { } {
	source ./include.tcl

	puts "Memp005: Test interaction of database and mpool pagesize."
	env_cleanup $testdir

	# Set the mpool pagesize.
	puts "\tMemp005.a: Set mpool pagesize."
	set mp_pagesize 1024
	set e [eval {berkdb_env -create -pagesize $mp_pagesize -home $testdir} ]
	error_check_good dbenv [is_valid_env $e] TRUE

	# Check the pagesize through mpool_stat and through the getter.
	set mpool_stat_pagesize [stat_field $e mpool_stat "Default pagesize"]
	error_check_good check_mp_pagesize $mp_pagesize $mpool_stat_pagesize
	set get_mp_pagesize [$e get_mp_pagesize]
	error_check_good check_getter_pagesize $get_mp_pagesize $mp_pagesize

	# Set a different database pagesize.  
	puts "\tMemp005.b: Set different database pagesize."
	set db_pagesize 2048
	set db [eval {berkdb_open -create\
	     -pagesize $db_pagesize -env $e -btree foo.db} ]

	# Make sure the mpool pagesize and database pagesizes are correct. 
	# Check both the stats and the getters.
	puts "\tMemp005.c: Check values."
	set mpool_stat_pagesize [stat_field $e mpool_stat "Default pagesize"]
	error_check_good check_mp_pagesize $mp_pagesize $mpool_stat_pagesize
	set get_mp_pagesize [$e get_mp_pagesize]
	error_check_good check_mpgetter_pagesize $get_mp_pagesize $mp_pagesize
	set db_stat_pagesize [stat_field $db stat "Page size"]
	error_check_good check_db_pagesize $db_pagesize $db_stat_pagesize
	set db_get_pagesize [$db get_pagesize]
	error_check_good check_dbgetter_pagesize $db_pagesize $db_get_pagesize

	# Clean up.
	error_check_good db_close [$db close] 0
	error_check_good env_close [$e close] 0

}