Author: bleny Date: 2010-07-22 10:22:04 +0200 (Thu, 22 Jul 2010) New Revision: 105 Url: http://nuiton.org/repositories/revision/diswork/105 Log: bugfix, refactor config FS Modified: trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/DisworkConfig.java trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/DisworkDaemon.java trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/DisworkDaemonRunner.java trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/DisworkSimpleClient.java trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/WorkersManager.java trunk/diswork-daemon/src/main/resources/log4j.properties trunk/diswork-daemon/src/test/java/org/nuiton/diswork/daemon/DisworkDaemonMultipleNodesTest.java trunk/diswork-daemon/src/test/resources/log4j.properties trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/Demo.java trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/DisworkFileSystem.java trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/DisworkFileSystemConfig.java trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/DisworkFileSystemException.java trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/peerunit/DisworkFileSystemTest.java trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/storage/Storage.java trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/storage/package-info.java trunk/diswork-fs/src/test/java/org/nuiton/diswork/fs/DisworkFileSystemInMemoryTest.java trunk/diswork-fs/src/test/java/org/nuiton/diswork/fs/DisworkFileSystemKademliaTest.java trunk/diswork-fs/src/test/java/org/nuiton/diswork/fs/DisworkFileSystemPastryTest.java trunk/diswork-fs/src/test/java/org/nuiton/diswork/fs/storage/KademliaDisworkMapTest.java trunk/diswork-fs/src/test/resources/log4j.properties Modified: trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/DisworkConfig.java =================================================================== --- trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/DisworkConfig.java 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/DisworkConfig.java 2010-07-22 08:22:04 UTC (rev 105) @@ -129,7 +129,7 @@ setOption("diswork.http_front_end.start", "true"); setOption("diswork.http_front_end.port", "8080"); - setFileSystemConfig(DisworkFileSystemConfig.newKademliaDisworkConfig()); + setFileSystemConfig(new DisworkFileSystemConfig()); Modified: trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/DisworkDaemon.java =================================================================== --- trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/DisworkDaemon.java 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/DisworkDaemon.java 2010-07-22 08:22:04 UTC (rev 105) @@ -417,7 +417,17 @@ public void submitApplication(String applicationName, String applicationVersion, InputStream applicationData) throws DisworkException { - + + if (applicationName == null) { + throw new NullPointerException("application name is null"); + } + if (applicationVersion == null) { + throw new NullPointerException("application version can't be null"); + } + if (applicationData == null) { + throw new NullPointerException("application data can't be null"); + } + // the place where dependency will be stored String path = getPathForDependency(applicationName, applicationVersion); @@ -491,6 +501,10 @@ * @throws DisworkException */ public void deleteJob(JobDescription jobDescription) throws DisworkException { + if (jobDescription == null) { + throw new NullPointerException("job is null"); + } + try { String jobPath = getPathForJob(jobDescription); if (fileSystem.exists(jobPath)) { @@ -506,7 +520,11 @@ } public void submitJob(JobDescription jobDescription) throws DisworkException { + if (jobDescription == null) { + throw new NullPointerException("job is null"); + } + // check all dependencies are provided for (String name : jobDescription.getInput()) { if (!jobDescription.getInputData().containsKey(name) && @@ -606,18 +624,34 @@ } public boolean isStarted(JobDescription job) throws DisworkException { + if (job == null) { + throw new NullPointerException("job is null"); + } + return checkLogContains(job, LOG_KEYWORD_STARTED); } public boolean isFinished(JobDescription job) throws DisworkException { + if (job == null) { + throw new NullPointerException("job is null"); + } + return checkLogContains(job, LOG_KEYWORD_FINISHED); } public boolean isSuccessful(JobDescription job) throws DisworkException { + if (job == null) { + throw new NullPointerException("job is null"); + } + return checkLogContains(job, LOG_KEYWORD_DONE); } public boolean isFailed(JobDescription job) throws DisworkException { + if (job == null) { + throw new NullPointerException("job is null"); + } + return isFinished(job) && !isSuccessful(job); } @@ -631,6 +665,11 @@ */ public Map<String, InputStream> getResults(JobDescription job) throws DisworkException { + + if (job == null) { + throw new NullPointerException("job is null"); + } + if (isFinished(job)) { Map<String, InputStream> results = new HashMap<String, InputStream>(); for (String fileName : job.getOutput()) { @@ -684,7 +723,6 @@ Long totalUptime = getTotalUptime(); log.info("saving total uptime: " + totalUptime); config.setTotalUptime(totalUptime); - //config.saveForUser(); try { fileSystem.close(); @@ -757,7 +795,6 @@ log.info("global stats file doesn't exists, creating one"); Map<String, Long> stats = new HashMap<String, Long>(); - Long availableProcessors = 0L; Map<String, String> result = new HashMap<String, String>(); List<String> homeDirs = fileSystem.readDirectory(HOME); Modified: trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/DisworkDaemonRunner.java =================================================================== --- trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/DisworkDaemonRunner.java 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/DisworkDaemonRunner.java 2010-07-22 08:22:04 UTC (rev 105) @@ -76,11 +76,9 @@ */ protected void init(String[] args) throws DisworkException { config = new DisworkConfig(); - config.setFileSystemConfig( - DisworkFileSystemConfig.newKademliaDisworkConfig()); + config.setFileSystemConfig(new DisworkFileSystemConfig()); if (args.length == 2) { - config.setFileSystemConfig( - DisworkFileSystemConfig.newKademliaDisworkConfig(args[0], + config.setFileSystemConfig(new DisworkFileSystemConfig(args[0], Integer.parseInt(args[1]))); } config.setActivityStrategy("unlimited"); Modified: trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/DisworkSimpleClient.java =================================================================== --- trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/DisworkSimpleClient.java 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/DisworkSimpleClient.java 2010-07-22 08:22:04 UTC (rev 105) @@ -133,8 +133,7 @@ DisworkConfig config = new DisworkConfig(); Integer port = Integer.parseInt(args[1]); System.out.println("port = " + port); - config.setFileSystemConfig( - DisworkFileSystemConfig.newKademliaDisworkConfig(args[0], port)); + config.setFileSystemConfig(new DisworkFileSystemConfig(args[0], port)); config.setActivityStrategy("none"); config.setUsedPort(30000); config.setStartHttpFrontend(false); Modified: trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/WorkersManager.java =================================================================== --- trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/WorkersManager.java 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-daemon/src/main/java/org/nuiton/diswork/daemon/WorkersManager.java 2010-07-22 08:22:04 UTC (rev 105) @@ -442,6 +442,7 @@ OutputReader outputReader = new OutputReader(currentProcess.getInputStream(), outputFileStream); + log.info("starting job now"); outputReader.start(); // plugging a file on the standard input @@ -472,7 +473,6 @@ protected void stageOutputFiles() throws DisworkSystemException, BadJobException { // output file staging for (String fileName : currentJob.getOutput()) { - log.info("staging file " + fileName); File localCopy = new File(currentJobDir, fileName); if (localCopy.exists()) { @@ -487,7 +487,8 @@ if (fileSystem.exists(filePath)) { fileSystem.delete(filePath); } - + + log.info("staging file " + fileName); fileSystem.write(filePath, localCopyStream); } catch (FileNotFoundException e) { // file exists, tested just before @@ -498,7 +499,7 @@ IOUtils.closeQuietly(localCopyStream); } } else { - throw new BadJobException("job " + currentJob + " do not produces a file" + fileName); + log.warn("job " + currentJob + " do not produces a file " + fileName); } } } @@ -549,6 +550,7 @@ currentJobDir = FileUtil.createTempDirectory("job", "", new File(config.getTempDirectory())); currentJobDir.mkdirs(); + log.info("created directory " + currentJobDir.getAbsolutePath()); } catch (IOException e) { log.error("unable to create temp directory for job", e); throw new LocalFileException("unable to create temp directory for job", e); @@ -571,7 +573,9 @@ try { // wait for the process to return + log.info("waiting for the end of the process"); int returnValue = currentProcess.waitFor(); + log.info("process ended"); // process returned and was not interrupted, output files // are interesting in both successful and failure case @@ -584,8 +588,15 @@ // job is successful jobIsSuccessful(currentJobPath); } else { - // job is a failure - jobIsFailed(currentJobPath); + // check if it's due to a destroy call + if (shouldStop) { + // process has returned because stop() called Process.destroy() + // so it's not job's fault and should not be considered has a failure + jobIsInterrupted(currentJobPath); + } else { + // job is a failure, the process returned an error + jobIsFailed(currentJobPath); + } } } catch (InterruptedException e) { // job was interrupted maybe by a call to WokersManager#stop() @@ -787,8 +798,8 @@ String newJobPath = DisworkDaemon.DONE + "/" + DisworkDaemon.newJobLinkName(); try { // FIXME 20100720 bleny really useful ? - log.info("moving " + jobPath + " to " + newJobPath); fileSystem.move(jobPath, newJobPath); + log.info("moved " + jobPath + " to " + newJobPath); } catch (DisworkFileSystemException e) { log.error("error while moving job link", e); throw new DisworkSystemException("error while moving job link", e); @@ -809,9 +820,9 @@ String newJobPath = newDir + "/" + DisworkDaemon.newJobLinkName(); try { - log.info("moving " + jobPath + " to " + newJobPath); // FIXME 20100720 bleny really useful to move to FAILED_3, a dir never read by anyone fileSystem.move(jobPath, newJobPath); + log.info("moved " + jobPath + " to " + newJobPath); } catch (DisworkFileSystemException e) { log.error("error while moving job link", e); throw new DisworkSystemException("error while moving job link", e); @@ -850,6 +861,8 @@ protected void jobIsStarted(String jobPath) throws DisworkSystemException { log(jobPath, DisworkDaemon.LOG_KEYWORD_STARTED); } + + protected static final boolean NEVER_STOP_MODE = false; /** * Until shouldStop become true, check {@link WorkersManager#flag} value. @@ -894,8 +907,12 @@ } } catch (DisworkException e) { log.warn("exception caught by worker", e); - // no exception is thrown because we want the worker to continue - // whatever occurs + if (NEVER_STOP_MODE) { + // no exception is thrown because we want the worker to continue + // whatever occurs + } else { + throw new RuntimeException(e); + } } } } @@ -930,9 +947,11 @@ /** read an application from the file system and use a cache * @throws DisworkSystemException * @throws LocalFileException */ - protected File getApplicationData(String applicationName, - String applicationVersion) - throws DisworkException { + protected synchronized File getApplicationData(String applicationName, + String applicationVersion) + throws DisworkException { + // method is synchronized to prevent multiple workers to download + // the same application at the same time if (!applicationCache.exists()) { applicationCache.mkdirs(); } Modified: trunk/diswork-daemon/src/main/resources/log4j.properties =================================================================== --- trunk/diswork-daemon/src/main/resources/log4j.properties 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-daemon/src/main/resources/log4j.properties 2010-07-22 08:22:04 UTC (rev 105) @@ -4,6 +4,7 @@ log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d %5p [%t] (%F:%L) %M - %m%n + # package level -log4j.logger.org.nuiton.diswork.fs.storage.KademliaDisworkMap=INFO -log4j.logger.org.nuiton.diswork.daemon=INFO \ No newline at end of file +log4j.logger.org.nuiton.diswork.daemon=DEBUG +log4j.logger.org.nuiton.diswork=INFO \ No newline at end of file Modified: trunk/diswork-daemon/src/test/java/org/nuiton/diswork/daemon/DisworkDaemonMultipleNodesTest.java =================================================================== --- trunk/diswork-daemon/src/test/java/org/nuiton/diswork/daemon/DisworkDaemonMultipleNodesTest.java 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-daemon/src/test/java/org/nuiton/diswork/daemon/DisworkDaemonMultipleNodesTest.java 2010-07-22 08:22:04 UTC (rev 105) @@ -43,7 +43,7 @@ // config.setActivityStrategy("none"); config2 = newConfig(); - config2.setBootstrapIp(DisworkFileSystemConfig.getIp()); + config2.setBootstrapIp(DisworkFileSystemConfig.getLocalIp()); config2.setBootstrapPort(config.getUsedPort()); config2.setActivityStrategy("unlimited"); } Modified: trunk/diswork-daemon/src/test/resources/log4j.properties =================================================================== --- trunk/diswork-daemon/src/test/resources/log4j.properties 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-daemon/src/test/resources/log4j.properties 2010-07-22 08:22:04 UTC (rev 105) @@ -4,7 +4,7 @@ log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d %5p [%t] (%F:%L) %M - %m%n + # package level -log4j.logger.org.nuiton.diswork.fs.storage.KademliaDisworkMap=INFO log4j.logger.org.nuiton.diswork.daemon=DEBUG -log4j.logger.org.planx.xmlstore.routing.messaging.MessageServer=INFO \ No newline at end of file +log4j.logger.org.nuiton.diswork=INFO \ No newline at end of file Modified: trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/Demo.java =================================================================== --- trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/Demo.java 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/Demo.java 2010-07-22 08:22:04 UTC (rev 105) @@ -195,8 +195,7 @@ */ public static void main(String[] args) throws Exception { if (args.length == 2) { - DisworkFileSystemConfig config = - DisworkFileSystemConfig.newKademliaDisworkConfig(); + DisworkFileSystemConfig config = new DisworkFileSystemConfig(); config.setOption("diswork.fs.use_port", args[1]); fileSystem = new DisworkFileSystem(config); if ("producer".equals(args[0])) { @@ -209,8 +208,7 @@ t.start(); } } else if (args.length == 4) { - DisworkFileSystemConfig config = - DisworkFileSystemConfig.newKademliaDisworkConfig(); + DisworkFileSystemConfig config = new DisworkFileSystemConfig(); config.setOption("diswork.fs.use_port", args[1]); config.setOption("diswork.fs.bootstrap.ip", args[2]); config.setOption("diswork.fs.bootstrap.port", args[3]); Modified: trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/DisworkFileSystem.java =================================================================== --- trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/DisworkFileSystem.java 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/DisworkFileSystem.java 2010-07-22 08:22:04 UTC (rev 105) @@ -583,7 +583,7 @@ } } - log.info("readDirectory " + path + " returns " + result.size() + " results"); + log.debug("readDirectory " + path + " returns " + result.size() + " results"); return result; } @@ -776,7 +776,7 @@ */ protected String walk(String path) throws DisworkFileSystemException { String result = walk(path, null, null); - log.info("walking to " + path + " returns " + result); + log.debug("walking to " + path + " returns " + result); return result; } @@ -817,7 +817,7 @@ String tail = path.substring(current.length()); String p = EntryUtil.getNameFromPath(tail); - log.info("in final dir " + current + ", looking for " + p); + log.trace("in final dir " + current + ", looking for " + p); String entry = EntryUtil.findEntryInDirectory(content, p); result = entry; @@ -835,12 +835,12 @@ tail = path.substring(current.length() + 1); } - log.debug("current = " + current); - log.debug("tail = " + tail); + log.trace("current = " + current); + log.trace("tail = " + tail); String[] elementsNames = tail.split(EntryUtil.PATH_SEPARATOR); String p = elementsNames[0]; - log.info("in intermediate dir " + current + ", looking for " + p); + log.trace("in intermediate dir " + current + ", looking for " + p); // updating current for recursion if (current.equals(EntryUtil.ROOT_DIRECTORY)) { Modified: trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/DisworkFileSystemConfig.java =================================================================== --- trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/DisworkFileSystemConfig.java 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/DisworkFileSystemConfig.java 2010-07-22 08:22:04 UTC (rev 105) @@ -51,11 +51,11 @@ * a new port and the local IP. * * <pre> - * c = newDisworkConfig(); // create a config for a bootstrap node - * c2 = newDisworkConfig(c.getUsedPort()) // creates a config for a node that - * // will bootstrap by joining the - * // first node - * c3 = newDisworkConfig(c.getUsedPort()) + * c = DisworkFileSystemConfig(); // create a config for a bootstrap node + * c2 = DisworkFileSystemConfig(c.getUsedPort()) // creates a config for a node that + * // will bootstrap by joining the + * // first node + * c3 = DisworkFileSystemConfig(c.getUsedPort()) * </pre> */ public class DisworkFileSystemConfig extends ApplicationConfig { @@ -80,7 +80,7 @@ * @return * @throws UnknownHostException */ - public static String getIp() { + public static String getLocalIp() { InetAddress result = null; try { result = InetAddress.getLocalHost(); @@ -102,10 +102,23 @@ } public DisworkFileSystemConfig() { + this(null); + } + + public DisworkFileSystemConfig(Integer bootstrapPort) { + this(bootstrapPort == null ? null : getLocalIp(), bootstrapPort); + } + + public DisworkFileSystemConfig(String bootstrapIP, Integer bootstrapPort) { setDefaultOption("diswork.fs.blocks_size", "10485760"); // 10 MiB - setDefaultOption("diswork.fs.map_type", "inmemory"); - setDefaultOption("diswork.fs.use_port", port.toString()); + setDefaultOption("diswork.fs.map_type", "kademlia"); + setDefaultOption("diswork.fs.use_port", getPort().toString()); + + if (bootstrapIP != null) { + setOption("diswork.fs.bootstrap.ip", bootstrapIP); + setOption("diswork.fs.bootstrap.port", bootstrapPort.toString()); + } } public void setBlockSize(Integer size) { @@ -144,60 +157,7 @@ return getOption("diswork.fs.map_type"); } - /** - * returns a @link {@link DisworkFileSystemConfig} ready to be use as a - * config for a single-node instance of DisworkFS - * @return - * @throws UnknownHostException - */ - public static DisworkFileSystemConfig newPastryDisworkConfig() { - return newPastryDisworkConfig(null); + public void setMapType(String mapType) { + setOption("diswork.fs.map_type", mapType); } - - /** - * returns a @link {@link DisworkFileSystemConfig} ready to be use as a - * config for a multiple-node instance of DisworkFS on a same machine. - * @param bootstrapPort the port on the same machine where another node can - * be found to bootstrap - * @return a complete config - * @throws UnknownHostException - */ - public static DisworkFileSystemConfig - newPastryDisworkConfig(Integer bootstrapPort) { - DisworkFileSystemConfig result = new DisworkFileSystemConfig(); - String port = getPort().toString(); - String ip = getIp(); - result.setOption("diswork.fs.map_type", "pastry"); - result.setOption("diswork.fs.use_port", port); - result.setOption("diswork.fs.bootstrap.ip", ip); - if (bootstrapPort == null) { - result.setOption("diswork.fs.bootstrap.port", port); - } else { - result.setOption("diswork.fs.bootstrap.port", bootstrapPort.toString()); - } - return result; - } - - public static DisworkFileSystemConfig newKademliaDisworkConfig() { - return newKademliaDisworkConfig(null); - } - - public static DisworkFileSystemConfig - newKademliaDisworkConfig (Integer bootstrapPort) { - return newKademliaDisworkConfig(getIp(), bootstrapPort); - } - - public static DisworkFileSystemConfig - newKademliaDisworkConfig (String bootstrapIp, - Integer bootstrapPort) { - DisworkFileSystemConfig result = new DisworkFileSystemConfig(); - String port = getPort().toString(); - result.setOption("diswork.fs.map_type", "kademlia"); - result.setOption("diswork.fs.use_port", port); - if (bootstrapPort != null) { - result.setOption("diswork.fs.bootstrap.port", bootstrapPort.toString()); - result.setOption("diswork.fs.bootstrap.ip", bootstrapIp); - } - return result; - } } Modified: trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/DisworkFileSystemException.java =================================================================== --- trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/DisworkFileSystemException.java 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/DisworkFileSystemException.java 2010-07-22 08:22:04 UTC (rev 105) @@ -69,23 +69,22 @@ /** the symlink point to a target that is not valid */ INVALID_TARGET } + + protected Type type; - protected Type type; - public DisworkFileSystemException(Type type, String message, Throwable cause) { - super(message, cause); + super("[" + type + "]" + message, cause); this.type = type; } public DisworkFileSystemException(Type type, String message) { - super(message); + super("[" + type + "]" + message); this.type = type; } public DisworkFileSystemException(Type type, Throwable cause) { - super(cause); - this.type = type; + this(type, "", cause); } public Type getType() { Modified: trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/peerunit/DisworkFileSystemTest.java =================================================================== --- trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/peerunit/DisworkFileSystemTest.java 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/peerunit/DisworkFileSystemTest.java 2010-07-22 08:22:04 UTC (rev 105) @@ -24,8 +24,8 @@ */ package org.nuiton.diswork.fs.peerunit; +import static fr.inria.peerunit.test.assertion.Assert.assertEquals; import static fr.inria.peerunit.test.assertion.Assert.assertTrue; -import static fr.inria.peerunit.test.assertion.Assert.assertEquals; import static fr.inria.peerunit.test.assertion.Assert.fail; import java.io.ByteArrayInputStream; @@ -55,15 +55,15 @@ @TestStep(range="0",timeout=1000000, order = 0) public void testConnect() throws Exception { - DisworkFileSystemConfig config = - DisworkFileSystemConfig.newKademliaDisworkConfig(); + DisworkFileSystemConfig config = new DisworkFileSystemConfig(); + config.setMapType("kademlia"); config.setUsedPort(31000); fileSystem = new DisworkFileSystem(config); config.printConfig(); - log.info("i bootstrap : " + DisworkFileSystemConfig.getIp() + ":" + 31000); - put(0, DisworkFileSystemConfig.getIp()); + log.info("i bootstrap : " + DisworkFileSystemConfig.getLocalIp() + ":" + 31000); + put(0, DisworkFileSystemConfig.getLocalIp()); put(1, 31000); } @@ -72,8 +72,8 @@ public void testConnect1() throws Exception { // Integer myPort = port + getId(); Integer myPort = 31001; - DisworkFileSystemConfig config = - DisworkFileSystemConfig.newKademliaDisworkConfig(); + DisworkFileSystemConfig config = new DisworkFileSystemConfig(); + config.setMapType("kademlia"); config.setUsedPort(myPort); // get bootstrap info Modified: trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/storage/Storage.java =================================================================== --- trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/storage/Storage.java 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/storage/Storage.java 2010-07-22 08:22:04 UTC (rev 105) @@ -310,7 +310,7 @@ if (lockAcquired) { try { - log.info("lock on " + key + " acquired"); + log.debug("lock on " + key + " acquired"); // here, we know we can write or an exception // would have been thrown earlier @@ -419,7 +419,7 @@ */ public boolean tryToLock(String key) { // trying to acquire lock - log.info("trying to acquire a lock on " + key); + log.debug("trying to acquire a lock on " + key); String lockKey = keyToLockKey(key); byte[] lock = map.put(lockKey, EntryUtil.newLock(ownerId)); @@ -473,8 +473,8 @@ if (obsoleteMetaBlock != null) { String[] obsoleteBlocksIds = EntryUtil.getBlockIdsFromMetaBlock(obsoleteMetaBlock); - log.info("removing " + obsoleteBlocksIds.length + - " old blocks"); + log.debug("removing " + obsoleteBlocksIds.length + + " old blocks"); for (String obsoleteBlockId : obsoleteBlocksIds) { removeKey(obsoleteBlockId); } Modified: trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/storage/package-info.java =================================================================== --- trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/storage/package-info.java 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-fs/src/main/java/org/nuiton/diswork/fs/storage/package-info.java 2010-07-22 08:22:04 UTC (rev 105) @@ -24,7 +24,7 @@ */ /** * <p> - * This package provides to {@link org.nuiton.disworkfs.DisworkFileSystem} a + * This package provides to {@link org.nuiton.diswork.fs.DisworkFileSystem} a * way to persistently store data. This is done by the * {@link org.nuiton.diswork.fs.storage.Storage} class * which permit to store different type of data. @@ -224,7 +224,7 @@ * when needed (see * {@link org.nuiton.diswork.fs.storage.Storage.SplitBlocksInputStream}). * When writing, data are split in blocks of a maximum configurable size - * (see {@link org.nuiton.disworkfs.DisworkFileSystemConfig}). + * (see {@link org.nuiton.diswork.fs.DisworkFileSystemConfig}). * </p> */ Modified: trunk/diswork-fs/src/test/java/org/nuiton/diswork/fs/DisworkFileSystemInMemoryTest.java =================================================================== --- trunk/diswork-fs/src/test/java/org/nuiton/diswork/fs/DisworkFileSystemInMemoryTest.java 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-fs/src/test/java/org/nuiton/diswork/fs/DisworkFileSystemInMemoryTest.java 2010-07-22 08:22:04 UTC (rev 105) @@ -30,8 +30,6 @@ import org.junit.Before; import org.junit.Test; -import org.nuiton.diswork.fs.DisworkFileSystem; -import org.nuiton.diswork.fs.DisworkFileSystemConfig; public class DisworkFileSystemInMemoryTest extends AbstractDisworkFileSystemTest { @@ -43,7 +41,7 @@ public void setUpFileSystem() throws Exception { // finally, initiate the fileSystem DisworkFileSystemConfig disworkConfig = new DisworkFileSystemConfig(); - disworkConfig.setOption("diswork.fs.map_type", "inmemory"); + disworkConfig.setMapType("inmemory"); fileSystem = new DisworkFileSystem(disworkConfig); } Modified: trunk/diswork-fs/src/test/java/org/nuiton/diswork/fs/DisworkFileSystemKademliaTest.java =================================================================== --- trunk/diswork-fs/src/test/java/org/nuiton/diswork/fs/DisworkFileSystemKademliaTest.java 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-fs/src/test/java/org/nuiton/diswork/fs/DisworkFileSystemKademliaTest.java 2010-07-22 08:22:04 UTC (rev 105) @@ -47,8 +47,8 @@ @Before public void setUpFileSystem() throws Exception { // finally, initiate the fileSystem - DisworkFileSystemConfig disworkConfig1 = - DisworkFileSystemConfig.newKademliaDisworkConfig(); + DisworkFileSystemConfig disworkConfig1 = new DisworkFileSystemConfig(); + disworkConfig1.setMapType("kademlia"); bootstrapPort = disworkConfig1.getUsedPort(); fileSystem = new DisworkFileSystem(disworkConfig1); } @@ -56,8 +56,8 @@ @Test public void testMultipleNodes1() throws Exception { - DisworkFileSystemConfig disworkConfig = - DisworkFileSystemConfig.newKademliaDisworkConfig(bootstrapPort); + DisworkFileSystemConfig disworkConfig = new DisworkFileSystemConfig(bootstrapPort); + disworkConfig.setMapType("kademlia"); DisworkFileSystem fileSystem2 = new DisworkFileSystem(disworkConfig); fileSystem.write("/file", new FileInputStream(randomFilePath)); @@ -66,8 +66,8 @@ @Test public void testMultipleNodes2() throws Exception { - DisworkFileSystemConfig disworkConfig = - DisworkFileSystemConfig.newKademliaDisworkConfig(bootstrapPort); + DisworkFileSystemConfig disworkConfig = new DisworkFileSystemConfig(bootstrapPort); + disworkConfig.setMapType("kademlia"); DisworkFileSystem fileSystem2 = new DisworkFileSystem(disworkConfig); InputStream source = null; @@ -109,8 +109,8 @@ @Test public void testMultipleNodes3() throws Exception { - DisworkFileSystemConfig disworkConfig = - DisworkFileSystemConfig.newKademliaDisworkConfig(bootstrapPort); + DisworkFileSystemConfig disworkConfig = new DisworkFileSystemConfig(bootstrapPort); + disworkConfig.setMapType("kademlia"); DisworkFileSystem fileSystem2 = new DisworkFileSystem(disworkConfig); fileSystem.createDirectory("/mydir"); Modified: trunk/diswork-fs/src/test/java/org/nuiton/diswork/fs/DisworkFileSystemPastryTest.java =================================================================== --- trunk/diswork-fs/src/test/java/org/nuiton/diswork/fs/DisworkFileSystemPastryTest.java 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-fs/src/test/java/org/nuiton/diswork/fs/DisworkFileSystemPastryTest.java 2010-07-22 08:22:04 UTC (rev 105) @@ -35,8 +35,6 @@ import org.apache.commons.io.IOUtils; import org.junit.Before; import org.junit.Test; -import org.nuiton.diswork.fs.DisworkFileSystem; -import org.nuiton.diswork.fs.DisworkFileSystemConfig; public class DisworkFileSystemPastryTest extends AbstractDisworkFileSystemTest { @@ -49,7 +47,8 @@ @Before public void setUpFileSystem() throws Exception { // finally, initiate the fileSystem - DisworkFileSystemConfig disworkConfig1 = DisworkFileSystemConfig.newPastryDisworkConfig(); + DisworkFileSystemConfig disworkConfig1 = new DisworkFileSystemConfig(); + disworkConfig1.setMapType("pastry"); bootstrapPort = disworkConfig1.getUsedPort(); fileSystem = new DisworkFileSystem(disworkConfig1); @@ -58,7 +57,8 @@ @Test public void testMultipleNodes1() throws Exception { - DisworkFileSystemConfig disworkConfig = DisworkFileSystemConfig.newPastryDisworkConfig(bootstrapPort); + DisworkFileSystemConfig disworkConfig = new DisworkFileSystemConfig(bootstrapPort); + disworkConfig.setMapType("pastry"); DisworkFileSystem fileSystem2 = new DisworkFileSystem(disworkConfig); assertTrue(fileSystem.exists("/")); @@ -67,7 +67,8 @@ @Test public void testMultipleNodes2() throws Exception { - DisworkFileSystemConfig disworkConfig = DisworkFileSystemConfig.newPastryDisworkConfig(bootstrapPort); + DisworkFileSystemConfig disworkConfig = new DisworkFileSystemConfig(bootstrapPort); + disworkConfig.setMapType("pastry"); DisworkFileSystem fileSystem2 = new DisworkFileSystem(disworkConfig); byte[] bytes = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; Modified: trunk/diswork-fs/src/test/java/org/nuiton/diswork/fs/storage/KademliaDisworkMapTest.java =================================================================== --- trunk/diswork-fs/src/test/java/org/nuiton/diswork/fs/storage/KademliaDisworkMapTest.java 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-fs/src/test/java/org/nuiton/diswork/fs/storage/KademliaDisworkMapTest.java 2010-07-22 08:22:04 UTC (rev 105) @@ -44,12 +44,10 @@ @Before public void setUp() throws Exception { - DisworkFileSystemConfig config1 = - DisworkFileSystemConfig.newKademliaDisworkConfig(); + DisworkFileSystemConfig config1 = new DisworkFileSystemConfig(); map1 = new KademliaDisworkMap(config1); - DisworkFileSystemConfig config2 = DisworkFileSystemConfig - .newKademliaDisworkConfig(config1.getUsedPort()); + DisworkFileSystemConfig config2 = new DisworkFileSystemConfig(config1.getUsedPort()); map2 = new KademliaDisworkMap(config2); } @@ -99,8 +97,7 @@ */ @Test public void testBadBootrap() throws Exception { - DisworkFileSystemConfig config1 = - DisworkFileSystemConfig.newKademliaDisworkConfig(); + DisworkFileSystemConfig config1 = new DisworkFileSystemConfig(); config1.setBootstrapIp("microsoft.com"); config1.setBootstrapPort(80); try { Modified: trunk/diswork-fs/src/test/resources/log4j.properties =================================================================== --- trunk/diswork-fs/src/test/resources/log4j.properties 2010-07-21 09:05:57 UTC (rev 104) +++ trunk/diswork-fs/src/test/resources/log4j.properties 2010-07-22 08:22:04 UTC (rev 105) @@ -4,9 +4,15 @@ log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d %5p [%t] (%F:%L) %M - %m%n + # package level -log4j.logger.org.nuiton.diswork.fs=WARN +log4j.logger.org.nuiton.diswork.fs=INFO + +log4j.logger.org.nuiton.diswork.fs.storage.MojitoDisworkMap=DEBUG log4j.logger.org.nuiton.diswork.fs.storage.KademliaDisworkMap=INFO -log4j.logger.org.nuiton.diswork.fs.Demo=INFO -log4j.logger.org.planx.xmlstore.routing=DEBUG -log4j.logger.org.nuiton.diswork.fs.storage.AbstractDisworkMapTest=DEBUG \ No newline at end of file + +# dependencies +log4j.logger.org.planx.xmlstore=WARN + +# executables +log4j.logger.org.nuiton.diswork.fs.Demo=INFO \ No newline at end of file