LuckPerms adding users to groups on its own
destial opened this issue ยท 9 comments
Description
Whenever I add a user to a group with context or temporary, after a while, when I check their parent group, they have the global group without the context or expiration.
This is the groups I had before.
This is after when I wake up in the morning to check.
You can see I added a temporary Exarch group but by the time I wake up, I also have the full Exarch group without the expiration. This also happens for context groups.
You can see he has the context builder group but I never added the full builder group.
Reproduction Steps
-
All your servers to the same mariadb database and table.
-
Enable split-storage and set user to mariadb.
-
Add a temporary group / context group to yourself.
-
Wait a while and check your groups again and you will see that you have the context/temp group and the full group applied.
Expected Behaviour
The expected behaviour is that LuckPerms would keep the same context group and not add the full group.
Server Details
git-Pufferfish-68 (MC: 1.19.4)
LuckPerms Version
v5.4.77
Logs and Configs
No response
Extra Details
I am using MariaDB for all of my servers, using the same database and table. I have split-storage enabled, with user being stored in mariadb and the rest in h2. I have tried using 2 separate MariaDB database on 2 separate machines, they both worked, gave no errors, but they both had the same issue.
I forgot to clarify the images, I took the images when I woke up in the morning so I removed the group after I took the resulting screenshot, but it is essentially the same.
Players always need to have at least one group with no expiry or context (aka their "primary group"). If LuckPerms finds a player without a primary group, it will add them to the default one.
If you only want them to have temporary/contextual groups, you can create a dummy group without any permissions and assign that to stop LP from adding them to the default group.
then show that user having neither a perm node or a temp node, you running just the parent addtemp command, and then them having both the perm and temp nodes
First, deleted the user from the database:
Then, user joins and I run lp user ivic_sans parent set fix
and lp user ivic_sans parent addtemp adepto 300s accumulate
:
It expires without problem. However, if I do it a second time, running lp user ivic_sans parent set fix
, then lp user ivic_sans parent addtemp adepto 60s accumulate
and the user joins and leaves within the 60 seconds, it gets the perm node: