I have the need that there are certain complex views (like in my case a transitive closure table that helps me resolving supervisors of a company member) which I only want to read in my app. I want to avoid having to write the same logic required for realtime data view and caching twice, so what about adding a readonly flag that you can set to streams which will behave in following ways different to conventional streams:
- Don't require an
id column, because this only required to process changes
- Doesn't generate triggers for the views in the sqlite database, so that they basically natively become read-only
- Allows the usage of materialized views
- Maybe some of the other query constrains such as joins can be loosend up to, but a materialized view always can solve this usecase
To me it seams quite easy to implement actually especially when considering that it would only need some changes in the rust library.
I have the need that there are certain complex views (like in my case a transitive closure table that helps me resolving supervisors of a company member) which I only want to read in my app. I want to avoid having to write the same logic required for realtime data view and caching twice, so what about adding a
readonlyflag that you can set to streams which will behave in following ways different to conventional streams:idcolumn, because this only required to process changesTo me it seams quite easy to implement actually especially when considering that it would only need some changes in the rust library.