Details
Description
Check data structures for necessary thread safety.
One known issue is as follows:
In TableAuthManager, we need to deal with concurrent grants and revokes now that ADMIN permission can be delegated to perhaps multiple users.
Consider using a ReadWriteLock to protect for update. The current data structure is an array multimap. It is also possible to obtain a synchronized multimap from Guava with Multimaps#synchronizedListMultimap but by far the most common access is read access, and concurrent read access is fine.