1160 step = FetchStep(self.plan, rqlst, sources, table, False) |
1160 step = FetchStep(self.plan, rqlst, sources, table, False) |
1161 # update input map for following steps, according to processed solutions |
1161 # update input map for following steps, according to processed solutions |
1162 inputmapkey = tuple(sorted(solindices)) |
1162 inputmapkey = tuple(sorted(solindices)) |
1163 inputmap = self._inputmaps.setdefault(inputmapkey, {}) |
1163 inputmap = self._inputmaps.setdefault(inputmapkey, {}) |
1164 for varname, mapping in step.outputmap.iteritems(): |
1164 for varname, mapping in step.outputmap.iteritems(): |
1165 if varname in inputmap and \ |
1165 if varname in inputmap and not '.' in varname and \ |
1166 not (mapping == inputmap[varname] or |
1166 not (mapping == inputmap[varname] or |
1167 self._schema.eschema(solutions[0][varname]).final): |
1167 self._schema.eschema(solutions[0][varname]).final): |
1168 self._conflicts.append((varname, inputmap[varname])) |
1168 self._conflicts.append((varname, inputmap[varname])) |
1169 inputmap.update(step.outputmap) |
1169 inputmap.update(step.outputmap) |
1170 self.plan.add_step(step) |
1170 self.plan.add_step(step) |