rusackas commented on PR #39278: URL: https://github.com/apache/superset/pull/39278#issuecomment-5188013028
@dpgaspar scratch my gevent theory from June, think I found the real cause. It's not session scoping at all, it's a gap in Flask-AppBuilder's own FSA-3.x shim: `base_legacy.py` overrides `create_session()`/`get_bind()` to bind Superset's models onto FAB's own `declarative_base()`, but `base.py` (the FSA 3.x version) doesn't do any of that anymore, and `SQLA(app)` never passes `model_class=`. So under FSA 3.x, Superset's models and `db.session`'s bind resolution are looking at two disconnected registries, which lines up with the NoneType breadth I saw reproducing this in #42542 (dashboards, security, tasks, all hitting the same mismatched seam). You'd know this better than I would since you wrote FAB. Does that match your read, and is wiring `model_class=` through when `base.py` builds `SQLA(app)` enough, or is there more to it? We're about to pick step 6 back up on #40273 now that the driver-compat prep landed in #42542, so this is converging with that work. Worth coordinating rather than duplicating effort. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
