--- dao/FuldDaekningWorker/src/dk/daoas/fulddaekning/Lookup.java 2014/06/19 10:56:04 2195 +++ dao/FuldDaekningWorker/src/dk/daoas/fulddaekning/Lookup.java 2014/09/11 16:42:08 2207 @@ -21,6 +21,7 @@ static boolean verbose; static boolean rename_tables; + static String distributor; static SafeProperties conf; static Logger logger = Logger.getLogger( Lookup.class.toString() ); @@ -28,7 +29,7 @@ int postnr; Database db; - ArrayList daekkedeAdresser; + Adresse daekkedeAdresser[]; Queue queue; Map workers = new ConcurrentHashMap(); @@ -87,7 +88,7 @@ queue = db.hentIkkedaekkedeAdresser(postnr); stat.postnr = postnr; - stat.antalDaekkede = daekkedeAdresser.size(); + stat.antalDaekkede = daekkedeAdresser.length; stat.antalIkkeDaekkede = queue.size(); saveStatistics(stat); @@ -127,7 +128,12 @@ public void shutdownWorker(int workerid) { logger.info("Shutting down worker: " + workerid); - workers.remove(workerid); + LookupWorker key = workers.remove(workerid); + + if (key == null) { + System.out.println("Error removing worker from set"); + System.exit(0); + } } // Getters and setters @@ -139,7 +145,7 @@ - public ArrayList getDaekkedeAdresser() { + public Adresse[] getDaekkedeAdresser() { return daekkedeAdresser; } @@ -178,19 +184,35 @@ rename_tables = Boolean.parseBoolean( conf.getSafeProperty("RENAMETABLES") ); logger.info("Starting with RENAMETABLES:" + rename_tables); + distributor = conf.getSafeProperty("DISTRIBUTOR"); + distributor = distributor.toUpperCase(); + Constants.init(distributor); + + Database db = new Database(conf); - db.resetResultTable(); + long start = System.currentTimeMillis(); - + /* logger.info("Finder postnumre"); List postnumre = db.hentPostnumre(); + // Først validerer vi BBox på alle postnummre, for at undgå fuldt stop midt i beregningen + for(Integer postnr : postnumre) { // + logger.info("Validerer BBox for " + postnr); + BoundingBox bbox = db.getBoundingbox(postnr); + bbox.validateBbox(); + } + + + //pre-check er ok - reset tmp tabel og start søgningen + db.resetResultTable(); + for(Integer postnr : postnumre) { Lookup lookup = new Lookup(postnr, db); lookup.doLookup(); @@ -207,11 +229,15 @@ logger.info("Flest Ikke-dækkede, " + flestIkkeDaekkede); logger.info("Flest Dækkede, " + flestDaekkede); logger.info("Fuld load done : " + (now-start) ); - +*/ - //Lookup lookup = new Lookup(7400, db); - //lookup.doLookup(); + /// Test + db.resetResultTable(); + Lookup lookup = new Lookup(2750, db); + lookup.doLookup(); + long now = System.currentTimeMillis(); + logger.info("Fuld load done : " + (now-start) ); } }