[F] Start redis from python

This commit is contained in:
Azalea (on HyDEV-Daisy)
2022-05-16 02:16:49 -04:00
parent 7813bb75de
commit cb9abe7d3e
9 changed files with 38 additions and 67 deletions
-1
View File
@@ -10,7 +10,6 @@ dataset:
repo: /workspace/EECS-Research/data/1080/datasets repo: /workspace/EECS-Research/data/1080/datasets
fixminer: fixminer:
srcPath: /workspace/EECS-Research/fixminer_source
projectType : java projectType : java
datapath: /workspace/EECS-Research/data/1080 datapath: /workspace/EECS-Research/data/1080
+1 -1
View File
@@ -13,7 +13,7 @@ def bStats():
dbDir = join(DATA_PATH, 'redis') dbDir = join(DATA_PATH, 'redis')
portInner = '6399' portInner = '6399'
startDB(dbDir, portInner, PROJECT_TYPE) redis_start(dbDir, portInner, PROJECT_TYPE)
import redis import redis
+14 -9
View File
@@ -493,20 +493,24 @@ def get_class_weights(y):
return {cls: round(float(majority) / float(count), 2) for cls, count in counter.items()} return {cls: round(float(majority) / float(count), 2) for cls, count in counter.items()}
def stopDB(dbDir, portInner): def redis_shutdown(port: int):
# cmd = "bash " + dbDir + "/" + "stopServer.sh " + " " + portInner; print(f'Shutting down redis {port}...')
cmd = "redis-cli -p " + portInner + " shutdown save" cmd = f"redis-cli -p {port} shutdown save"
o, e = shellGitCheckout(cmd) o, e = shellGitCheckout(cmd)
logging.info(o) logging.info(o)
print('> Shutdown complete.')
def startDB(dbDir, portInner, projectType): def redis_start(root_dir: str, db_dir: str, port: int):
dbName = "dumps-" + projectType + ".rdb" Path(db_dir).mkdir(exist_ok=True, parents=True)
# portInner = '6380'
cmd = "bash " + dbDir + "/" + "startServer.sh " + dbDir + " " + dbName + " " + portInner; print(f'Starting redis {port}...')
cmd = f"redis-server {root_dir}/redis.conf --dir {db_dir} --dbfilename redis.rdb --port {port} --daemonize yes"
o, e = shellGitCheckout(cmd) o, e = shellGitCheckout(cmd)
ping = "redis-cli -p " + portInner + " ping" assert not e, e
ping = f"redis-cli -p {port} ping"
o, e = shellGitCheckout(ping) o, e = shellGitCheckout(ping)
m = re.search('PONG', o) m = re.search('PONG', o)
@@ -515,7 +519,8 @@ def startDB(dbDir, portInner, projectType):
logging.info('Waiting for checkout') logging.info('Waiting for checkout')
o, e = shellGitCheckout(ping) o, e = shellGitCheckout(ping)
m = re.search('PONG', o) m = re.search('PONG', o)
print(o)
print('> Redis started.')
def unique_everseen(iterable, key=None): def unique_everseen(iterable, key=None):
+12 -33
View File
@@ -32,10 +32,15 @@ def job_dataset4c():
core() core()
def job_start_redis():
db_dir = join(DATA_PATH, 'redis')
redis_shutdown(REDIS_PORT)
redis_start(ROOT_DIR, db_dir, REDIS_PORT)
def job_richedit(): def job_richedit():
dbDir = join(DATA_PATH, 'redis') job_start_redis()
stopDB(dbDir, REDIS_PORT) cmd = f"JAVA_HOME='{jdk8}' java -jar '{JAR_PATH}' {args.prop} RICHEDITSCRIPT"
cmd = f"JAVA_HOME='{jdk8}' java -jar '{JAR_PATH}' {args.prop} RICHEDITSCRIPT "
output = shellCallTemplate(cmd) output = shellCallTemplate(cmd)
logging.info(output) logging.info(output)
@@ -49,11 +54,8 @@ def job_actionSI():
def job_compare(): def job_compare():
# cmd = "mvn exec:java -f '/data/fixminer_source/' job_start_redis()
# -Dexec.mainClass='edu.lu.uni.serval.richedit.akka.compare.CompareTrees' cmd = f"JAVA_HOME='{jdk8}' java -jar '{JAR_PATH}' {args.prop} COMPARE"
# -Dexec.args='"+ " shape " + join(DATA_PATH,"redis") +" ALLdumps-gumInput.rdb " +
# "clusterl0-gumInputALL.rdb /data/richedit-core/python/data/richEditScript'"
cmd = f"JAVA_HOME='{jdk8}' java -jar '{JAR_PATH}' {args.prop} COMPARE "
output = shellCallTemplate4jar(cmd) output = shellCallTemplate4jar(cmd)
logging.info(output) logging.info(output)
@@ -62,7 +64,7 @@ def job_cluster():
from abstractPatch import cluster from abstractPatch import cluster
dbDir = join(DATA_PATH, 'redis') dbDir = join(DATA_PATH, 'redis')
startDB(dbDir, REDIS_PORT, PROJECT_TYPE) redis_start(dbDir, REDIS_PORT, PROJECT_TYPE)
cluster(join(DATA_PATH, 'actions'), join(DATA_PATH, 'pairs'), 'actions') cluster(join(DATA_PATH, 'actions'), join(DATA_PATH, 'pairs'), 'actions')
@@ -77,7 +79,7 @@ def job_clusterTokens():
from abstractPatch import cluster from abstractPatch import cluster
dbDir = join(DATA_PATH, 'redis') dbDir = join(DATA_PATH, 'redis')
startDB(dbDir, REDIS_PORT, PROJECT_TYPE) redis_start(dbDir, REDIS_PORT, PROJECT_TYPE)
cluster(join(DATA_PATH, 'tokens'), join(DATA_PATH, 'pairsToken'), 'tokens') cluster(join(DATA_PATH, 'tokens'), join(DATA_PATH, 'pairsToken'), 'tokens')
@@ -95,16 +97,6 @@ def job_indexClusters():
divideCoccis() divideCoccis()
removeDuplicates() removeDuplicates()
# from patchManyBugs import patchCore
# patchCore()
# # from patchManyBugs import patched
# # patched()
# from patchManyBugs import exportSosPatches
# exportSosPatches()
# from validate_manybugs import validate
#
# validate()
def job_patternOperations(): def job_patternOperations():
from sprinferIndex import patternOperations from sprinferIndex import patternOperations
@@ -117,27 +109,14 @@ def job_patchManyBugs():
buildAll() buildAll()
# from patchManyBugs import patchCore
# patchCore()
# # from patch_validate import patch_validate_mine
# # patch_validate_mine()
# from patchManyBugs import patched
# patched()
# from patchManyBugs import exportSosPatches
# exportSosPatches()
def job_patchIntro(): def job_patchIntro():
from sprinferIndex import patchCoreIntro from sprinferIndex import patchCoreIntro
patchCoreIntro() patchCoreIntro()
# from sprinferIndex import patched
# patched()
def job_validateIntro(): def job_validateIntro():
# from patch_validate_introClass2 import patch_validate
# patch_validate()
from test_patched_file import patch_validate from test_patched_file import patch_validate
patch_validate() patch_validate()
+3 -3
View File
@@ -12,7 +12,7 @@ def importTokens():
# portInner = '6380' # portInner = '6380'
# startDB(dbDir, portInner, "clusterl1-gumInputALL.rdb") # startDB(dbDir, portInner, "clusterl1-gumInputALL.rdb")
portInner = REDIS_PORT portInner = REDIS_PORT
startDB(dbDir, portInner, PROJECT_TYPE) redis_start(dbDir, portInner, PROJECT_TYPE)
import redis import redis
# import pairs # import pairs
@@ -48,7 +48,7 @@ def importAction():
# startDB(dbDir, portInner, "clusterl0-gumInputALL.rdb") # startDB(dbDir, portInner, "clusterl0-gumInputALL.rdb")
portInner = REDIS_PORT portInner = REDIS_PORT
startDB(dbDir, portInner, PROJECT_TYPE) redis_start(dbDir, portInner, PROJECT_TYPE)
import redis import redis
pairsShapes = join(DATA_PATH, 'pairs') pairsShapes = join(DATA_PATH, 'pairs')
@@ -140,7 +140,7 @@ def actionPairs():
dbDir = join(INNER_DATA_PATH, 'redis') dbDir = join(INNER_DATA_PATH, 'redis')
portInner = REDIS_PORT portInner = REDIS_PORT
startDB(dbDir, portInner, PROJECT_TYPE) redis_start(dbDir, portInner, PROJECT_TYPE)
import redis import redis
redis_db = redis.StrictRedis(host="localhost", port=portInner, db=0) redis_db = redis.StrictRedis(host="localhost", port=portInner, db=0)
View File
+1 -1
View File
@@ -266,7 +266,7 @@ def defects4jStats(isFixminer=False):
dbDir = join(DATA_PATH, 'redis') dbDir = join(DATA_PATH, 'redis')
portInner = REDIS_PORT portInner = REDIS_PORT
startDB(dbDir, portInner, PROJECT_TYPE ) redis_start(dbDir, portInner, PROJECT_TYPE)
import redis import redis
@@ -23,16 +23,9 @@ public class CompareTrees
{ {
private static final Logger log = LoggerFactory.getLogger(CompareTrees.class); private static final Logger log = LoggerFactory.getLogger(CompareTrees.class);
public static void main(String redisPath, String portDumps, String dumpsName, String numOfWorkers) throws Exception public static void main(String redisPath, String port, String dumpsName, String numOfWorkers) throws Exception
{ {
String port = portDumps; //"6399"; final JedisPool outerPool = new JedisPool(PoolBuilder.getPoolConfig(), "localhost", Integer.parseInt(port), 20000000);
CallShell cs = new CallShell();
String cmd = "bash " + redisPath + "/" + "startServer.sh" + " %s %s %s";
cmd = String.format(cmd, redisPath, dumpsName, Integer.valueOf(port));
log.info(cmd);
CallShell.runShell(cmd, port);
final JedisPool outerPool = new JedisPool(PoolBuilder.getPoolConfig(), "localhost", Integer.valueOf(port), 20000000);
HashMap<String, String> filenames = getFilenames(outerPool); HashMap<String, String> filenames = getFilenames(outerPool);
String job = getLevel(outerPool); String job = getLevel(outerPool);
@@ -46,12 +39,11 @@ public class CompareTrees
} }
IntStream stream = IntStream.range(0, compare.intValue()); IntStream stream = IntStream.range(0, compare.intValue());
String finalJob = job;
ProgressBar.wrap(stream.parallel(), "Task").forEach(m -> ProgressBar.wrap(stream.parallel(), "Task").forEach(m ->
{ {
newCoreCompare(finalJob, errorPairs, filenames, outerPool); newCoreCompare(job, errorPairs, filenames, outerPool);
} }
); );
log.info("End process"); log.info("End process");
} }
@@ -33,10 +33,6 @@ public class EnhancedASTDiff
String parameters = String.format("\nInput path %s", inputPath); String parameters = String.format("\nInput path %s", inputPath);
log.info(parameters); log.info(parameters);
// Run Redis
String cmd = String.format("redis-server %s/redis.conf --dir %s --dbfilename redis.rdb --port %s --daemonize yes", srcPath, dbDir, redisPort);
CallShell.runShell(cmd, redisPort);
JedisPool innerPool = new JedisPool(PoolBuilder.getPoolConfig(), "127.0.0.1", Integer.parseInt(redisPort), 20000000); JedisPool innerPool = new JedisPool(PoolBuilder.getPoolConfig(), "127.0.0.1", Integer.parseInt(redisPort), 20000000);
boolean isJava = projectType.equals("java"); boolean isJava = projectType.equals("java");