當前位置: 首頁>>代碼示例>>Java>>正文


Java Environment.checkpoint方法代碼示例

本文整理匯總了Java中com.sleepycat.je.Environment.checkpoint方法的典型用法代碼示例。如果您正苦於以下問題:Java Environment.checkpoint方法的具體用法?Java Environment.checkpoint怎麽用?Java Environment.checkpoint使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在com.sleepycat.je.Environment的用法示例。


在下文中一共展示了Environment.checkpoint方法的8個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: removeAndClean

import com.sleepycat.je.Environment; //導入方法依賴的package包/類
private static void removeAndClean(Environment env,
                                   String name,
                                   boolean doCleaning)
    throws Exception {

    long a, c, d, e, f;

    Transaction txn = null;
    CheckpointConfig force = new CheckpointConfig();
    force.setForce(true);

    a = System.currentTimeMillis();
    env.removeDatabase(txn, name);
    c = System.currentTimeMillis();

    int cleanedCount = 0;
    if (doCleaning) {
        while (env.cleanLog() > 0) {
            cleanedCount++;
        }
    }
    d = System.currentTimeMillis();

    System.out.println("cleanedCount=" + cleanedCount);
    e = 0;
    f = 0;
    if (cleanedCount > 0) {
        e = System.currentTimeMillis();
        env.checkpoint(force);
        f = System.currentTimeMillis();
    }

    System.out.println("Remove of " + name  +
                       " remove: " + getSecs(a, c) +
                       " clean: " + getSecs(c, d) +
                       " checkpoint: " + getSecs(e, f));
}
 
開發者ID:prat0318,項目名稱:dbms,代碼行數:38,代碼來源:DbRunAction.java

示例2: startup

import com.sleepycat.je.Environment; //導入方法依賴的package包/類
public void startup(HGStore store, HGConfiguration config)
{
	this.store = store;
	this.handleFactory = config.getHandleFactory();
	this.linkBinding = new LinkBinding(handleFactory);
	EnvironmentConfig envConfig = configuration.getEnvironmentConfig();
	envConfig.setConfigParam(EnvironmentConfig.CLEANER_THREADS, "5");
	envConfig.setClassLoader(new HGClassLoaderDelegate(config));
	if (config.isTransactional())
	{
		configuration.configureTransactional();
	}

	File envDir = new File(store.getDatabaseLocation());
	envDir.mkdirs();

	try
	{
		env = new Environment(envDir, envConfig);
		data_db = env.openDatabase(null, DATA_DB_NAME, configuration.getDatabaseConfig().clone());
		primitive_db = env.openDatabase(null, PRIMITIVE_DB_NAME, configuration.getDatabaseConfig().clone());

		DatabaseConfig incConfig = configuration.getDatabaseConfig().clone();
		incConfig.setSortedDuplicates(true);
		incidence_db = env.openDatabase(null, INCIDENCE_DB_NAME, incConfig);

		openIndices = new HashMap<String, HGIndex<?, ?>>(); // force reset
															// since startup
															// can follow a
															// shutdown on
															// same opened
															// class

		if (config.isTransactional())
		{
			CheckpointConfig ckptConfig = new CheckpointConfig();
			// System.out.println("checkpoint kbytes:" +
			// ckptConfig.getKBytes());
			// System.out.println("checkpoint minutes:" +
			// ckptConfig.getMinutes());
			env.checkpoint(null);
			checkPointThread = new CheckPointThread();
			checkPointThread.start();
		}
	}
	catch (Exception ex)
	{
		throw new HGException("Failed to initialize HyperGraph data store: " + ex.toString(), ex);
	}
}
 
開發者ID:hypergraphdb,項目名稱:hypergraphdb,代碼行數:51,代碼來源:BJEStorageImplementation.java

示例3: invoke

import com.sleepycat.je.Environment; //導入方法依賴的package包/類
/**
 * Invoke an operation for the given environment.
 *
 * @param targetEnv The target JE environment. May be null if the
 * environment is not open.
 * @param actionName operation name.
 * @param params operation parameters. May be null.
 * @param signature operation signature. May be null.
 * @return the operation result
 */
