/*- * See the file LICENSE for redistribution information. * * Copyright (c) 2011, 2015 Oracle and/or its affiliates. All rights reserved. * */ package com.sleepycat.db.test; import org.junit.After; import org.junit.AfterClass; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; import static org.junit.Assert.assertEquals; import static org.junit.Assert.fail; import com.sleepycat.db.*; import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; import com.sleepycat.db.test.TestUtils; public class EnvRegionSizeTest { public static final String ENVREGIONSIZETEST_DBNAME = "envregionsizetest.db"; @BeforeClass public static void ClassInit() { TestUtils.loadConfig(null); TestUtils.check_file_removed(TestUtils.getDBFileName(ENVREGIONSIZETEST_DBNAME), true, true); TestUtils.removeall(true, true, TestUtils.BASETEST_DBDIR, TestUtils.getDBFileName(ENVREGIONSIZETEST_DBNAME)); } @AfterClass public static void ClassShutdown() { TestUtils.check_file_removed(TestUtils.getDBFileName(ENVREGIONSIZETEST_DBNAME), true, true); TestUtils.removeall(true, true, TestUtils.BASETEST_DBDIR, TestUtils.getDBFileName(ENVREGIONSIZETEST_DBNAME)); } @Before public void PerTestInit() throws Exception { } @After public void PerTestShutdown() throws Exception { } /* * Test case implementations. * To disable a test mark it with @Ignore * To set a timeout(ms) notate like: @Test(timeout=1000) * To indicate an expected exception notate like: (expected=Exception) */ @Test public void testRegionMemoryInitialSize() throws DatabaseException, FileNotFoundException { /* Create an environment. */ EnvironmentConfig envc = new EnvironmentConfig(); envc.setAllowCreate(true); envc.setInitializeCache(true); envc.setRegionMemoryInitialSize(RegionResourceType.LOCK, 1024); envc.setRegionMemoryInitialSize(RegionResourceType.LOCK_OBJECT, 1024); envc.setRegionMemoryInitialSize(RegionResourceType.LOCKER, 1024); envc.setRegionMemoryInitialSize(RegionResourceType.LOG_ID, 1024); envc.setRegionMemoryInitialSize(RegionResourceType.TRANSACTION, 1024); envc.setRegionMemoryInitialSize(RegionResourceType.THREAD, 1024); /* Check to see that they "stuck" before opening env. */ assertEquals( envc.getRegionMemoryInitialSize(RegionResourceType.LOCK), 1024); assertEquals( envc.getRegionMemoryInitialSize(RegionResourceType.LOCK_OBJECT), 1024); assertEquals( envc.getRegionMemoryInitialSize(RegionResourceType.LOCKER), 1024); assertEquals( envc.getRegionMemoryInitialSize(RegionResourceType.LOG_ID), 1024); assertEquals( envc.getRegionMemoryInitialSize(RegionResourceType.TRANSACTION), 1024); assertEquals( envc.getRegionMemoryInitialSize(RegionResourceType.THREAD), 1024); Environment dbEnv = new Environment(TestUtils.BASETEST_DBFILE, envc); /* Check again after opnening. */ assertEquals( envc.getRegionMemoryInitialSize(RegionResourceType.LOCK), 1024); assertEquals( envc.getRegionMemoryInitialSize(RegionResourceType.LOCK_OBJECT), 1024); assertEquals( envc.getRegionMemoryInitialSize(RegionResourceType.LOCKER), 1024); assertEquals( envc.getRegionMemoryInitialSize(RegionResourceType.LOG_ID), 1024); assertEquals( envc.getRegionMemoryInitialSize(RegionResourceType.TRANSACTION), 1024); assertEquals( envc.getRegionMemoryInitialSize(RegionResourceType.THREAD), 1024); } @Test public void testLockTableSize() throws DatabaseException, FileNotFoundException { EnvironmentConfig envc = new EnvironmentConfig(); envc.setAllowCreate(true); envc.setInitializeCache(true); envc.setLockTableSize(1024); assertEquals(envc.getLockTableSize(), 1024); Environment dbEnv = new Environment(TestUtils.BASETEST_DBFILE, envc); assertEquals(envc.getLockTableSize(), 1024); } @Test public void testInitialMutexes() throws DatabaseException, FileNotFoundException { EnvironmentConfig envc = new EnvironmentConfig(); envc.setAllowCreate(true); envc.setInitializeCache(true); envc.setInitialMutexes(1024); assertEquals(envc.getInitialMutexes(), 1024); Environment dbEnv = new Environment(TestUtils.BASETEST_DBFILE, envc); assertEquals(envc.getInitialMutexes(), 1024); } @Test public void testRegionMemoryMax() throws DatabaseException, FileNotFoundException { EnvironmentConfig envc = new EnvironmentConfig(); envc.setAllowCreate(true); envc.setInitializeCache(true); envc.setRegionMemoryMax(5 * 1024 * 1024); assertEquals(envc.getRegionMemoryMax(), 5 * 1024 * 1024); Environment dbEnv = new Environment(TestUtils.BASETEST_DBFILE, envc); assertEquals(envc.getRegionMemoryMax(), 5 * 1024 * 1024); } }