Dimension Links Migration
shangyian opened this issue · comments
We should move all dimension links from column-level to node-level. There are a lot of moving parts, which should be done in roughly this order:
(1) Make sure the backend for node-level dimension links is at parity with column-level:
- Switch up all unit tests from column-level dimension links to node-level. The generated SQL should remain at parity with column-level links. This will require fixing a number of bugs, like making sure that selected fields on a dimension node are filtered to only those that are used.
(2) Convert the user-facing interfaces
- Make the UI compatible with changes:
- Use node-level dimensions when linking dimensions (i.e., convert
/nodes/{name}/columns/{column}/
to use node-level dimension links) - Add an option to configure complex dimensions
- Use node-level dimensions when linking dimensions (i.e., convert
- Make the python client compatible with changes
- Add an option to the client to configure complex dimension links
- Keep the current client dimension link methods but use node-level rather than column-level (i.e., change the backend API that's called)
(3) Database migration
- Write script to migrate column-level dim links to node-level