public Object invoke(Environment targetEnv,
                     String actionName,
                     Object [] params,
                     String [] signature)
    throws MBeanException {

    /* Sanity checking. */
    if (actionName == null) {
        throw new IllegalArgumentException("actionName cannot be null");
    }

    try {
        if (targetEnv != null) {
            if (actionName.equals(OP_CLEAN)) {
                int numFiles = targetEnv.cleanLog();
                return new Integer(numFiles);
            } else if (actionName.equals(OP_EVICT)) {
                targetEnv.evictMemory();
                return null;
            } else if (actionName.equals(OP_CHECKPOINT)) {
                CheckpointConfig config = new CheckpointConfig();
                if ((params != null) && (params.length > 0)) {
                    Boolean force = (Boolean) params[0];
                    config.setForce(force.booleanValue());
                }
                targetEnv.checkpoint(config);
                return null;
            } else if (actionName.equals(OP_SYNC)) {
                targetEnv.sync();
                return null;
            } else if (actionName.equals(OP_ENV_STAT)) {
                return targetEnv.getStats(getStatsConfig(params));
            } else if (actionName.equals(OP_LOCK_STAT)) {
                return targetEnv.getLockStats(getStatsConfig(params));
            } else if (actionName.equals(OP_TXN_STAT)) {
                return targetEnv.getTransactionStats(
                                                   getStatsConfig(params));
            } else if (actionName.equals(OP_DB_NAMES)) {
                return targetEnv.getDatabaseNames();
            } else if (actionName.equals(OP_DB_STAT)) {
                return getDatabaseStats(targetEnv, params);
            }
        }

        return new IllegalArgumentException("actionName: " +
                                            actionName +
                                            " is not valid");
    } catch (DatabaseException e) {
        /*
         * Add both the message and the exception for easiest
         * deciphering of the problem. Sometimes the original exception
         * stacktrace gets hidden in server logs.
         */
        throw new MBeanException(e, e.getMessage());
    }
}
 
開發者ID:nologic,項目名稱:nabs,代碼行數:67,代碼來源:JEMBeanHelper.java

示例4: removeAndClean

import com.sleepycat.je.Environment; //導入方法依賴的package包/類
private static void removeAndClean(Environment env,
                                   String name,
                                   boolean doCleaning)
    throws DatabaseException {

    long a, b, c, d, e, f;

    //        Transaction txn = env.beginTransaction(null, null);
    Transaction txn = null;
    CheckpointConfig force = new CheckpointConfig();
    force.setForce(true);

    a = System.currentTimeMillis();
    env.removeDatabase(txn, name);
    b = System.currentTimeMillis();
    //        txn.commit();
    c = System.currentTimeMillis();

    int cleanedCount = 0;
    if (doCleaning) {
        while (env.cleanLog() > 0) {
            cleanedCount++;
        }
    }
    d = System.currentTimeMillis();

    System.out.println("cleanedCount=" + cleanedCount);
    e = 0;
    f = 0;
    if (cleanedCount > 0) {
        e = System.currentTimeMillis();
        env.checkpoint(force);
        f = System.currentTimeMillis();
    }

    System.out.println("Remove of " + name  +
                       " remove: " + getSecs(a, b) +
                       " commit: " + getSecs(b, c) +
                       " clean: " + getSecs(c, d) +
                       " checkpoint: " + getSecs(e, f));
}
 
開發者ID:nologic,項目名稱:nabs,代碼行數:42,代碼來源:DbRunAction.java

示例5: testCleanerStop

import com.sleepycat.je.Environment; //導入方法依賴的package包/類
/**
    * Tests that setting je.env.runCleaner=false stops the cleaner from
    * processing more files even if the target minUtilization is not met
    * [#15158].
    */
   public void testCleanerStop()
throws Throwable {

       final int fileSize = 1000000;
       EnvironmentConfig envConfig = TestUtils.initEnvConfig();
       envConfig.setAllowCreate(true);
       envConfig.setConfigParam
    (EnvironmentParams.ENV_RUN_CLEANER.getName(), "false");
       envConfig.setConfigParam
           (EnvironmentParams.LOG_FILE_MAX.getName(),
            Integer.toString(fileSize));
       envConfig.setConfigParam
    (EnvironmentParams.CLEANER_MIN_UTILIZATION.getName(), "80");
       Environment env = new Environment(envHome, envConfig);

       DatabaseConfig dbConfig = new DatabaseConfig();
       dbConfig.setAllowCreate(true);
       Database db = env.openDatabase(null, "CleanerStop", dbConfig);

       DatabaseEntry key = new DatabaseEntry(new byte[1]);
       DatabaseEntry data = new DatabaseEntry(new byte[fileSize]);
       for (int i = 0; i <= 10; i += 1) {
           db.put(null, key, data);
       }
       env.checkpoint(forceConfig);

       EnvironmentStats stats = env.getStats(null);
       assertEquals(0, stats.getNCleanerRuns());

       envConfig = env.getConfig();
       envConfig.setConfigParam
    (EnvironmentParams.ENV_RUN_CLEANER.getName(), "true");
       env.setMutableConfig(envConfig);

       int iter = 0;
       while (stats.getNCleanerRuns() == 0) {
           iter += 1;
           if (iter == 20) {
               fail("Cleaner did not run after " + iter + " tries");
           }
           Thread.yield();
           Thread.sleep(1);
           stats = env.getStats(null);
       }

       envConfig.setConfigParam
    (EnvironmentParams.ENV_RUN_CLEANER.getName(), "false");
       env.setMutableConfig(envConfig);

       int prevNFiles = stats.getNCleanerRuns();
       stats = env.getStats(null);
       int currNFiles = stats.getNCleanerRuns();
       if (currNFiles - prevNFiles > 5) {
           fail("Expected less than 5 files cleaned," +
                " prevNFiles=" + prevNFiles +
                " currNFiles=" + currNFiles);
       }

       //System.out.println("Num runs: " + stats.getNCleanerRuns());

db.close();
env.close();
   }
 
開發者ID:nologic,項目名稱:nabs,代碼行數:69,代碼來源:CleanerTest.java

示例6: invoke

import com.sleepycat.je.Environment; //導入方法依賴的package包/類
/**
 * Invoke an operation for the given environment.
 * 
 * @param targetEnv The target JE environment. May be null if the
 * environment is not open.
 * @param actionName operation name.
 * @param params operation parameters. May be null.
 * @param signature operation signature. May be null.
 * @return the operation result
 */
public Object invoke(Environment targetEnv,
                     String actionName,
                     Object [] params,
                     String [] signature) 
    throws MBeanException {

    /* Sanity checking. */
    if (actionName == null) {
        throw new IllegalArgumentException("actionName cannot be null");
    }

    try {
        if (targetEnv != null) {
            if (actionName.equals(OP_CLEAN)) {
                int numFiles = targetEnv.cleanLog();
                return new Integer(numFiles);
            } else if (actionName.equals(OP_EVICT)) {
                targetEnv.evictMemory();
                return null;
            } else if (actionName.equals(OP_CHECKPOINT)) {
                CheckpointConfig config = new CheckpointConfig();
                if ((params != null) && (params.length > 0)) {
                    Boolean force = (Boolean) params[0];
                    config.setForce(force.booleanValue());
                }
                targetEnv.checkpoint(config);
                return null;
            } else if (actionName.equals(OP_SYNC)) {
                targetEnv.sync();
                return null;
            } else if (actionName.equals(OP_ENV_STAT)) {
                return targetEnv.getStats(getStatsConfig(params));
            } else if (actionName.equals(OP_LOCK_STAT)) {
                return targetEnv.getLockStats(getStatsConfig(params));
            } else if (actionName.equals(OP_TXN_STAT)) {
                return targetEnv.getTransactionStats(
                                                   getStatsConfig(params));
            } else if (actionName.equals(OP_DB_NAMES)) {
                return targetEnv.getDatabaseNames();
            } else if (actionName.equals(OP_DB_STAT)) {
                return getDatabaseStats(targetEnv, params);
            }
        } 

        return new IllegalArgumentException("actionName: " +
                                            actionName +
                                            " is not valid");
    } catch (DatabaseException e) {
        /* 
         * Add both the message and the exception for easiest
         * deciphering of the problem. Sometimes the original exception
         * stacktrace gets hidden in server logs.
         */
        throw new MBeanException(e, e.getMessage());
    }
}
 
