diff --git a/common/src/main/java/com/alibaba/fescar/common/thread/RejectedPolicys.java b/common/src/main/java/com/alibaba/fescar/common/thread/RejectedPolicys.java
deleted file mode 100644
index bfaaf672236a62ce20665f3e63aba2431f44f524..0000000000000000000000000000000000000000
--- a/common/src/main/java/com/alibaba/fescar/common/thread/RejectedPolicys.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- *  Copyright 1999-2018 Alibaba Group Holding Ltd.
- *
- *  Licensed under the Apache License, Version 2.0 (the "License");
- *  you may not use this file except in compliance with the License.
- *  You may obtain a copy of the License at
- *
- *       http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-
-package com.alibaba.fescar.common.thread;
-
-import java.util.concurrent.BlockingQueue;
-import java.util.concurrent.RejectedExecutionHandler;
-import java.util.concurrent.ThreadPoolExecutor;
-
-/**
- * policys for RejectedExecutionHandler
- *
- * Created by guoyao on 2019/2/26.
- */
-public final class RejectedPolicys {
-
-    /**
-     * when rejected happened ,add the new task and run the oldest task
-     *
-     * @return rejected execution handler
-     */
-    public static RejectedExecutionHandler runsOldestTaskPolicy() {
-        return new RejectedExecutionHandler() {
-            @Override
-            public void rejectedExecution(Runnable r, ThreadPoolExecutor executor) {
-                if (executor.isShutdown()) {
-                    return;
-                }
-                BlockingQueue<Runnable> workQueue = executor.getQueue();
-                Runnable firstWork = workQueue.poll();
-                boolean newTaskAdd = workQueue.offer(r);
-                if (firstWork != null) {
-                    firstWork.run();
-                }
-                if (!newTaskAdd) {
-                    executor.execute(r);
-                }
-            }
-        };
-    }
-}
diff --git a/common/src/test/java/com/alibaba/fescar/common/thread/RejectedPolicysTest.java b/common/src/test/java/com/alibaba/fescar/common/thread/RejectedPolicysTest.java
deleted file mode 100644
index 64e90e715102c147ce9a62cd17d023f6e64aa49b..0000000000000000000000000000000000000000
--- a/common/src/test/java/com/alibaba/fescar/common/thread/RejectedPolicysTest.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- *  Copyright 1999-2018 Alibaba Group Holding Ltd.
- *
- *  Licensed under the Apache License, Version 2.0 (the "License");
- *  you may not use this file except in compliance with the License.
- *  You may obtain a copy of the License at
- *
- *       http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- */
-
-package com.alibaba.fescar.common.thread;
-
-import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.LinkedBlockingQueue;
-import java.util.concurrent.ThreadPoolExecutor;
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.atomic.AtomicInteger;
-
-import org.junit.Test;
-
-import static org.assertj.core.api.Assertions.assertThat;
-
-/**
- * Created by guoyao on 2019/2/26.
- */
-public class RejectedPolicysTest {
-
-    private final int DEFAULT_CORE_POOL_SIZE = 1;
-    private final int DEFAULT_KEEP_ALIVE_TIME = 10;
-    private final int MAX_QUEUE_SIZE = 1;
-
-    /**
-     * Test runs oldest task policy.
-     *
-     * @throws Exception the exception
-     */
-    @Test
-    public void testRunsOldestTaskPolicy() throws Exception {
-        AtomicInteger atomicInteger = new AtomicInteger();
-        ThreadPoolExecutor poolExecutor =
-            new ThreadPoolExecutor(DEFAULT_CORE_POOL_SIZE, DEFAULT_CORE_POOL_SIZE, DEFAULT_KEEP_ALIVE_TIME,
-                TimeUnit.MILLISECONDS,
-                new LinkedBlockingQueue(MAX_QUEUE_SIZE),
-                new NamedThreadFactory("OldestRunsPolicy", DEFAULT_CORE_POOL_SIZE),
-                RejectedPolicys.runsOldestTaskPolicy());
-        CountDownLatch downLatch1 = new CountDownLatch(1);
-        CountDownLatch downLatch2 = new CountDownLatch(1);
-        CountDownLatch downLatch3 = new CountDownLatch(1);
-        //task1
-        poolExecutor.execute(new Runnable() {
-            @Override
-            public void run() {
-                try {
-                    //wait the oldest task of queue count down
-                    downLatch1.await();
-                } catch (InterruptedException e) {
-                    e.printStackTrace();
-                }
-                atomicInteger.getAndAdd(1);
-            }
-        });
-        assertThat(atomicInteger.get()).isEqualTo(0);
-        //task2
-        poolExecutor.execute(new Runnable() {
-            @Override
-            public void run() {
-                // run second
-                atomicInteger.getAndAdd(2);
-            }
-        });
-        //task3
-        poolExecutor.execute(new Runnable() {
-            @Override
-            public void run() {
-                downLatch2.countDown();
-                //task3 run
-                atomicInteger.getAndAdd(3);
-                downLatch3.countDown();
-            }
-        });
-        //only the task2 run which is the oldest task of queue
-        assertThat(atomicInteger.get()).isEqualTo(2);
-        downLatch1.countDown();
-        downLatch2.await();
-        //wait task3 run +3
-        downLatch3.await();
-        //run task3
-        assertThat(atomicInteger.get()).isEqualTo(6);
-
-    }
-}