Hi fellows
Here's the problem:
We have our own RelOptTable implementation, and we replace
the RelOptTableImpl during a rule in HepPlanner. Something unexpected
occurred: We only replaced the `table` in TableScan, and the digest is not
changed after the rule, so in `HepPlanner#addRelToGraph`, directly return
the ori TableScan.

HepPlanner#addRelToGraph
```
      Pair<String, List<RelDataType>> key = key(rel);
      HepRelVertex equivVertex = mapDigestToVertex.get(key);
      if (equivVertex != null) {
        // Use existing vertex.
        return equivVertex;
      }
```


Regards!

Aron Tao

Reply via email to