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

Fix galaxy generation #722

Open
wants to merge 1 commit into
base: taiste
Choose a base branch
from
Open

Fix galaxy generation #722

wants to merge 1 commit into from

Conversation

Hyask
Copy link
Contributor

@Hyask Hyask commented Jul 18, 2024

Fix the Galaxy generation on the production database.

@Hyask Hyask marked this pull request as draft July 18, 2024 17:31
@Hyask Hyask changed the title WIP: Fix galaxy generation Fix galaxy generation Sep 9, 2024
@imperosol
Copy link
Contributor

Est-ce que tu penses que tu rajouteras des commits là-dessus à court terme ? C'est juste histoire de savoir si on attend encore un peu ou bien si on review cette PR tout de suite, histoire de fusionner ça, quitte à rouvrir ne autre pr plus tard.

@Hyask
Copy link
Contributor Author

Hyask commented Nov 21, 2024

Ben tout dépend de jusqu'où va la génération sur la base de prod. Si juste cette correction suffit pour que ça aille au bout, alors y'a rien à ajouter. Si il faut patcher autre chose, cette branche servait à ça.

@imperosol
Copy link
Contributor

Ben tout dépend de jusqu'où va la génération sur la base de prod. Si juste cette correction suffit pour que ça aille au bout, alors y'a rien à ajouter. Si il faut patcher autre chose, cette branche servait à ça.

Bah, la galaxie, c'est surtout ton truc. Mis à part ce problème, il s'est rien passé qui fasse échouer une génération de la galaxie sur des données de prod. Donc à moins que tu penses le contraire, ça n'est pas bloquant dans l'immédiat.

@Hyask Hyask marked this pull request as ready for review November 26, 2024 11:34
@Hyask
Copy link
Contributor Author

Hyask commented Nov 26, 2024

Hé bien dans ce cas c'est tout bon, tu peux merge :-)

@@ -370,7 +370,7 @@ def compute_users_clubs_score(cls, user1: User, user2: User) -> int:
(earliest_end - latest_start).days,
)
)
score += cls.CLUBS_POINTS * (earliest_end - latest_start).days
score += cls.CLUBS_POINTS * abs((earliest_end - latest_start).days)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Si le nombre de jours pouvait se retrouver en négatif, est-ce que ça ne veut pas dire que le calcul de la durée d'appartenance commune à un club est faux ?

Est-ce qu'on est sûr qu'on nest pas en train d'augmenter le score entre deux utilisateurs alors que leurs adhésions n'intersectionnent pas ?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Hyask ?

@imperosol
Copy link
Contributor

Depuis l'ouverture de la PR, la site a pas mal changé.
Avant de poursuivre, il faudrait adapter la galaxie à ces changements :

  • Changer la manière dont les données de la Galaxie sont envoyées :
    • Soit en utilisant un contrôleur d'API qui renvoie le JSON
    • Soit, si les données sont volumineuses, en stockant ces dernières dans un fichier, pour que leur soit le plus possible géré par le reverse proxy, et en n'utilisant le serveur que pour fournir l'emplacement du fichier et le cache-control.
  • typescriptifier le galaxy-index.js
  • Utiliser le système de permission par table de Django, étant donné qu'il n'y a pas de permission par objet dans la galaxie.

J'ai aussi le problème que je ne peux pas charger la Galaxy en local, après avoir configuré normalement (càd avec les étapes rm db.sqlite3, uv run ./manage.py setup et uv run ./manage.py rule_galaxy). Le nombre d'utilisateurs total et le nombre d'étoiles dans la galaxie ne semble rien changer. Le problème est possiblement côté front, mais je ne peux rien affirmer avec certitude étant donné que la page ne répond plus du tout après que je l'ai lancée (dur de consulter les outils développeur, dans ces conditions).

Egalement, comme la galaxie est quelque chose d'assez conséquent, avec pas mal de particularités qu'on ne retrouve pas dans les autres apps et des prérequis conséquents pour son installation et son maintien, il faudrait rajouter de la documentation, où sont expliquées à quoi servent les différentes commandes et comment les futurs responsables infos doivent manipuler la galaxie. La commande rule_galaxy est très lourde et effectue énormément de requêtes à la db, donc ça serait bien de documenter également quelles requêtes sont faites et de les quantifier.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants