Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate current website data #42

Open
Lugrim opened this issue Aug 31, 2023 · 10 comments
Open

Migrate current website data #42

Lugrim opened this issue Aug 31, 2023 · 10 comments
Labels
enhancement New feature or request question Further information is requested
Milestone

Comments

@Lugrim
Copy link
Contributor

Lugrim commented Aug 31, 2023

No description provided.

@Lugrim Lugrim added this to the Production milestone Oct 7, 2023
@ShiroUsagi-san
Copy link
Contributor

Is this issue still open?

@KwikKill
Copy link
Member

I think we will not do it for now but maybe later.

@ShiroUsagi-san
Copy link
Contributor

I think this is a bad idea to postpone this question, because the later we will discuss it, the harder it will be to migrate and handle conflicting data import

@Lugrim
Copy link
Contributor Author

Lugrim commented Nov 21, 2023

Maybe it's a better idea to go back from a clean database state, if we want to import previous tournaments as archives, we may bind them to a phantom user and try to bypass the model restrictions?

@Lymkwi
Copy link
Collaborator

Lymkwi commented Nov 21, 2023

I honestly think the only conflicts we will ever encounter are users, for which we can just do as follows:

  • If we find a user with the same login, we can assume that it's still them and bind participation to them
  • If we cannot find the same login (or similar enough), we can create a user that's deactivated and bind the participation to it

By design, users are the only conflicting data we will ever import, and it is probably not as hard as we think to handle them now or later (although, yes, as we keep waiting, we are going to add a lot of models on top of the first ones created at the moment)

@Lymkwi Lymkwi added the question Further information is requested label Nov 21, 2023
@ShiroUsagi-san
Copy link
Contributor

ShiroUsagi-san commented Nov 21, 2023

An anonymous user is kind of a pressing task, because if we want to be GDPR compliant, we will need to allow users to delete quickly their account. And this kind of user will allow to prevent tournaments to collapse to chaos

@ShiroUsagi-san ShiroUsagi-san added the enhancement New feature or request label Nov 21, 2023
@KwikKill
Copy link
Member

The other problem we can face is "what happened if someone create an account with the same login as a deactivated user ? Do we try to link the two, do we let the deactivated user as archive ?"
Maybe we can try migrate the data and when a new account is created, if there is a deactivated user with the same (login, email), we need to automatically replace the archive user by the new one without changing it's id.

So, we have 2 options :

  • We only keep the old data as archive
  • We create a migration system that handle conflicts even on account creations

@ShiroUsagi-san
Copy link
Contributor

pretty neat idea, but not in our rush priority queue

@Lugrim
Copy link
Contributor Author

Lugrim commented Nov 21, 2023

The other problem we can face is "what happened if someone create an account with the same login as a deactivated user ?

It should not happen. If an user is "deactivated", it functionally means the user is deleted (GDPR is not about hiding user data, it's about actually deleting it, this includes the username)

@Lymkwi
Copy link
Collaborator

Lymkwi commented Nov 28, 2023

The other problem we can face is "what happened if someone create an account with the same login as a deactivated user ?

It should not happen. If an user is "deactivated", it functionally means the user is deleted (GDPR is not about hiding user data, it's about actually deleting it, this includes the username)

It could actually happen if we import data before someone recreates an account because they had one on the previous website and are going to participate in upcoming events (but did not recreate it before our import)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request question Further information is requested
Projects
None yet
Development

When branches are created from issues, their pull requests are automatically linked.

4 participants