Nouvelles:

SMF - Just Installed!

Menu principal

Import Gedcom

Démarré par jlsviro, Avr 21, 2022, 02:40 PM

« précédent - suivant »

jlsviro

Message de jlsviro 21 Oct 2008, 21:08
J'utilise à nouveau geneamania depuis quelques semaines la version autonome et une base de données d'une centaine de personnes.

J'ai voulu importé un gedcom de prés de 50 000 personnes.

Je paramétre l'import et lance l'import. Rien ne se passe.

Avec un gedcom de 560 personnes aucun souçi, cela fonctionne.

J'ai cherché une solution sur le forum et dans la foire aux questions, sans trouver de réponse.

Merci de votre aide

JR

Message de jlsviro 22 Oct 2008, 12:05
Bonjour,

Les scripts PHP (langage dans lequel est développé Généamania) sont bridés en temps d'exécution. Ceci est particulièrement utile dans des contextes d'environnement partagé. Par défaut, un script a 30 secondes pour s'exécuter (Cf. paramétrage de la version autonome).
Pour ce qui est de l'import Gedcom, cette valeur a été portée à 120 secondes. C'est suffisant dans la plupart des cas. Vous pouvez augmenter cette limite en modifiant le fichier Import_Gedcom.php avec un éditeur de texte (blocnote par exemple).
Cherchez la ligne :
set_time_limit(120);Et remplacez la valeur 120 par une autre valeur, exemple 12000. Si cela ne passe toujours pas, augmentez la valeur.

Il me semble que ce problème est évoqué sur le forum dans un post du style "contournement des limites". Mais la doc devrait le mentionner.

Vous me direz comment se comporte le logiciel sur les autres fonctions avec une telle base car vous êtes au delà des bases actuelles gérées par Généamania.

Bonne journée.

jean-Luc

Message de jlsviro 22 Oct 2008, 21:05
j'ai essayé jusqu'à 100000000 sans aucun résultat.

cordialement.

JR

Message de jlsviro 22 Oct 2008, 21:51
Bonsoir,
Eventuellement, envoyez moi le gedcom zippé que je regarde chez moi...
Je suis en train de "casser" l'import gedcom mais je ferai le test avec une ancienne version.
jean-Luc

Message de jlsviro 22 Oct 2008, 23:19
J'ai envoyé le gedcom zippé à cette adresse
xxxx@geneamania.net (édité par JLS ==> spam)

jr

Message de jlsviro 23 Oct 2008, 0:10
Je regarde dès que possible, mais je ne vous garantis rien avant la fin de la semaine prochaine (je ne suis pas là ce week end).

Merci de votre patience et de votre confiance.

Jean-Luc

Message de jlsviro 23 Oct 2008, 0:34
Je vois que votre fichier, une fois décompressé, est conséquent... En tous cas en dehors des limites autorisées par défaut.

Pour contourner cette limite, il faut modifier upload_max_filesize.

Si vous utilisez la version autonome, le fichier à modifier est php.ini dans C:\Program Files\MovAMP\mnt\usr\local\php (si vous avez installé la version dans C:\Program Files\MovAMP).

Cherchez
upload_max_filesize = 2M et remplacez 2M par 16M (on passe de 2 méga maxi à 16 méga maxi).

Ceci en conjonction avec la modification du temps que vous avez faite.

Arrivez-vous maintenant à importer le fichier ?

Jean-Luc

PS : éventuellement, modifiez memory_limit = 8M à 16M (en dernier ressort)

Message de jlsviro 23 Oct 2008, 7:10
Bonjour JL

Après plusieurs essais je suis allé jusqu'à :

pour : upload_max_filesize = 2M
Je suis passé à 32M

pour memory_limit = 8M
je suis passé à 60M


pour : Code set_time_limit(120);
je suis allé à 12000000

Malgre cela toujours rien.

je ferai d'autre essais en fin de semaine.

cordialement

JR

Message de jlsviro 23 Oct 2008, 10:16
Bonjour
J'ai juste oublié de préciser que si vous utilisiez la version autonome, il faut impérativement arrêter le logiciel pour que les paramètres soient pris en compte (Y orange en bas à droite, clic droit, quitter ; relancez ensuite comme d'habitude).
Désolé...
Jean-Luc

Message de jlsviro 23 Oct 2008, 13:36
j'avais bien arrêté la logiciel et relancer après avoir fait les modifs.

Cordialement

JR

Message de jlsviro 23 Oct 2008, 23:41
Résumé du traitement :
  50924 personnes créées
  23630 unions créées
  32847 filiations créées
  1792 villes créées
 8)

Voilà, c'est passé ! Le gedcom fait plus de 665 000 lignes. Le traitement a été effectué sur un PC récent (Core2Duo à 2.2 GHz) avec une nouvelle version de l'import Gedcom (plus évoluée mais probablement un peu plus rapide ; cette version devrait encore évoluer pour la 3.0).

