def handle(self, dn, entry): """ Append single record to dictionary of all records. """ ent = Entry((dn, entry)) normdn = DSAdmin.normalizeDN(dn) self.dndict[normdn] = ent cn = ent.cn if cn: self.cndict[cn] = ent self.dnlist.append(ent)
def handle(self,dn,entry): """ Append single record to dictionary of all records. """ ent = Entry((dn, entry)) normdn = DSAdmin.normalizeDN(dn) self.dndict[normdn] = ent cn = ent.cn if cn: self.cndict[cn] = ent self.dnlist.append(ent);
def handle(self,dn,entry): """ assumes basedns[0] is the parent, basedns[1] already exists, and we want to create entries for basedns[2] """ normdn = DSAdmin.normalizeDN(dn) for (basedn, ld) in self.iterlist: if normdn.endswith(basedn): ld.unparse(dn,entry) if basedn == self.basedns[1]: dn = normdn.replace(basedn,self.basedns[2]) for (attr, vals) in entry.iteritems(): for ii in xrange(0, len(vals)): vals[ii] = vals[ii].replace(basedn,self.basedns[2]) self.outldifs[2].unparse(dn,entry) break
agmts1to2 = srv1.findAgreementDNs() agmts2to1 = srv2.findAgreementDNs() suffixes = {} srv1.lastnumchanges = {} srv2.lastnumchanges = {} srv1.avgrate = {} srv2.avgrate = {} srv1.count = {} srv2.count = {} repls = {} for dn in agmts1to2: ents = srv1.search_s(dn, ldap.SCOPE_BASE, 'objectclass=*', ['nsDS5ReplicaRoot']) ndn = DSAdmin.normalizeDN(dn) nrr = DSAdmin.normalizeDN(ents[0].nsDS5ReplicaRoot) suffixes[nrr] = dn srv1.lastnumchanges[ndn] = 0 rdns = ldap.explode_dn(dn, 0) ndn = DSAdmin.normalizeDN(','.join(rdns[1:])) repls[ndn] = ndn for dn in agmts2to1: ents = srv2.search_s(dn, ldap.SCOPE_BASE, 'objectclass=*', ['nsDS5ReplicaRoot']) ndn = DSAdmin.normalizeDN(dn) nrr = DSAdmin.normalizeDN(ents[0].nsDS5ReplicaRoot) suffixes[nrr] = dn srv2.lastnumchanges[ndn] = 0 rdns = ldap.explode_dn(dn, 0) ndn = DSAdmin.normalizeDN(','.join(rdns[1:]))
conn = DSAdmin(host, port, args.D[ii], args.w[ii]) conn.lastnumchanges = {} conn.avgrate = {} conn.count = {} conn.starttime = {} conn.endtime = {} conns.append(conn) sufary = args.b if not sufary: sufary = conn.getSuffixes() for suf in sufary: filt = '(nsds5replicaroot=' + suf + ')' agmts = conn.findAgreementDNs(filt) if not agmts: raise Exception("error: server " + str(conn) + " has no agreements for suffix " + suf) suffixes[DSAdmin.normalizeDN(suf)] = suf for agmt in agmts: conn.lastnumchanges[agmt] = 0 sleeptime = args.t # seconds print "Press Enter when the update is started" sys.stdin.readline() for conn in conns: for suf in suffixes.values(): conn.starttime[suf] = int(time.time()) running = True while running: notconverged = 0 for suf in suffixes.values(): if not running: break
conn.lastnumchanges = {} conn.avgrate = {} conn.count = {} conn.starttime = {} conn.endtime = {} conns.append(conn) sufary = args.b if not sufary: sufary = conn.getSuffixes() for suf in sufary: filt = '(nsds5replicaroot=' + suf + ')' agmts = conn.findAgreementDNs(filt) if not agmts: raise Exception("error: server " + str(conn) + " has no agreements for suffix " + suf) suffixes[DSAdmin.normalizeDN(suf)] = suf for agmt in agmts: conn.lastnumchanges[agmt] = 0 sleeptime = args.t # seconds print "Press Enter when the update is started" sys.stdin.readline() for conn in conns: for suf in suffixes.values(): conn.starttime[suf] = int(time.time()) running = True while running: notconverged = 0 for suf in suffixes.values(): if not running: break
srv2 = DSAdmin(host2, int(port2), dn2, pw2) agmts1to2 = srv1.findAgreementDNs() agmts2to1 = srv2.findAgreementDNs() suffixes = {} srv1.lastnumchanges = {} srv2.lastnumchanges = {} srv1.avgrate = {} srv2.avgrate = {} srv1.count = {} srv2.count = {} repls = {} for dn in agmts1to2: ents = srv1.search_s(dn, ldap.SCOPE_BASE, "objectclass=*", ["nsDS5ReplicaRoot"]) ndn = DSAdmin.normalizeDN(dn) nrr = DSAdmin.normalizeDN(ents[0].nsDS5ReplicaRoot) suffixes[nrr] = dn srv1.lastnumchanges[ndn] = 0 rdns = ldap.explode_dn(dn, 0) ndn = DSAdmin.normalizeDN(",".join(rdns[1:])) repls[ndn] = ndn for dn in agmts2to1: ents = srv2.search_s(dn, ldap.SCOPE_BASE, "objectclass=*", ["nsDS5ReplicaRoot"]) ndn = DSAdmin.normalizeDN(dn) nrr = DSAdmin.normalizeDN(ents[0].nsDS5ReplicaRoot) suffixes[nrr] = dn srv2.lastnumchanges[ndn] = 0 rdns = ldap.explode_dn(dn, 0) ndn = DSAdmin.normalizeDN(",".join(rdns[1:])) repls[ndn] = ndn