開發者ID:nologic,項目名稱:nabs,代碼行數:67,代碼來源:JEMBeanHelper.java

示例7: removeAndClean

import com.sleepycat.je.Environment; //導入方法依賴的package包/類
private static void removeAndClean(Environment env,
                                   String name,
                                   boolean doCleaning) 
    throws DatabaseException {
    
    long a, b, c, d, e, f;

    //        Transaction txn = env.beginTransaction(null, null);
    Transaction txn = null;
    CheckpointConfig force = new CheckpointConfig();
    force.setForce(true);

    a = System.currentTimeMillis();
    env.removeDatabase(txn, name);
    b = System.currentTimeMillis();
    //        txn.commit();
    c = System.currentTimeMillis();

    int cleanedCount = 0;
    if (doCleaning) {
        while (env.cleanLog() > 0) {
            cleanedCount++;
        }
    }
    d = System.currentTimeMillis();

    System.out.println("cleanedCount=" + cleanedCount);
    e = 0;
    f = 0;
    if (cleanedCount > 0) {
        e = System.currentTimeMillis();
        env.checkpoint(force);
        f = System.currentTimeMillis();
    }

    System.out.println("Remove of " + name  +
                       " remove: " + getSecs(a, b) +
                       " commit: " + getSecs(b, c) +
                       " clean: " + getSecs(c, d) +
                       " checkpoint: " + getSecs(e, f));
}
 
開發者ID:nologic,項目名稱:nabs,代碼行數:42,代碼來源:DbRunAction.java

示例8: invoke

import com.sleepycat.je.Environment; //導入方法依賴的package包/類
/**
 * Invoke an operation for the given environment.
 *
 * @param targetEnv The target JE environment. May be null if the
 * environment is not open.
 * @param actionName operation name.
 * @param params operation parameters. May be null.
 * @param signature operation signature. May be null.
 * @return the operation result
 */
public Object invoke(Environment targetEnv,
                     String actionName,
                     Object[] params,
                     String[] signature)
    throws MBeanException {

    /* Sanity checking. */
    if (actionName == null) {
        throw new IllegalArgumentException("actionName cannot be null");
    }

    try {
        if (targetEnv != null) {
            if (actionName.equals(OP_CLEAN)) {
                int numFiles = targetEnv.cleanLog();
                return new Integer(numFiles);
            } else if (actionName.equals(OP_EVICT)) {
                targetEnv.evictMemory();
                return null;
            } else if (actionName.equals(OP_CHECKPOINT)) {
                CheckpointConfig config = new CheckpointConfig();
                if ((params != null) && (params.length > 0)) {
                    Boolean force = (Boolean) params[0];
                    config.setForce(force.booleanValue());
                }
                targetEnv.checkpoint(config);
                return null;
            } else if (actionName.equals(OP_SYNC)) {
                targetEnv.sync();
                return null;
            } else if (actionName.equals(OP_ENV_STAT)) {
                return targetEnv.getStats
                    (getStatsConfig(params)).toString();
            } else if (actionName.equals(OP_TXN_STAT)) {
                return targetEnv.getTransactionStats
                    (getStatsConfig(params)).toString();
            } else if (actionName.equals(OP_DB_NAMES)) {
                return targetEnv.getDatabaseNames();
            } else if (actionName.equals(OP_DB_STAT)) {
                DatabaseStats stats = getDatabaseStats(targetEnv, params);
                return stats != null ? stats.toString() : null;
            }
        }

        return new IllegalArgumentException
            ("actionName: " + actionName + " is not valid");
    } catch (Exception e) {

        /*
         * Add both the message and the exception for easiest deciphering
         * of the problem. Sometimes the original exception stacktrace gets
         * hidden in server logs.
         */
        throw new MBeanException(e, e.getMessage());
    }
}
 
開發者ID:prat0318,項目名稱:dbms,代碼行數:67,代碼來源:JEMBeanHelper.java


注:本文中的com.sleepycat.je.Environment.checkpoint方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。