vidjil issueshttps://gitlab.inria.fr/vidjil/vidjil/-/issues2020-09-29T14:32:55+02:00https://gitlab.inria.fr/vidjil/vidjil/-/issues/4498Création multiple de patients ne fonctionne pas si une colonne est vide2020-09-29T14:32:55+02:00Mikaël SalsonCréation multiple de patients ne fonctionne pas si une colonne est videJe suis dans cette situation-là
![paste](/uploads/bfe46a19a413e553ac21ea3a1c9f0522/paste.png)
Et lorsque je colle on me dit que le format n'est pas correct. Il semble que la dernière colonne ne soit pas prise en compte. Dès que je mets...Je suis dans cette situation-là
![paste](/uploads/bfe46a19a413e553ac21ea3a1c9f0522/paste.png)
Et lorsque je colle on me dit que le format n'est pas correct. Il semble que la dernière colonne ne soit pas prise en compte. Dès que je mets quelque chose sur une des lignes de la dernière colonne c'est ok.
Même problème si c'est la 1è colonne.marc duezmarc duezhttps://gitlab.inria.fr/vidjil/vidjil/-/issues/4497Date de naissance qui ne passe pas bien avec la création en masse de patients...2020-10-21T08:26:04+02:00Mikaël SalsonDate de naissance qui ne passe pas bien avec la création en masse de patients depuis EthercalcJ'ai fait une démo avec Framacalc et la date de naissance est transformée en un entier ce qui n'est, du coup, pas accepté.
https://lite.framacalc.org/9j8a-q87yj1pvao
Si ce n'est qu'avec Framacalc ce n'est pas dramatique, mais je crains...J'ai fait une démo avec Framacalc et la date de naissance est transformée en un entier ce qui n'est, du coup, pas accepté.
https://lite.framacalc.org/9j8a-q87yj1pvao
Si ce n'est qu'avec Framacalc ce n'est pas dramatique, mais je crains que ce soit lorsque le tableur reconnaît qu'il s'agit d'une date et la transforme ensuite.marc duezmarc duezhttps://gitlab.inria.fr/vidjil/vidjil/-/issues/4478clipboard.js et données incomplètes2020-09-22T09:18:56+02:00Mathieu Giraudclipboard.js et données incomplètesSuite à !783.
| | | | | |
|-----|---------|-------|------------|------|
| 42 | John | Doe | | #ALL |
| | George | Sand | 1804-02-01 | |
Si ce que je colle dans la dernière l...Suite à !783.
| | | | | |
|-----|---------|-------|------------|------|
| 42 | John | Doe | | #ALL |
| | George | Sand | 1804-02-01 | |
Si ce que je colle dans la dernière ligne ne va pas jusqu'au `\n`, alors le contenu de la dernière ligne est oublié.
C'est peut-être ~"priority-1-low", depuis un tableur cela n'arrive pas ?
cc @duezhttps://gitlab.inria.fr/vidjil/vidjil/-/issues/4442Avoir accès au md5sum des fichiers du serveur2020-07-30T19:32:14+02:00Thonier FlorianAvoir accès au md5sum des fichiers du serveurJ'ai uploadé des données sur le serveur, et il semble qu'il y ai une erreur dans les noms des fichiers et dans les attributions aux patients.
Pour corriger, j'aimerai avoir les md5sum des fichiers (ou autre) pour permettre de vérifier ...J'ai uploadé des données sur le serveur, et il semble qu'il y ai une erreur dans les noms des fichiers et dans les attributions aux patients.
Pour corriger, j'aimerai avoir les md5sum des fichiers (ou autre) pour permettre de vérifier que les données que j'ai renommées au sample XX du patient YY corresponde bien à ce que j'ai en local.
On n'a pas l'information en base ? Sinon il faudrait soit icône sur la page base de données pour l'afficher comme une alerte, soit un tooltip (#4421 :smiling_imp: ).https://gitlab.inria.fr/vidjil/vidjil/-/issues/4419Taille des sorties / utilisation du disque dans un serveur, particulièrement ...2020-07-31T17:52:24+02:00Mathieu GiraudTaille des sorties / utilisation du disque dans un serveur, particulièrement en -y allBeaucoup d'issues ces derniers temps sur la taille des sorties et l'occupation du disque en `-y all`.
Issue ici pour faire le point, que ce soit sur les choses déjà faites ou les choses possibles.
cc @flothoni @mikael-s
Sur un lanceme...Beaucoup d'issues ces derniers temps sur la taille des sorties et l'occupation du disque en `-y all`.
Issue ici pour faire le point, que ce soit sur les choses déjà faites ou les choses possibles.
cc @flothoni @mikael-s
Sur un lancement de `vidjil-algo`, indépendament de tout ~server :
- --no-windows, --no-airr, --no-windows #3861
- clone.fa #4386
- .vdj.fa #4387 (et #3795)
- .vidjil allégé #4036 (#4334, #4343)
- .vidjil.gz #4253
Sur interaction avec ~"server-database" / ~"server-hosting" :
- vijdil.gz #2015 (après #4254)
- supprimer .vidjil après insertion dans db #4388
- nettoyer régulièrement `/tmp/` vdj#1083.
Documenter également cela:
- pour vidjil-algo, 1 sample
- pour "server requirements"
Avec 2020.06, sur `-g germline/homo-sapiens.g -r 1 -y all` (pas fait `-3` ou autre, mais cela devrait être négligeable)
Autres colonnes/lignes bienvenues.
| | S22 | L3.0 | lil #4386
| ---- | ------ | ------ | ------ |
| *.fasta.gz* |*405 KB*| -- |
| *.fastq.gz* | -- |*308 MB*|
| .vidjil | 16 MB | 180 MB |
| .tsv | 3.3 MB | 30 MB |
| .vdj.fa | 3.5 MB | 56 MB |
| .windows.fa | 726 KB | 7.1 MB |
| seq/* | 43 MB | 415 MB | 15.1 GB
| total | 66 MB | 687 MB | 27.3 GB
| ---- | ------ | ------ |
| .vidjil.gz | 980 K | 15 MB |
Et .edges et .log sont négligeables.
(au passage, `--gz` et gzip du fichier .vidjil donnent en gros la même taille... mais pas exactement le même fichier)https://gitlab.inria.fr/vidjil/vidjil/-/issues/4416Code quasi dupliqué et éliminiation de doublon2020-07-27T18:34:36+02:00Mikaël SalsonCode quasi dupliqué et éliminiation de doublonDans `sample_set.py`, méthode `index`, on a :
```python
if config :
query =[]
query2 = db(
(db.sequence_file.id == db.sample_set_membership.sequence_file_id)
& (db.sample_set_membership.sa...Dans `sample_set.py`, méthode `index`, on a :
```python
if config :
query =[]
query2 = db(
(db.sequence_file.id == db.sample_set_membership.sequence_file_id)
& (db.sample_set_membership.sample_set_id == sample_set_id)
).select(
left=db.results_file.on(
(db.results_file.sequence_file_id==db.sequence_file.id)
& (db.results_file.config_id==str(config_id))
& (db.results_file.hidden == False)
),
orderby = db.sequence_file.id|~db.results_file.run_date
)
previous=-1
for row in query2 :
if row.sequence_file.id != previous :
query.append(row)
previous=row.sequence_file.id
else:
query = db(
(db.sequence_file.id == db.sample_set_membership.sequence_file_id)
& (db.sample_set_membership.sample_set_id == sample_set_id)
).select(
left=db.results_file.on(
(db.results_file.sequence_file_id==db.sequence_file.id)
& (db.results_file.config_id==str(config_id))
& (db.results_file.hidden == False)
& (db.sample_set_membership.sequence_file_id == db.sequence_file.id)
& (db.sample_set.id == db.sample_set_membership.sample_set_id)
)
)
```
Plusieurs remarques/questions
* La requête est quasi la même entre le `if` et le `else`. Ne peut-on pas factoriser ?
* Le `for` à la fin du `if` sert à retirer des doublons. Est-ce encore utile ? Est-ce bien normal que la requête produise des doublons ?
* Le `else` correspond au cas où on n'a pas de configuration en paramètre, et donc `config_id` vaut -1. Est-ce que `(db.results_file.config_id==str(config_id))` va vraiment donner quelque chose ? Si non, pourquoi laisser cette requête ?
cc @duezmarc duezmarc duezhttps://gitlab.inria.fr/vidjil/vidjil/-/issues/4404Pouvoir donner des dates relatives entre timepoint2020-07-10T09:41:29+02:00Thonier FlorianPouvoir donner des dates relatives entre timepointJ'ai voulu manipuler des données de publications. Je n'ai pas les dates exactes d’échantillonnage, mais juste les dates relatives entre les samples (T0; t0+7j; ...)
Pour le moment nous n'avons pas moyen d'indiquer de tel informations. J...J'ai voulu manipuler des données de publications. Je n'ai pas les dates exactes d’échantillonnage, mais juste les dates relatives entre les samples (T0; t0+7j; ...)
Pour le moment nous n'avons pas moyen d'indiquer de tel informations. J'ai donc mis des dates fictives en commençant t0 au 1er janvier 2000, et essayer de calculer les autres dates en fonction de ce repère.
Je ne sais pas comment faire pour rentrer cette information. Un format spécial, un nouveau champ ?https://gitlab.inria.fr/vidjil/vidjil/-/issues/4403ajouter des traitements dans la base de données2020-07-10T09:31:38+02:00Thonier Florianajouter des traitements dans la base de donnéesJe suis en train de regarder des données de vaccination. J'aurais aimé voir les indications sur la timeline des différents points de traitement pour mieux intégrer l'effet sur ce que l'on voit.Je suis en train de regarder des données de vaccination. J'aurais aimé voir les indications sur la timeline des différents points de traitement pour mieux intégrer l'effet sur ce que l'on voit.https://gitlab.inria.fr/vidjil/vidjil/-/issues/4402Pouvoir modifier les samples en lot2020-07-10T09:29:33+02:00Thonier FlorianPouvoir modifier les samples en lotJ'ai chargé les données d'une publication contenant 7 samples.
Après lecture de la publication, j'ai décidé de rajouter des informations qui n'étaient pas présentes dans la description des données. Malheureusement, j'ai du ouvrir un pa...J'ai chargé les données d'une publication contenant 7 samples.
Après lecture de la publication, j'ai décidé de rajouter des informations qui n'étaient pas présentes dans la description des données. Malheureusement, j'ai du ouvrir un par un les samples pour ajouter cette information. Une version ou l'on pourrait mettre à jour un ensemble de sample aurait été plus rapide.https://gitlab.inria.fr/vidjil/vidjil/-/issues/4393Procedure pour transferer les patients d'un groupe à un autre2020-07-01T13:33:22+02:00Thonier FlorianProcedure pour transferer les patients d'un groupe à un autreJ'ai un utilisateur solo qui rejoint un groupe. Je voulais lui proposer de transférer ses données précédentes sur ce nouveau groupe.
Je ne suis pas certain de la procédure. Il y a quelques pistes dans #2485.
Je vais faire quelques test...J'ai un utilisateur solo qui rejoint un groupe. Je voulais lui proposer de transférer ses données précédentes sur ce nouveau groupe.
Je ne suis pas certain de la procédure. Il y a quelques pistes dans #2485.
Je vais faire quelques tests avant de décrire la procédure dans la doc.https://gitlab.inria.fr/vidjil/vidjil/-/issues/4392Sample apparaissant en double dans la vue database2020-07-01T11:32:05+02:00Thonier FlorianSample apparaissant en double dans la vue databaseJ'ai cherché une issue car il me semble que c'était déjà arriver, mais je n'ai pas trouvé.
J'ai un patient (38786) dont certains sample apparaissent plusieurs fois dans la liste (config null). En revanche, si je sélectionne une config (...J'ai cherché une issue car il me semble que c'était déjà arriver, mais je n'ai pas trouvé.
J'ai un patient (38786) dont certains sample apparaissent plusieurs fois dans la liste (config null). En revanche, si je sélectionne une config (`default` par exemple), je me retrouve alors avec une seule occurrence de chaque sample.
Le nombre de fois ou un sample est visible n'est pas constant non plus. Certain apparaissent 2 fois, d'autre 3 et enfin un 4fois.
![Screenshot_20200701_105823](/uploads/db698ee347b8f5b24b250f263471905f/Screenshot_20200701_105823.png)https://gitlab.inria.fr/vidjil/vidjil/-/issues/4391Effet nul du changement de permission sur un patient2020-07-01T11:22:58+02:00Thonier FlorianEffet nul du changement de permission sur un patientJ'ai un utilisateur qui a créé un patient sur son groupe perso avant de rejoindre finalement un groupe d'utilisateur commun à son équipe.
J'ai voulu changer les permissions sur ce patient pour ajouter le groupe commun (au moins en lect...J'ai un utilisateur qui a créé un patient sur son groupe perso avant de rejoindre finalement un groupe d'utilisateur commun à son équipe.
J'ai voulu changer les permissions sur ce patient pour ajouter le groupe commun (au moins en lecture). La procédure c'est bien passé, j'ai eu le bon retour du serveur (`access 'access' granted to GROUP`). Cependant, lorsque j'ouvre en impersonate d'un autre membre de ce groupe, je ne peux pas voir ce patient.
Au passage, dans la colonne groups de la page patient, je vois bien maintenant ce groupe apparaître (https://gitlab.inria.fr/vidjil/vidjil/-/issues/3174#note_358690).https://gitlab.inria.fr/vidjil/vidjil/-/issues/4390MySQL error: Access denied for user root@localhost2020-07-01T16:34:59+02:00Mikaël SalsonMySQL error: Access denied for user root@localhostErreur notée par @Nordine-Feddal sur le conteneur MySQL. Revient toutes les 30 secondes. Ce n'est pas bloquant, mais c'est juste intriguant. Qu'est-ce qui essaie de se connecter toutes les 30 secondes à la base de données ?
On a stoppé ...Erreur notée par @Nordine-Feddal sur le conteneur MySQL. Revient toutes les 30 secondes. Ce n'est pas bloquant, mais c'est juste intriguant. Qu'est-ce qui essaie de se connecter toutes les 30 secondes à la base de données ?
On a stoppé le conteneur `workers` et les tentatives de connexion se sont poursuivies.https://gitlab.inria.fr/vidjil/vidjil/-/issues/4382Ajout de configurations "par locus"2020-06-26T15:18:48+02:00Thonier FlorianAjout de configurations "par locus"Dites moi, la config IGH ne sort pas les IGH+ ?
J'ai quelqu'un qui souhaite voir ses IGH+, mais comme ils sont mineurs dans le fichier, en multi ca ne les ressort pas.
Il faudrait ajouter une nouvelle configuration dédiée. MAis tant q...Dites moi, la config IGH ne sort pas les IGH+ ?
J'ai quelqu'un qui souhaite voir ses IGH+, mais comme ils sont mineurs dans le fichier, en multi ca ne les ressort pas.
Il faudrait ajouter une nouvelle configuration dédiée. MAis tant qu'à faire, on pourrait imaginer une classification `splitted locus` ou quelque chose de ce genre là ? On y deplacerait la config IGH simple ?
Je crée la config (sur la base de multi), vous me confirmer avant de la mettre en accès à cet utilisateur (ou à tous).https://gitlab.inria.fr/vidjil/vidjil/-/issues/4372self.user non défini alors que l'utilisateur est loggé2020-06-23T11:03:26+02:00Mikaël Salsonself.user non défini alors que l'utilisateur est loggéOn a des erreurs serveur (en l'occurrence de @flothoni) quand il essaie d'accéder à [une URL](https://db.vidjil.org/vidjil/results_file/download?filename=079301.vdj.fa&results_file_id=79301), alors qu'il est bien connecté.
[L'erreur](ht...On a des erreurs serveur (en l'occurrence de @flothoni) quand il essaie d'accéder à [une URL](https://db.vidjil.org/vidjil/results_file/download?filename=079301.vdj.fa&results_file_id=79301), alors qu'il est bien connecté.
[L'erreur](https://db.vidjil.org/admin/default/ticket/vidjil/131.254.15.191.2020-06-23.10-21-33.239d60b6-68f2-42f5-b398-9e0f6ed1fa15) montre que `self.user` vaut `None`, ce qui est étonnant puisqu'il est bien loggé.
```
Traceback (most recent call last):
File "/usr/share/vidjil/server/web2py/gluon/restricted.py", line 219, in restricted
exec(ccode, environment)
File "/usr/share/vidjil/server/web2py/applications/vidjil/controllers/results_file.py", line 182, in <module>
File "/usr/share/vidjil/server/web2py/gluon/globals.py", line 421, in <lambda>
self._caller = lambda f: f()
File "/usr/share/vidjil/server/web2py/gluon/cache.py", line 645, in wrapped_f
rtn = func()
File "/usr/share/vidjil/server/web2py/applications/vidjil/controllers/results_file.py", line 120, in download
if auth.can_view_sample_set(sample_set_id) and not '..' in request.vars['filename']:
File "/usr/share/vidjil/server/web2py/applications/vidjil/models/VidjilAuth.py", line 466, in can_view_sample_set
perm = self.get_permission(PermissionEnum.read.value, 'sample_set', sample_set_id, user)\
File "/usr/share/vidjil/server/web2py/applications/vidjil/models/VidjilAuth.py", line 180, in get_permission
perm_groups = self.get_permission_groups(action, user)
File "/usr/share/vidjil/server/web2py/applications/vidjil/models/VidjilAuth.py", line 118, in get_permission_groups
user = self.user.id
AttributeError: 'NoneType' object has no attribute 'id'
```marc duezmarc duezhttps://gitlab.inria.fr/vidjil/vidjil/-/issues/4337Warning si version très ancienne de l'algorithme (et vue database)2020-06-11T09:52:07+02:00Thonier FlorianWarning si version très ancienne de l'algorithme (et vue database)Hier une utilisatrice qui n'avait pas utilisé vidjil depuis des années m'a demandé de réactiver son compte.
Dans le cas présent, il n'y avait pas de données. Mais si elle avait voulu rajouter un ou plusieurs samples dans ses run/sets, el...Hier une utilisatrice qui n'avait pas utilisé vidjil depuis des années m'a demandé de réactiver son compte.
Dans le cas présent, il n'y avait pas de données. Mais si elle avait voulu rajouter un ou plusieurs samples dans ses run/sets, elle aurait potentiellement voulu relancer les analyses avec la dernière version de l'algorithme.
Pour ce faire, il faudrait avoir l'information en base pour ne pas avoir a reparcourir le fichier de résultat, et l'information de la version courante du logiciel (le tag release à minima).
On a un warning potentiel non encore implémenté `W0x` qui indique si l'algo utilisé est outdated. Mais on pourrait aussi indiqué l'alerte en amont, dans la page patient/run.
De la même manière, on pourrait aussi imaginer que le bouton permettant de relancer toutes les analyses permette de relancer différentiellement en fonction de ce paramètre (une idée en l'air, dans la pratique l'option de tout relancer indifféremment me semble en réalité plus pertinente, mais je le mentionne au cas ou).
D'une manière générale, y-a-t-il d'autre informations/warnings qu'il serait pertinent de faire remonter avant l'ouverture ? Cela recoupe aussi des informations que l'on pourrait avoir potentiellement dans la vue statshttps://gitlab.inria.fr/vidjil/vidjil/-/issues/4330Avoir une date de péremption d'un utilisateur dans un groupe2020-06-10T22:16:51+02:00Thonier FlorianAvoir une date de péremption d'un utilisateur dans un groupeIl peut arriver que certaines équipes connaissent d'avance une date théorique de fin de contrat d'un membre (un CDD, un Phd ou un stagiaire).
On pourrait imaginer qu'un compte puisse avoir une date d'expiration à la création. Dans ce ca...Il peut arriver que certaines équipes connaissent d'avance une date théorique de fin de contrat d'un membre (un CDD, un Phd ou un stagiaire).
On pourrait imaginer qu'un compte puisse avoir une date d'expiration à la création. Dans ce cas, on fait une fois par jours/semaine le tour des comptes et on prévient/suspend un compte.
La suspension aurait pour effet de changer le mot de passe par un autre, bloquant ainsi l'exploitation du compte.
Tel que je le vois, on pourrait ajouter un champs dans la table des utilisateurs avec une date. Celle-ci pourrait être instancier à la création si on la connaît, ou laissé à nulle, (ou repoussée en cas de demande). On pourrait aussi l'utiliser pour prévenir les utilisateurs à X jours avant de l'appliquer. A la date, on a une tâche cron qui s'occupe de faire la manip.
Il y a probablement un mécanisme mixte avec ma proposition de supprimer les séquences d'un utilisateur non connecté depuis XX mois.https://gitlab.inria.fr/vidjil/vidjil/-/issues/4328Account creation: Retour dans le client si l'adresse mail est déjà utilisée2021-02-09T16:15:37+01:00Thonier FlorianAccount creation: Retour dans le client si l'adresse mail est déjà utiliséeJe viens de me faire avoir a tenter une création de compte d'un utilisateur existant déjà. Lorsque j'ai fait validé, je suis tombé sur l'affichage du dernier compte créé, et comme j'avais switché de fenêtre pour faire le mail, je ne m'e...Je viens de me faire avoir a tenter une création de compte d'un utilisateur existant déjà. Lorsque j'ai fait validé, je suis tombé sur l'affichage du dernier compte créé, et comme j'avais switché de fenêtre pour faire le mail, je ne m'en suis pas aperçu.
Il faudrait avoir le bouton de validation de création de compte grisé si l'ensemble des champs ne sont pas rempli ou si l'adresse mail est déjà utilisée. Pour cela, il faudrait avoir une requête vers le serveur pour savoir si elle est déjà présente dans la base de données.https://gitlab.inria.fr/vidjil/vidjil/-/issues/4260Pouvoir télécharger tous les résultats d'un coup2020-04-22T18:42:07+02:00Mikaël SalsonPouvoir télécharger tous les résultats d'un coupSi on veut récupérer tous les résultats d'un sample set, il faut les télécharger un à un.
On devrait prévoir un export plus simple des données. Nous avons des utilisateurs qui ne laissent pas leurs données sur le serveur et qui récupère...Si on veut récupérer tous les résultats d'un sample set, il faut les télécharger un à un.
On devrait prévoir un export plus simple des données. Nous avons des utilisateurs qui ne laissent pas leurs données sur le serveur et qui récupèrent leurs résultats avant de les effacer. Autant faciliter la tâche.https://gitlab.inria.fr/vidjil/vidjil/-/issues/4233Avoir un contrôleur pour ajouter (ou renommer) une classification d'une config2020-06-25T20:35:22+02:00Mikaël SalsonAvoir un contrôleur pour ajouter (ou renommer) une classification d'une configSuite à #4219 il faut ajouter un contrôleur pour créer des classif.Suite à #4219 il faut ajouter un contrôleur pour créer des classif.