/** * @param ignite Ignite. */ private static WorkersRegistry getWorkersRegistry(Ignite ignite) { return ignite instanceof IgniteEx ? ((IgniteEx)ignite).context().workersRegistry() : null; }
/** * Default constructor. */ protected DiscoveryMessageNotifierWorker() { super(ctx.igniteInstanceName(), "disco-notifier-worker", GridDiscoveryManager.this.log, ctx.workersRegistry()); }
/** * */ private DiscoveryWorker() { super(ctx.igniteInstanceName(), "disco-event-worker", GridDiscoveryManager.this.log, ctx.workersRegistry()); }
/** {@inheritDoc} */ private ServicesDeploymentWorker() { super(ctx.igniteInstanceName(), "services-deployment-worker", ServiceDeploymentManager.this.log, ctx.workersRegistry()); }
/** */ private WorkersRegistry getWorkersRegistry() { Ignite ignite = spi.ignite(); return ignite instanceof IgniteEx ? ((IgniteEx)ignite).context().workersRegistry() : null; }
/** * */ TimeoutWorker() { super( ctx.config().getIgniteInstanceName(), "grid-timeout-worker", GridTimeoutProcessor.this.log, ctx.workersRegistry() ); }
/** * @param gridName Grid name. * @param name Thread name. * @param log Logger. */ protected Checkpointer(@Nullable String gridName, String name, IgniteLogger log) { super(gridName, name, log, cctx.kernalContext().workersRegistry()); scheduledCp = new CheckpointProgress(U.currentTimeMillis() + checkpointFreq); tmpWriteBuf = ByteBuffer.allocateDirect(pageSize()); tmpWriteBuf.order(ByteOrder.nativeOrder()); }
/** * Default constructor. * * @param log Logger. */ WALWriter(IgniteLogger log) { super(cctx.igniteInstanceName(), "wal-write-worker%" + cctx.igniteInstanceName(), log, cctx.kernalContext().workersRegistry()); }
/** * @param log Logger. */ FileDecompressor(IgniteLogger log) { super(cctx.igniteInstanceName(), "wal-file-decompressor%" + cctx.igniteInstanceName(), log, cctx.kernalContext().workersRegistry()); }
/** * Creates cleanup worker. */ CleanupWorker() { super(cctx.igniteInstanceName(), "ttl-cleanup-worker", cctx.logger(GridCacheSharedTtlCleanupManager.class), cctx.kernalContext().workersRegistry()); }
/** */ private static WorkersRegistry getWorkerRegistry(TcpDiscoverySpi spi) { return spi.ignite() instanceof IgniteEx ? ((IgniteEx)spi.ignite()).context().workersRegistry() : null; }
/** * */ private FileArchiver(long lastAbsArchivedIdx, IgniteLogger log) { super(cctx.igniteInstanceName(), "wal-file-archiver%" + cctx.igniteInstanceName(), log, cctx.kernalContext().workersRegistry()); segmentAware.setLastArchivedAbsoluteIndex(lastAbsArchivedIdx); }
/** * @throws Exception If failed. */ @Test public void testBlockingWorker() throws Exception { IgniteEx ignite = grid(0); GridWorker worker = new GridWorker(ignite.name(), "test-worker", log) { @Override protected void body() throws InterruptedException { Thread.sleep(Long.MAX_VALUE); } }; new IgniteThread(worker).start(); while (worker.runner() == null) Thread.sleep(10); ignite.context().workersRegistry().register(worker); assertTrue(hndLatch.await(ignite.configuration().getFailureDetectionTimeout() * 2, TimeUnit.MILLISECONDS)); Thread runner = worker.runner(); runner.interrupt(); runner.join(1000); assertFalse(runner.isAlive()); } }
/** * @param ctx Kernal context. */ public GridCacheDatabaseSharedManager(GridKernalContext ctx) { IgniteConfiguration cfg = ctx.config(); persistenceCfg = cfg.getDataStorageConfiguration(); assert persistenceCfg != null; checkpointFreq = persistenceCfg.getCheckpointFrequency(); truncateWalOnCpFinish = persistenceCfg.isWalHistorySizeParameterUsed() ? persistenceCfg.getWalHistorySize() != Integer.MAX_VALUE : persistenceCfg.getMaxWalArchiveSize() != Long.MAX_VALUE; lockWaitTime = persistenceCfg.getLockWaitTime(); persStoreMetrics = new DataStorageMetricsImpl( persistenceCfg.isMetricsEnabled(), persistenceCfg.getMetricsRateTimeInterval(), persistenceCfg.getMetricsSubIntervalCount() ); ioFactory = persistenceCfg.getFileIOFactory(); Long cfgCheckpointReadLockTimeout = ctx.config().getDataStorageConfiguration() != null ? ctx.config().getDataStorageConfiguration().getCheckpointReadLockTimeout() : null; checkpointReadLockTimeout = IgniteSystemProperties.getLong(IGNITE_CHECKPOINT_READ_LOCK_TIMEOUT, cfgCheckpointReadLockTimeout != null ? cfgCheckpointReadLockTimeout : (ctx.workersRegistry() != null ? ctx.workersRegistry().getSystemWorkerBlockedTimeout() : ctx.config().getFailureDetectionTimeout())); }
/** * @throws Exception If failed. */ @Test public void testSyntheticWorkerTermination() throws Exception { IgniteEx ignite = grid(0); WorkersRegistry registry = ignite.context().workersRegistry(); long fdTimeout = ignite.configuration().getFailureDetectionTimeout(); GridWorker worker = new GridWorker(ignite.name(), "test-worker", log, registry) { @Override protected void body() throws InterruptedException { Thread.sleep(fdTimeout / 2); } }; IgniteThread thread = new IgniteThread(worker); failureHndThreadName = null; thread.start(); thread.join(); assertTrue(GridTestUtils.waitForCondition(() -> thread.getName().equals(failureHndThreadName), fdTimeout * 2)); }
/** * @throws Exception If failed. */ @Test public void testNegativeParamValues() throws Exception { sysWorkerBlockedTimeout = -1L; checkpointReadLockTimeout = -85L; IgniteEx ignite = startGrid(0); ignite.cluster().active(true); WorkersRegistry reg = ignite.context().workersRegistry(); IgniteCacheDatabaseSharedManager dbMgr = ignite.context().cache().context().database(); FailureHandlingMxBean mBean = getMBean(); assertEquals(0L, reg.getSystemWorkerBlockedTimeout()); assertEquals(-85L, dbMgr.checkpointReadLockTimeout()); assertEquals(0L, mBean.getSystemWorkerBlockedTimeout()); assertEquals(-85L, mBean.getCheckpointReadLockTimeout()); }
IgniteEx igniteEx = (IgniteEx)ignite; builder.workerListener(igniteEx.context().workersRegistry());
/** * @param gridName Grid name. * @param name Thread name. * @param log Logger. */ protected Checkpointer(@Nullable String gridName, String name, IgniteLogger log) { super(gridName, name, log, cctx.kernalContext().workersRegistry()); scheduledCp = new CheckpointProgress(U.currentTimeMillis() + checkpointFreq); tmpWriteBuf = ByteBuffer.allocateDirect(pageSize()); tmpWriteBuf.order(ByteOrder.nativeOrder()); }
/** * @param log Logger. */ FileDecompressor(IgniteLogger log) { super(cctx.igniteInstanceName(), "wal-file-decompressor%" + cctx.igniteInstanceName(), log, cctx.kernalContext().workersRegistry()); }
/** * */ private FileArchiver(long lastAbsArchivedIdx, IgniteLogger log) { super(cctx.igniteInstanceName(), "wal-file-archiver%" + cctx.igniteInstanceName(), log, cctx.kernalContext().workersRegistry()); segmentAware.setLastArchivedAbsoluteIndex(lastAbsArchivedIdx); }