LuckPerms

LuckPerms

41.4k Downloads

update from 4.1.5 to 4.1.25 breaks permissions

frizzbee30 opened this issue · 16 comments

commented

log paste

https://pastebin.com/AuXaKRW7

spigot 1.12.2

Hi, really odd issue, I noticed a drop off in players and started getting reports of various permission issues (unable to use /spawn, warping, placing blocks in skyblock, using signs etc) which seemed to vary across plugins.

I rolled back luckperms to a 2017 version, which resolved in live and test, and then worked through the releases.

it appears that moving from 4.1.5 to 4.1.25 breaks the permissions, eg even /spawn fails, but rolling back a version to 4.1.5 immediately restores all functionality.

I cannot spot anything obvious on loading, but I hope you can help as this is the very first and only real (non config) issue we have had with this fantastic plugin!

Thanks

commented

There are no obvious issues there I can see.
I need specific info to help diagnose the problem.

  • Specifically, which permissions stopped working
  • How are those permissions set?
  • What does verbose output when those permissions are checked for?

I'm not dismissing the issue - there's just nothing I can do to help without more information.

commented

Please re-open this when you have more info to provide :)

commented

Hi, please see verbose output limited (and edited) to just using the /spawn command, sat in our hub on the test server, with the gamer group set as a parent, and the filter looking at permission hsp.command.spawn, which all users in all worlds inherit.

(https://pastebin.com/DteK3z3m)

The gamer group https://pastebin.com/nU3nT32D , inherits from the essentials_default group https://pastebin.com/d3qHZjsY, which carries the /spawn permission

Then obviously I inherit the Gamer group as a parent. So it is a cascaded inheritance, however if I recall directly adding the perm nodes to the direct parent group, still had issues, but I would need to re test that.

As I stated previously, the older version works like a charm, I have tested the latest dev version, just in case it was a quirk, but still have all the same issues.

A number of permissions have stopped working, and to be honest, we have such a complex multi plugin, multi world, multi rank system that identifying all would be more than a challenge.

However certainly our hyperdrive (warps) and homespawnplus (homes and spawn) are broken by the change

Please let me know any additional tests/commands I can run to diagnose, as I am more than keen to try and get this sorted. Obviously now we are stuck at a specific version, on a plugin that is improved on a near daily basis!

commented

Try using

/lp user <you> permission checkinherits hsp.command.spawn

commented

Thanks will do asap and feedback

commented

[19:29:27] [pool-9-thread-1/INFO]: �[0;37;22m�[21m[�[0;36;1m�[21mL�[0;36;22m�[21mP�[0;37;22m�[21m] �[0;36;1mfrizzbee30�[0;32;1m has permission �[0;36;1mhsp.command.spawn�[0;32;1m set to �[0;32;1mtrue�[0;32;1m in context �[0;33;1mglobal�[0;32;1m. �[0;37;22m(inherited from �[0;32;1messentials_default�[0;37;22m)�[m

Hi, please see above when sat in our hub world, but same issue occurs regardless of world (all groups inherit essentails_default). I note it says inheritance global, and does not specify hub, is this relevant in any way ?

(I do specify global and then the worlds for assigning parents across the groups, following on from earlier advice from yourself , which resolved the issue I was having.)

Thanks for looking into it. :)

commented

So is it resolved? I'm struggling to follow the issue here :)

commented

Hi, sorry, no it's not resolved. Although it says the permission is inherited, for some reason it doesn't apply, I was just querying the mention of global, but not the world 'hub' in the output, and if this is in any way relevant, ie it should say 'global hub' etc.

With the latest version. doing /spawn gives the insufficient permission response, even though the output says inherited

Hence we have to use the older version in live.

I'm totally bemused as to why the version change seems to have broken so many plugin permissions, askyblock, homespawn, and hyperdrive (warping) , to name just a few that I've discovered so far.

(the earlier issue you resolved that I mentioned, was around assigning world specific parents in multiverse when the name had a space in survival world if I recall, and using the global bit first. Sorry for confusing the issue)

Thanks

commented

Ok, would you mind giving me a small reproducible test to follow?

e.g.

  • run /lp user <you> permission set foo.bar true server=lobby
  • observe that you don't have the foo.bar permission in lobby

It's quite difficult to interpret your examples without knowing all of the details of your setup

commented

Experienced the same issue, though what i did was delete everything and start from scratch using a newer version and it works fine for me. [deleted database tables etc, im using MySQL]

commented

Hi, thanks will run the test asap. I understand from the set up side, I work in IT and obviously looking remotely, it's like trying to find which end of a bowl of spaghetti matches another, hence I really appreciate the time take to look into it!

Sadly starting from scratch isn't really that realistic, it really is a complex multi world - multi rank - multi plugin environment built up over the years :)

it is appreciated though that someone else had a similar issue with the version change, a rewrite may end up the only way in the future if it can't be resolved. (we don't run it on MySQL as yet, so it's not a table issue etc)

Thanks

commented

Hi, I did a variant to directly assign the perm to myself in the world, without parent inheritance

/lp user frizzbee30 permission set essentials.fly true world=hub

after running the command I had access to fly (would not normally have access for my test rank)

I then tried the same but with hsp.command.spawn ( inherited already from a parent, but showing insufficient permission as discussed earlier) as a further test

I then had access to spawn, hence it looks like for some reason the parent permissions are not inheriting down to the groups which are set as the parent to the player, although the actual perm nodes work as expected when added directly to the user.

Thanks

commented

If it's any help, our 'gamer' (default rank in hub), is inherited by all players, it has essentials_default as a parent, with the /spawn perm based in the essentials file (so it can be inherited by multiple worlds/ranks).

I don't know if it is this inheriting once removed which is the issue since the version change? Although I seem to recall adding the nodes to the direct parent and having issues, but really would need to confirm that.

It's a bit of a throwback from when we ran PEX, which was inherited from Group manager originally.

Probably not ideal, but quite complex to rebuild with our server set up!

commented

Can you give me a list of commands I can run on a fresh server in order to reproduce the issue?

As I said before,

It's quite difficult to interpret your examples without knowing all of the details of your setup

commented

Hi, will do as soon as possible, would it help if I zipped and drop-boxed the storage groups etc?

commented

Will re-open when you have reproduction steps to demonstrate the issue. :)