Das le php.ini, j'ai mis :
post_max_size = 16M
upload_max_filesize = 16M

Et dans la page Import_Gedcom.php, j'ai mis :
set_time_limit(1200);

Le blocage venait du post_max_size, donc je ne doute pas que vous arriverez à faire l'import avec l'ancienne version...


Bonne soirée.

Jean-Luc

Message de jlsviro 25 Oct 2008, 13:09
Merci Jean-Luc de votre aide.

Gedcom importé.

J'ai même réussi à importer le même gedcom contenent en plus les notes,les médias et les événements.

Comme cela ne fonctionnait pas avec vos modifs

J'ai modifié =

post_max_size = 16M
upload_max_filesize = 16M
set_time_limit(1200);
en
post_max_size = 160M
upload_max_filesize = 160M
set_time_limit(12000);

je ne sais pas si ces chiffres ont justifiées, mais le résultat est là, import sans aucun souçi en 15 minutes.


Cordialement

JR

Message de jlsviro 26 Oct 2008, 22:56
Bonsoir,
Bonne nouvelle.
La nouvelle version est déjà plus complète au niveau des notes. Pour les médias, cela reste encore à faire...
Merci de votre patience.
Jean-Luc

Message de jlsviro 27 Oct 2008, 5:24
Merci de votre réponse et surtout de votre aide

bien cordialement

jr

Message de jlsviro 23 Nov 2008, 21:49
En V3, il y a désormais une case à cocher pour outrepasser la limite de temps.

Jean-Luc

Message de ravier2 17 Fév 2009, 15:30
Bonjour,

Je teste différents logiciels à partir de l'importation d'une base GED de taille similaire à celle de ce post.
L'import ne fonctionne pas en V3.0.2 avec l'option de dépassement de contrainte de temps, est-ce que les paramètrages de ce post sont toujours valables et si c'est le cas, sont-ils toujours dans le fichier mnt\var\www\Import_Gedcom.php car je ne les ai pas vu avec une recherche dans le bloc-note (excepté pour      // En local, l'utilisateur peut demander d'outrepasser la conytrainte de temps
    if (($debride == 'on') and ($Environnement == 'L')) set_time_limit(0);
    // Sinon passage à 120 secondes de CPU pour donner un peu d'air...
    else set_time_limit(120);)

merci

Message de jlsviro 18 Fév 2009, 11:47
Bonjour,

En local, on peut outrepasser la contrainte de temps. Cependant, il reste une contrainte de taille mémoire et de taille de fichier. Les avez-vous modifiées ainsi qu'il est expliqué sur le forum ?

Jean-Luc

Message de ravier2 21 Fév 2009, 15:10
Bonjour,

En fait, je n'ai pas trouvé ces paramètres, c'était l'objet de mon post précédent.
Quand j'ouvre le fichier mnt\var\www\Import_Gedcom.php, je ne vois pas les lignes concernées. Est-ce bien dans ce fichier qu'il faut regarder?

Olivier

Message de jlsviro 21 Fév 2009, 15:40
Bonjour,

A partir de la 3.0, si vous êtes en local, vous avez la possibilité d'outrepasser la contrainte de temps standard sans tripatouiller le code. Pour cela, cochez juste la case "Outrepasser la contrainte de temps".

Maintenant, si cela ne passe toujours pas, c'est soit que votre fichier est trop gros, soit que la mémoire allouée n'est pas suffisante. Ces paramètres peuvent être modifiés dans le php.ini (Cf. le message de JR Floquet ci-dessous, les paramètres concernés étant post_max_size  et upload_max_filesize). Ce fichier est chez moi dans C:\Program Files\MovAMP\mnt\usr\local\php et vous pouvez le modifier avec le bloc notes (notepad).

Si cela ne passe toujours pas, contactez moi directement sur le support.

Jean-Luc

Message de ravier2 22 Fév 2009, 0:31
Je suis bien avec une installation en local, j'ai donc trouvé la localisation du bon fichier et fait les modifs préconisées.
Cette fois, cela marche et passe en approx. 15mn pour près de 30000 personnes.

merci

Message de jlsviro 22 Fév 2009, 13:18
Il faudrait voir si cela passe sur les sites gratuits  8) mais une fois la bascule faite sur le nouveau serveur.

Message de jlsviro 27 Déc 2009, 14:46
Bonjour,

J'ai oublié de remonter les valeurs limites suite à la migration sur UwAmp ; ceci est valable jusqu'à la 4.1 RC 3 incluse. Pour corriger, faites un clic droit sur le U blanc puis "Afficher la fenêtre UwAmp". A côté du bouton "PHP Config", vous avez une icône ; cliquez dessus.

Dans le fichier, procédez aux corrections ci-dessous puis enregistrez :

post_max_size = 16M
upload_max_filesize = 16M

Inutile de redémarrer, UwAmp s'en charge...

Jean-Luc