I actually had a problem which it stated (server not responding error) and I was wondering if permissionsex was really the right permissions tool to use for my server.
I have had that google doc in my portfolio for a while now.
To summarize it simply every single other permission managers (that I know of), ie. bpermissions, groupmanager, bukkitpermissions, etc etc, all rely on bukkit and work with it internally.
PEX decided it's going to be better than everyone else and try to over ride bukkit and do some of bukkit's jobs. Because of this many permission based functions of bukkit are broken. And that makes other plugins, bukkit, me, and many devs very sad
In conclusion, No PEX isnt for you, unless you like cutting trees with shovels.
As a true fanboy, I reject your reality and substitute my own. lol
This is quite a shame as originally PEX was the only plugin that offered multi-world support, multi-group membership, backwards compatibility with 'permissions'(eww) and the first(only?) to offer specific individual non-inheritable nodes. Also its individual promotion path system and security conscious approach to non promotable groups.
I can see why non-compliance is an issue, but it didn't stop old 'permissions'(eww) from going through the death it arguably deserved.
Does anyone know offhand if any of the compliant perms packages offer all of the features i outlined above? (except the old perms compat. ofc)
I'm hoping that by the time i want to set up another server, PEX is all good in the hood
I have no problem setting it up, I just never knew it was that flawed, and truth be told it would explain some strange events I've been getting on my server.
I actually have helped players with PermissionsEX problems, and I've had experience since a long time ago.
To be fair, some of the points in that doc are not accurate any longer, and PEX is undergoing a major rewrite as well (the devs are redoing it from scratch according to comments I've seen in the dev bukkit and github).
That being said, PEX isn't perfect and to do some of the things it does (which is what made it my permissions plugin of choice), it pretty much as to go against how Bukkit does what it does. I've yet to find a permissions plugin that is as flexible and powerful as PEX.
Ralex is working on a plugin as well, and he was able to get a debug mode similar to the one PEX has, but I don't think he feels the plugin is ready for prime time yet, but I look forward to see what it can do once it's done.
Rollback Post to RevisionRollBack
Former Support Guru and bukkit admin, master of the I-have-little-time-so-I-drive-by-post style.
Please don't PM me for help, PM's don't help the community at large as it's not publicly viewable.
Use pastie or pastebin for config files, I do not download them.
PermissionsEx problems are ridiculously rare unless you are dumb. I ran it on a server for over a year without a single problem. SQL is slow, but that's because SQL is slow. There isn't anything they can do about that. Basically that Google Doc is written by someone who has collected a list of potential problems and hasn't bothered to see how rare they are (less than 1 person for each 3000 downloads of the plugin have reported errors listed in that document).
PermissionsEx problems are ridiculously rare unless you are dumb. I ran it on a server for over a year without a single problem. SQL is slow, but that's because SQL is slow. There isn't anything they can do about that. Basically that Google Doc is written by someone who has collected a list of potential problems and hasn't bothered to see how rare they are (less than 1 person for each 3000 downloads of the plugin have reported errors listed in that document).
Just because it doesn't usually cause problems, doesn't mean the plugin doesn't have issues. The fact is that PEX works unlike standard super-perms plugins and this bothers me.
Just because it doesn't usually cause problems, doesn't mean the plugin doesn't have issues. The fact is that PEX works unlike standard super-perms plugins and this bothers me.
On the other hand, how it works makes it much faster.
On the other hand, how it works makes it much faster.
Arguably, no it does not. Privileges at the current moment is the fastest bukkit permissions plugin. PermissionsEx even has cases in some points that are so slow it can make the server seem frozen (see SQL in pex). There are many things that are bad code but not necessarily broken code as well.
Arguably, no it does not. Privileges at the current moment is the fastest bukkit permissions plugin. PermissionsEx even has cases in some points that are so slow it can make the server seem frozen (see SQL in pex). There are many things that are bad code but not necessarily broken code as well.
The actual checking of permissions would be faster after the initial overhead of performing reflection on Craftbukkit internals. While it isn't a massive gain, it can prove useful on massive servers. The SQL problem could easily be fixed if the developer wasn't an idiot who needs to learn about multithreading (see sticking Bukkit.getScheduler().scheduleAsyncTask(new Runnable() {}); around your code for something this simple).
who needs to learn about multithreading (see sticking Bukkit.getScheduler().scheduleAsyncTask(new Runnable() {}); around your code for something this simple).
the sql issue isn't just multithreading, whenever a perm node is added via command when using sql, Pex will remove all values from the table, add the value to an imported list, sort all the values, and then add them one by one. This is horridly inefficient, just for sorting the table. If anything, there really shouldn't be any sorting at all.
the sql issue isn't just multithreading, whenever a perm node is added via command when using sql, Pex will remove all values from the table, add the value to an imported list, sort all the values, and then add them one by one. This is horridly inefficient, just for sorting the table. If anything, there really shouldn't be any sorting at all.
Irrelevant. SQL queries will take a few seconds no matter what. If you multithreaded it there would be no lag, because the time it takes wouldn't be stopping any other server activity.
Irrelevant. SQL queries will take a few seconds no matter what. If you multithreaded it there would be no lag, because the time it takes wouldn't be stopping any other server activity.
You know that stack trace proves exactly what I was saying... The problems occur when the MAIN thread is blocked. Therefore putting it in a different thread (with aforementioned code if you can't be bothered to do it properly) would solve that problem.
Right, however as I stated earlier the problem isn't just multithreading. An sql query shouldn't take over 10 seconds to complete an operation, but due to the way it's handled it does. It will still take a long time to complete the operation, even if you run it in an async thread. In there is where the problem lies, and it's a signaling foundation to the rest of the plugin.
I myself find Essentials & GroupManager the way to go. Easy to set up, giving lots features, and it's just way easy to change later on. But it's all a matter of taste
I actually had a problem which it stated (server not responding error) and I was wondering if permissionsex was really the right permissions tool to use for my server.
-
To summarize it simply every single other permission managers (that I know of), ie. bpermissions, groupmanager, bukkitpermissions, etc etc, all rely on bukkit and work with it internally.
PEX decided it's going to be better than everyone else and try to over ride bukkit and do some of bukkit's jobs. Because of this many permission based functions of bukkit are broken. And that makes other plugins, bukkit, me, and many devs very sad
In conclusion, No PEX isnt for you, unless you like cutting trees with shovels.
This is quite a shame as originally PEX was the only plugin that offered multi-world support, multi-group membership, backwards compatibility with 'permissions'(eww) and the first(only?) to offer specific individual non-inheritable nodes. Also its individual promotion path system and security conscious approach to non promotable groups.
I can see why non-compliance is an issue, but it didn't stop old 'permissions'(eww) from going through the death it arguably deserved.
Does anyone know offhand if any of the compliant perms packages offer all of the features i outlined above? (except the old perms compat. ofc)
I'm hoping that by the time i want to set up another server, PEX is all good in the hood
C'mon Tehkode! you can do it!
I actually have helped players with PermissionsEX problems, and I've had experience since a long time ago.
-
Yeh, that's what I was looking at.
-
That being said, PEX isn't perfect and to do some of the things it does (which is what made it my permissions plugin of choice), it pretty much as to go against how Bukkit does what it does. I've yet to find a permissions plugin that is as flexible and powerful as PEX.
Ralex is working on a plugin as well, and he was able to get a debug mode similar to the one PEX has, but I don't think he feels the plugin is ready for prime time yet, but I look forward to see what it can do once it's done.
On the other hand, how it works makes it much faster.
Arguably, no it does not. Privileges at the current moment is the fastest bukkit permissions plugin. PermissionsEx even has cases in some points that are so slow it can make the server seem frozen (see SQL in pex). There are many things that are bad code but not necessarily broken code as well.
The actual checking of permissions would be faster after the initial overhead of performing reflection on Craftbukkit internals. While it isn't a massive gain, it can prove useful on massive servers. The SQL problem could easily be fixed if the developer wasn't an idiot who needs to learn about multithreading (see sticking Bukkit.getScheduler().scheduleAsyncTask(new Runnable() {}); around your code for something this simple).
the sql issue isn't just multithreading, whenever a perm node is added via command when using sql, Pex will remove all values from the table, add the value to an imported list, sort all the values, and then add them one by one. This is horridly inefficient, just for sorting the table. If anything, there really shouldn't be any sorting at all.
Irrelevant. SQL queries will take a few seconds no matter what. If you multithreaded it there would be no lag, because the time it takes wouldn't be stopping any other server activity.
https://github.com/PEXPlugins/PermissionsEx/issues/572
http://pastebin.com/ucEamHXF
You know that stack trace proves exactly what I was saying... The problems occur when the MAIN thread is blocked. Therefore putting it in a different thread (with aforementioned code if you can't be bothered to do it properly) would solve that problem.
High five!