*************************************************************************** * * * Copyright (c) 2009, Lawrence Livermore National Security, LLC. * * Produced at the Lawrence Livermore National Laboratory * * Written by: Gavin M. Bell (gavin@llnl.gov) * * LLNL-CODE-420962. BSD Open Source License * * * * All rights reserved. This file is part of the: * * Earth System Grid (ESG) Data Node Software Stack * * * *************************************************************************** Description: A running list of items of work that need to be done *************************************************************************** TODO: Features: - Shell: - Mode exit function to clear mode env - caching DAO in admin mode - P2P Protocol adjustments - don't drop messages just because you have seen them before - Do not resend messages with artificially touched timestamp - TTL logic for dropping messages. - Test timing code for removed messages vs stale incoming - filter by namespaces (regex namespaces during merge) - remove immediately if fails to connect if then recovers with ping, then reinstate - Send out explicit 'goodbye' message when leaving / shutting down - When comparing node timestamps in merge, add in skew slop function instead of direct comparing. Ex: isWithinSkew(ts1,ts2); coordinate this skew tolerance with that of ntp. - Adjust the regex for the PeerNetworkFilter to deal with namespace prefix. Ex: a candidate network foo-org.esgf is accepted when testing for org.esgf. (but not vise versa) overall: -Put in MORE JUnit testing. -Write test cases for codebase. -Install BDM client and simple sanity check call(s) core: Metrics & Monitoring ->Put in Query "LIMIT" clause at the end of each query to a configurable value ->For Monitoring put in time series results in fixed size LRU cache -Remove faux 'gateway' from codebase. -Put in XML Parsing of Payload message data (the catalog) -> Have to get or make catalog specific XSD to JAXB on. -Find out from Bob what the deal is/was with hessian to see if I can safely upgrade to using 3.1.5 - he alluded to hacking the hessian code on the python side for things to work... will an upgraded hessian screw things up? hessian-3.0.20.jar ->? hessian-3.1.5.jar DONE: xClean up InstallCert Blurting out exception stack trace simply because you don't have the key. (that's the point - you're trying to get it :-) libs: (todo's and issues) git rm jsr173 api use fetched stax api git rm jaxb1-impl use fetched jaxb-impl xRoll back log4j from 1.2.15 to 1.2.14 to avoid ivy repo fetch failure issue. git rm log4j-1.2.15.jar use fetched log4j-1.2.14.jar xFix issue with ivy having problems with resolving "javamail" to fetch mailapi.jar and smtp.jar -Keep only: ivy-2.1.0.jar [hessian-3.0.20.jar] ? Test that still wire compatible with python version. x [javamail = mail.jar, smtp.jar] ? working on resoving ivy repo failure (everything else we fetch via ivy) (jars that will be fetched by ivy that can be removed) activation.jar commons-dbcp-1.2.2.jar commons-dbutils-1.3.jar commons-logging-1.1.1.jar commons-pool-1.5.4.jar jaxb-api.jar jaxb-impl.jar jaxb-xjc.jar jaxb1-impl.jar jsr173_1.0_api.jar junit-4.8.2.jar log4j-1.2.15.jar postgresql-8.3-603.jdbc3.jar servlet-api.jar xFind out how to put fetched jars in a separate lib subdirectory "fetched" so we can seperate the two types of libs and then have git be able to ignore the fetched ones and remove that directory on cleanup with ant. ---