dracidoupe / graveyard

Open Source reimplementation of https://www.dracidoupe.cz/
https://nove.dracidoupe.cz/
MIT License
6 stars 4 forks source link

Improve Tavern ACL model #233

Closed Almad closed 3 years ago

Almad commented 3 years ago

Currently, Tavern (from #210) access control list model stores individual permissions in the TavernAccess model/table. The problem is that users can have multiple permissions per tavern table and because those are stored as multiple rows, we can't call a JOIN on them, causing significant slowdown.

The correct way would be to treat permissions as access bits, store them in one access row and thus make it joinable when querying for table permissions.

Almad commented 3 years ago

In practice, this is now duplicate of #237