提交 73b30584 编写于 作者: V Vlad Ilyushchenko

fixing logger test

上级 16fa72f3
......@@ -24,7 +24,6 @@
package com.questdb.mp;
import com.questdb.log.Log;
import com.questdb.log.LogFactory;
import com.questdb.std.ObjHashSet;
import com.questdb.std.Os;
import com.questdb.std.Unsafe;
......@@ -34,8 +33,6 @@ import java.util.concurrent.atomic.AtomicInteger;
import java.util.concurrent.locks.LockSupport;
public class Worker extends Thread {
private static final Log LOG = LogFactory.getLog(Worker.class);
private final static long RUNNING_OFFSET = Unsafe.getFieldOffset(Worker.class, "running");
private static final long YIELD_THRESHOLD = 100000L;
private static final long SLEEP_THRESHOLD = 10000000L;
......@@ -43,15 +40,17 @@ public class Worker extends Thread {
private final ObjHashSet<? extends Job> jobs;
private final CountDownLatch haltLatch;
private final int affinity;
private final Log log;
@SuppressWarnings("FieldCanBeLocal")
private volatile int running = 0;
private volatile int fence;
public Worker(ObjHashSet<? extends Job> jobs, CountDownLatch haltLatch) {
this(jobs, haltLatch, -1);
this(jobs, haltLatch, -1, null);
}
public Worker(ObjHashSet<? extends Job> jobs, CountDownLatch haltLatch, int affinity) {
public Worker(ObjHashSet<? extends Job> jobs, CountDownLatch haltLatch, int affinity, Log log) {
this.log = log;
this.jobs = jobs;
this.haltLatch = haltLatch;
this.setName("questdb-worker-" + COUNTER.incrementAndGet());
......@@ -68,12 +67,18 @@ public class Worker extends Thread {
setupJobs();
if (affinity > -1) {
if (Os.setCurrentThreadAffinity(this.affinity) == 0) {
LOG.info().$("affinity set [cpu=").$(affinity).$(", name=").$(getName()).$(']').$();
if (log != null) {
log.info().$("affinity set [cpu=").$(affinity).$(", name=").$(getName()).$(']').$();
}
} else {
LOG.error().$("could not set affinity [cpu=").$(affinity).$(", name=").$(getName()).$(']').$();
if (log != null) {
log.error().$("could not set affinity [cpu=").$(affinity).$(", name=").$(getName()).$(']').$();
}
}
} else {
LOG.info().$("os scheduled [name=").$(getName()).$(']').$();
if (log != null) {
log.info().$("os scheduled [name=").$(getName()).$(']').$();
}
}
int n = jobs.size();
long uselessCounter = 0;
......
......@@ -287,7 +287,7 @@ public class LogFactoryTest {
}
// logger is async, we need to let it finish writing
Thread.sleep(2000);
Thread.sleep(4000);
} finally {
factory.haltThread();
......@@ -295,8 +295,6 @@ public class LogFactoryTest {
}
assertFileLength(expectedLogFile);
assertFileLength(expectedLogFile + ".1");
assertFileLength(expectedLogFile + ".2");
assertFileLength(expectedLogFile + ".3");
}
@Test
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册