nossr50/mcMMO — Issue #122: Permissions constantly being checked
Author: geekahedron
Created: 2011-11-10 15:11:58+00:00
State: open

I'm not having any issues *per se*, but whenever I turn on debug mode in my permissions plugin (PermissionsEx v1.15.1), my console is immediately and constantly flooded with permission checks from mcMMO, even if no actions are taking place. The spam is multiplied for every user that is logged into the server.

For example, when I am the only player logged in (and doing absolutely nothing, my console looks something like a wall of the following:
```[INFO] User geekahedron checked for "mcmmo.ability.herbalism", "mcmmo.ability.*" found
[INFO] User geekahedron checked for "mcmmo.ability.axes", "mcmmo.ability.*" found
[INFO] User geekahedron checked for "mcmmo.ability.woodcutting", "mcmmo.ability.*" found
[INFO] User geekahedron checked for "mcmmo.ability.mining", "mcmmo.ability.*" found
[INFO] User geekahedron checked for "mcmmo.ability.excavation", "mcmmo.ability.*" found
[INFO] User geekahedron checked for "mcmmo.ability.swords", "mcmmo.ability.*" found
[INFO] User geekahedron checked for "mcmmo.ability.unarmed", "mcmmo.ability.*" found
[INFO] User geekahedron checked for "mcmmo.ability.herbalism", "mcmmo.ability.*" found
[INFO] User geekahedron checked for "mcmmo.ability.axes", "mcmmo.ability.*" found
[INFO] User geekahedron checked for "mcmmo.ability.woodcutting", "mcmmo.ability.*" found
[INFO] User geekahedron checked for "mcmmo.ability.mining", "mcmmo.ability.*" found
[INFO] User geekahedron checked for "mcmmo.ability.excavation", "mcmmo.ability.*" found
[INFO] User geekahedron checked for "mcmmo.ability.swords", "mcmmo.ability.*" found
[INFO] User geekahedron checked for "mcmmo.ability.unarmed", "mcmmo.ability.*" found ```

These abilities are being check once every second, for a whopping 420 lines of output per minute *per user* while permissions are being logged. I only run permissions in debug mode when I am, well, trying to debug something, and the flood of message from this plugin exacerbates the difficulty of that task tenfold.

Just how often do you anticipate that the permissions of a player to use a certain ability are going to be changed? I have to wonder if the constant checking is really necessary. If it is possible to perform the check only when permissions are reloaded, that would seem to be the ideal. At worst, the plugin could check permissions only when an ability is actually being used.

Not only is the spam in the console annoying to weed through in debug mode, I have to think that it's causing a huge amount of extraneous disk activity to continually confirm settings that are not being actively used and, on my server and I would think in most cases, not likely to ever change.