📄 testreplicationwriter.java
字号:
log.info("The Table '" + name + "' could not be processed since not found on the DB"); if (rs != null) rs.close(); if (st != null) st.close(); return; } SqlInfo obj = new SqlInfo(this.info); obj.fillMetadata(conn, null, schemaName, tableName, rs, null); int maxCount = 20; int count = 0; while (rs.next() && count < maxCount) { obj.fillOneRowWithObjects(rs, null); count++; } rs.close(); st.close(); // obj.getDescription().addPreparedStatements(); count = obj.getRowCount(); if (count == 0) { log.info("Could not test '" + name + "' since empty"); } else { List rows = obj.getRows(); SqlDescription desc = obj.getDescription(); conn.setAutoCommit(false); try { for (int i=0; i < rows.size(); i++) { SqlRow row = (SqlRow)rows.get(i); ClientProperty oldRowProp = new ClientProperty(ReplicationConstants.OLD_CONTENT_ATTR, null, null, row.toXml("", false)); row.setAttribute(oldRowProp); try { I_Parser parser = new SqlInfoParser(); parser.init(this.info); int ret = desc.update(conn, row, parser); if (ret != 1) throw new Exception("the number of updated entries is wrong '" + ret + "' but should be 1"); } catch(Exception ex) { log.info("exception when updating '" + row.toXml("") + " where description is '" + desc.toXml("") + "'"); throw ex; } try { int ret = desc.delete(conn, row); if (ret != 1) throw new Exception("the number of deleted entries is wrong '" + ret + "' but should be 1"); } catch(Exception ex) { log.info("exception when deleting '" + row.toXml("") + " where description is '" + desc.toXml("") + "'"); throw ex; } try { int ret = desc.insert(conn, row); if (ret != 1) throw new Exception("the number of inserted entries is wrong '" + ret + "' but should be 1"); } catch(Exception ex) { log.info("exception when inserting '" + row.toXml("") + " where description is '" + desc.toXml("") + "'"); throw ex; } } Thread.sleep(this.sleepDelay); conn.commit(); } catch (Exception ex) { if (conn != null) conn.rollback(); } finally { if (conn != null) conn.setAutoCommit(true); } } // System.out.println("\n\n"); // System.out.println(obj.getDescription().toXml("")); } catch (Exception ex) { ex.printStackTrace(); } } public void testReadAllTables() { PropertiesInfo info = new PropertiesInfo(new Properties()); info.put("table.ais.test001", "actions=IDU,trigger=ndb001tr"); info.put("table.ais.test002", "actions=IDU,trigger=ndb002tr"); info.put("table.ais.test003", "actions=IDU,trigger=ndb003tr"); info.put("table.AIS.AD_ICAO_LOCATIONS", "trigger=REPL_NDB_001"); info.put("table.AIS.AERODROME_RUNWAYS", "trigger=REPL_NDB_002"); info.put("table.AIS.SIDS", "trigger=REPL_NDB_003"); info.put("table.AIS.STARS", "trigger=REPL_NDB_004"); info.put("table.AIS.NAVAIDS", "trigger=REPL_NDB_005"); info.put("table.AIS.WAYPOINTS", "trigger=REPL_NDB_006"); info.put("table.AIS.FIR_ICAO_LOCATIONS", "trigger=REPL_NDB_007"); info.put("table.AIS.FIR_NEIGHBOURS", "trigger=REPL_NDB_008"); info.put("table.AIS.FIR_ADDITIONAL_INFOS", "trigger=REPL_NDB_009"); info.put("table.AIS.FAI_POINTS", "trigger=REPL_NDB_010"); info.put("table.AIS.RESTRICTIVE_AIRSPACES", "trigger=REPL_NDB_011"); info.put("table.AIS.RAREA_POINTS", "trigger=REPL_NDB_012"); info.put("table.AIS.RAREA_FIRS", "trigger=REPL_NDB_013"); info.put("table.AIS.RAREA_AWYWPS", "trigger=REPL_NDB_014"); info.put("table.AIS.AIRWAYS", "trigger=REPL_NDB_015"); info.put("table.AIS.AIRWAY_WAYPOINTS", "trigger=REPL_NDB_016"); info.put("table.AIS.NOF_ICAO_LOCATIONS", "trigger=REPL_NDB_017"); info.put("table.AIS.NOF_SERIES", "trigger=REPL_NDB_018"); info.put("table.AIS.NOF_NATS", "trigger=REPL_NDB_019"); info.put("table.AIS.NOF_FIRS", "trigger=REPL_NDB_020"); info.put("table.AIS.SELECTION_CRITERIAS", "trigger=REPL_NDB_021"); info.put("table.AIS.DECODE23S", "trigger=REPL_NDB_022"); info.put("table.AIS.DECODE45S", "trigger=REPL_NDB_023"); info.put("table.AIS.ICAO_NATIONAL_LETTERS", "trigger=REPL_NDB_024"); info.put("table.AIS.AGENCIES", "trigger=REPL_NDB_025"); info.put("table.AIS.AIRCRAFTS", "trigger=REPL_NDB_026"); info.put("table.AIS.AIS_POOLS", "trigger=REPL_NDB_027"); info.put("table.AIS.QUERY_USERS", "trigger=REPL_NDB_028"); info.put("table.AIS.USER_PIPES", "trigger=REPL_NDB_029"); info.put("table.AIS.DEVICE_DESCRIPTIONS", "trigger=REPL_NDB_030"); info.put("table.AIS.DEVICE_FORMS", "trigger=REPL_NDB_031"); info.put("table.AIS.PROCESSREGIONS", "trigger=REPL_NDB_032"); info.put("table.AIS.AD_RESPS", "trigger=REPL_NDB_033"); info.put("table.AIS.isLoggable(Level.FINER)_SIGNS", "trigger=REPL_NDB_034"); info.put("table.AIS.AFOD_ADDRESSES", "trigger=REPL_NDB_035"); info.put("table.AIS.FIR_FPL_ADDRS", "trigger=REPL_NDB_036"); info.put("table.AIS.HOSTS", "trigger=REPL_NDB_037"); info.put("table.AIS.TERMINAL_USERS", "trigger=REPL_NDB_038"); info.put("table.AIS.PARAMETERS", "trigger=REPL_NDB_039"); info.put("table.AIS.OPERATORS", "trigger=REPL_NDB_040"); info.put("table.AIS.OP_PRIVILEGES", "trigger=REPL_NDB_041"); info.put("table.AIS.NOTAM", "trigger=REPL_NDB_042"); info.put("table.AIS.NCB_AIRWAYS", "trigger=REPL_NDB_043"); info.put("table.AIS.NCB_AWYWPS", "trigger=REPL_NDB_044"); info.put("table.AIS.NCB_COORS", "trigger=REPL_NDB_045"); info.put("table.AIS.NCB_RAREAS", "trigger=REPL_NDB_046"); info.put("table.AIS.NCB_RETR_KEYS", "trigger=REPL_NDB_047"); info.put("table.AIS.NCB_TEXT_LINES", "trigger=REPL_NDB_048"); info.put("table.AIS.NCB_RUNWAYS", "trigger=REPL_NDB_049"); info.put("table.AIS.NOTAM_CONTROL_BLOCKS", "trigger=REPL_NDB_050"); info.put("table.AIS.FPL", "trigger=REPL_NDB_051"); info.put("table.AIS.FCBS", "trigger=REPL_NDB_052"); info.put("table.AIS.FCB_AWYWPS", "trigger=REPL_NDB_054"); info.put("table.AIS.SNOWTAM_CONTROL_BLOCKS", "trigger=REPL_NDB_056"); info.put("table.AIS.SNOWTAM_RUNWAYS", "trigger=REPL_NDB_057"); info.put("table.AIS.AF_LOCATION_STATUSES", "trigger=REPL_NDB_058"); info.put("table.AIS.LR_MCBS", "trigger=REPL_NDB_059"); info.put("table.AIS.LR_NCBS", "trigger=REPL_NDB_060"); info.put("table.AIS.LR_SCBS", "trigger=REPL_NDB_061"); info.put("table.AIS.LR_FCBS", "trigger=REPL_NDB_062"); info.put("table.AIS.LR_RETRS", "trigger=REPL_NDB_063"); info.put("table.AIS.LR_MCB_TEXTS", "trigger=REPL_NDB_064"); info.put("table.AIS.LR_NCB_TEXTS", "trigger=REPL_NDB_065"); info.put("table.AIS.LR_SCB_TEXTS", "trigger=REPL_NDB_066"); info.put("table.AIS.LR_FCB_TEXTS", "trigger=REPL_NDB_067"); info.put("table.AIS.LR_PIBS", "trigger=REPL_NDB_068"); info.put("table.AIS.R_AD_ICAO_LOCATIONS", "trigger=REPL_NDB100"); info.put("table.AIS.R_AD_RESPS", "trigger=REPL_NDB101"); info.put("table.AIS.R_AERODROME_RUNWAYS", "trigger=REPL_NDB102"); info.put("table.AIS.R_AF_LOCATION_STATUSES", "trigger=REPL_NDB103"); info.put("table.AIS.R_AGENCIES", "trigger=REPL_NDB104"); info.put("table.AIS.R_AIRCRAFTS", "trigger=REPL_NDB105"); info.put("table.AIS.R_AIRWAYS", "trigger=REPL_NDB106"); info.put("table.AIS.R_AIRWAY_WAYPOINTS", "trigger=REPL_NDB107"); info.put("table.AIS.R_AIS_POOLS", "trigger=REPL_NDB108"); info.put("table.AIS.R_DECODE23S", "trigger=REPL_NDB109"); info.put("table.AIS.R_DECODE45S", "trigger=REPL_NDB110"); info.put("table.AIS.R_DEVICE_DESCRIPTIONS", "trigger=REPL_NDB111"); info.put("table.AIS.R_DEVICE_FORMS", "trigger=REPL_NDB112"); info.put("table.AIS.R_FAI_POINTS", "trigger=REPL_NDB113"); info.put("table.AIS.R_FCBS", "trigger=REPL_NDB114"); info.put("table.AIS.R_FCB_ADDRESSS", "trigger=REPL_NDB115"); info.put("table.AIS.R_FCB_AWYWPS", "trigger=REPL_NDB116"); info.put("table.AIS.R_FCB_ROUTES", "trigger=REPL_NDB117"); info.put("table.AIS.R_FCB_TEXT_LINES", "trigger=REPL_NDB118"); info.put("table.AIS.R_FIR_ADDITIONAL_INFOS", "trigger=REPL_NDB119"); info.put("table.AIS.R_FIR_FPL_ADDRS", "trigger=REPL_NDB120"); info.put("table.AIS.R_FIR_ICAO_LOCATIONS", "trigger=REPL_NDB121"); info.put("table.AIS.R_FIR_NEIGHBOURS", "trigger=REPL_NDB122"); info.put("table.AIS.R_ICAO_NATIONAL_LETTERS", "trigger=REPL_NDB123"); info.put("table.AIS.R_MAP_NOTAM_SYMBOLS", "trigger=REPL_NDB124"); info.put("table.AIS.R_MAP_Q_CODE23S", "trigger=REPL_NDB125"); info.put("table.AIS.R_NAVAIDS", "trigger=REPL_NDB126"); info.put("table.AIS.R_NCB_AIRWAYS", "trigger=REPL_NDB127"); info.put("table.AIS.R_NCB_AWYWPS", "trigger=REPL_NDB128"); info.put("table.AIS.R_NCB_COORS", "trigger=REPL_NDB129"); info.put("table.AIS.R_NCB_RAREAS", "trigger=REPL_NDB130"); info.put("table.AIS.R_NCB_RETR_KEYS", "trigger=REPL_NDB131"); info.put("table.AIS.R_NCB_TEXT_LINES", "trigger=REPL_NDB132"); info.put("table.AIS.R_NCB_RUNWAYS", "trigger=REPL_NDB_150"); info.put("table.AIS.R_NOF_FIRS", "trigger=REPL_NDB133"); info.put("table.AIS.R_NOF_ICAO_LOCATIONS", "trigger=REPL_NDB134"); info.put("table.AIS.R_NOF_NATS", "trigger=REPL_NDB135"); info.put("table.AIS.R_NOF_SERIES", "trigger=REPL_NDB136"); info.put("table.AIS.R_NOTAM_CONTROL_BLOCKS", "trigger=REPL_NDB137"); info.put("table.AIS.R_PROCESSREGIONS", "trigger=REPL_NDB138"); info.put("table.AIS.R_QUERY_USERS", "trigger=REPL_NDB139"); info.put("table.AIS.R_RAREA_FIRS", "trigger=REPL_NDB140"); info.put("table.AIS.R_RAREA_POINTS", "trigger=REPL_NDB141"); info.put("table.AIS.R_RESTRICTIVE_AIRSPACES", "trigger=REPL_NDB142"); info.put("table.AIS.R_SELECTION_CRITERIAS", "trigger=REPL_NDB143"); info.put("table.AIS.R_SIDS", "trigger=REPL_NDB144"); info.put("table.AIS.R_SNOWTAM_CONTROL_BLOCKS", "trigger=REPL_NDB145"); info.put("table.AIS.R_SNOWTAM_RUNWAYS", "trigger=REPL_NDB146"); info.put("table.AIS.R_STARS", "trigger=REPL_NDB147"); info.put("table.AIS.R_USER_PIPES", "trigger=REPL_NDB148"); info.put("table.AIS.R_WAYPOINTS", "trigger=REPL_NDB149"); Connection conn = null; try { conn = this.dbPool.reserve(); conn.setAutoCommit(true); /* ResultSet rs = conn.getMetaData().getTables(null, schema, null, null); ArrayList list = new ArrayList(); while (rs.next()) { list.add(rs.getString(3)); // add the name } rs.close(); */ TableToWatchInfo[] tables = TableToWatchInfo.getTablesToWatch(conn, info); for (int i=0; i < tables.length; i++) { try { String name = tables[i].getTable(); String schema = tables[i].getSchema(); processOneTable(conn, schema, name); // System.out.println("\n\n"); // System.out.println(obj.getDescription().toXml("")); } catch (Exception e) { e.printStackTrace(); } } } catch (Exception ex) { ex.printStackTrace(); } finally { try { if (conn != null) this.dbPool.release(conn); } catch (Exception ex) { } } } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -