Re: [OSM-dev-fr] osm2psql, problème de fichier.

2013-03-23 Par sujet Lucas Nussbaum
On 23/03/13 at 01:17 +0100, Philippe Verdy wrote:
 Je ne vois pas comment un memory mapping en 32-bits peut mapper la
 totalité d'un fichier qui ne tient pas dans un seul segment mémoire
 virtuel 32 bits.

je ne vois pas pourquoi tu parles de memory mapping. C'est open() qui
échoue.

Lucas

___
dev-fr mailing list
dev-fr@openstreetmap.org
http://lists.openstreetmap.org/listinfo/dev-fr


Re: [OSM-dev-fr] osm2psql, problème de fichier.

2013-03-22 Par sujet Lucas Nussbaum
On 21/03/13 at 13:55 +0100, Vincent Pottier wrote:
 Le 21/03/2013 11:57, Lucas Nussbaum a écrit :
 Que dit:
 strace -f /home/vincent/Documents/cartographie/sh/france.osm2sql.sh
 ?
 
 Lucas
 Good guess !
 Je ne comprends pas tout mais voici un extrait vers la fin :
 
 [pid 25569] write(2, \nReading in file: /home/vincent/..., 58
 Reading in file: /home/vincent/tmp/france-latest.osm.pbf
 ) = 58
 [pid 25569] time(NULL)  = 1363869357
 [pid 25569] brk(0xa51e000)  = 0xa51e000
 [pid 25569] mmap2(NULL, 33558528, PROT_READ|PROT_WRITE,
 MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x643df000
 [pid 25569] mmap2(NULL, 33558528, PROT_READ|PROT_WRITE,
 MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x623de000
 *[pid 25569] open(/home/vincent/tmp/france-latest.osm.pbf,
 O_RDONLY) = -1 EOVERFLOW (Value too large for defined data type)*

D'après open(2):

EOVERFLOW
   pathname refers to a regular file that is too large to be opened.
   The  usual  scenario  here  is that  an application compiled on a
   32-bit platform without -D_FILE_OFFSET_BITS=64 tried to open a
   file whose size exceeds (231)-1 bits; see also O_LARGEFILE
   above.  This is the error  specified by POSIX.1-2001; in kernels
   before 2.6.24, Linux gave the error EFBIG for this case.

Donc recompiler l'appli avec -D_FILE_OFFSET_BITS=64 devrait aider. (ou
passer sur un système 64 bits)

 J'ai mis en gras ce qui me semble être un indice de ce qui ne va pas.
 D'après ce que je viens de voir[1] mmap2 effectue une projection en
 mémoire d'un fichier. Peut-être que ma machine manque de mémoire
 pour traiter ce fichier de 2.4 Go (3.4 Go de RAM).

non, au pire ça swappera.
-- 
| Lucas Nussbaum  Assistant professor @ Univ. de Lorraine |
| lucas.nussb...@loria.fr   LORIA / AlGorille |
| http://www.loria.fr/~lnussbau/+33 3 54 95 86 19 |

___
dev-fr mailing list
dev-fr@openstreetmap.org
http://lists.openstreetmap.org/listinfo/dev-fr


Re: [OSM-dev-fr] osm2psql, problème de fichier.

2013-03-22 Par sujet Philippe Verdy
Je ne vois pas comment un memory mapping en 32-bits peut mapper la
totalité d'un fichier qui ne tient pas dans un seul segment mémoire
virtuel 32 bits.

A mon avis il faut recompiler une version 64 bits de l'application (et
utiliser un OS installé en 64 bits pour le supporter). Sinon tu auras
beau faire mies les pointeurs mémoire 32 bits ne pourront pas accéder
à tout le fichier.

Autre solution : que le logiciel ne fasse plus un mémory mapping aussi
grand mais fasse des I/O classiques à la demande avec un buffer
classique assez grand pour éviter de multiplier les I/O.

D'autant plus que les accès à ce fichier pendant le décodage sont
essentiellement séquentiels (par un parseur, même si le format du
fichier PBF est binaire et contient des offsets 64 bits pour indexer
ses différentes sections), et demandent assez peu d'accès aléatoires
pendant le traitement.

Ca complique un peu le programme qui doit gérer des caches pour les
index mais ce n'est pas infaisable et cela améliorerait même les
performances en évitant justement de solliciter le gestionnaire
mémoire plus que nécessaire (au delà de 4 Mo environ, il n'y a plus
beaucoup d'intérêt réel à utiliser le memory mapping, les I/O seront
plus performantes en mettant moins de charge sur le système). On peut
garer un memory mapping sur les segments importants d'index du fichier
PBF si cela peut aider, mais pas pour le plus gros de ses données.

2013/3/21 Lucas Nussbaum lucas.nussb...@loria.fr:
 On 21/03/13 at 13:55 +0100, Vincent Pottier wrote:
 Le 21/03/2013 11:57, Lucas Nussbaum a écrit :
 Que dit:
 strace -f /home/vincent/Documents/cartographie/sh/france.osm2sql.sh
 ?
 
 Lucas
 Good guess !
 Je ne comprends pas tout mais voici un extrait vers la fin :

 [pid 25569] write(2, \nReading in file: /home/vincent/..., 58
 Reading in file: /home/vincent/tmp/france-latest.osm.pbf
 ) = 58
 [pid 25569] time(NULL)  = 1363869357
 [pid 25569] brk(0xa51e000)  = 0xa51e000
 [pid 25569] mmap2(NULL, 33558528, PROT_READ|PROT_WRITE,
 MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x643df000
 [pid 25569] mmap2(NULL, 33558528, PROT_READ|PROT_WRITE,
 MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x623de000
 *[pid 25569] open(/home/vincent/tmp/france-latest.osm.pbf,
 O_RDONLY) = -1 EOVERFLOW (Value too large for defined data type)*

 D'après open(2):

 EOVERFLOW
pathname refers to a regular file that is too large to be opened.
The  usual  scenario  here  is that  an application compiled on a
32-bit platform without -D_FILE_OFFSET_BITS=64 tried to open a
file whose size exceeds (231)-1 bits; see also O_LARGEFILE
above.  This is the error  specified by POSIX.1-2001; in kernels
before 2.6.24, Linux gave the error EFBIG for this case.

 Donc recompiler l'appli avec -D_FILE_OFFSET_BITS=64 devrait aider. (ou
 passer sur un système 64 bits)

 J'ai mis en gras ce qui me semble être un indice de ce qui ne va pas.
 D'après ce que je viens de voir[1] mmap2 effectue une projection en
 mémoire d'un fichier. Peut-être que ma machine manque de mémoire
 pour traiter ce fichier de 2.4 Go (3.4 Go de RAM).

 non, au pire ça swappera.
 --
 | Lucas Nussbaum  Assistant professor @ Univ. de Lorraine |
 | lucas.nussb...@loria.fr   LORIA / AlGorille |
 | http://www.loria.fr/~lnussbau/+33 3 54 95 86 19 |

 ___
 dev-fr mailing list
 dev-fr@openstreetmap.org
 http://lists.openstreetmap.org/listinfo/dev-fr

___
dev-fr mailing list
dev-fr@openstreetmap.org
http://lists.openstreetmap.org/listinfo/dev-fr


Re: [OSM-dev-fr] osm2psql, problème de fichier.

2013-03-21 Par sujet sly (sylvain letuffe)
On jeudi 21 mars 2013, Vincent Pottier wrote:

 $ ./france.osm2sql.sh
(...)
 Reading in file: /home/vincent/tmp/france-latest.osm.pbf
 Unable to open /home/vincent/tmp/france-latest.osm.pbf
 Error occurred, cleaning up
 
 Ça roule pour corse-latest.osm.pbf, comme pour bz2.
 Je teste avec france-130319.osm.pbf pour voir s'il n'y a pas un problème 
 de saut de version de fichier durant le téléchargement. (pourtant le md5 
 était bon)

Je tenterais quand même, même si tu as déjà dû vérifier 10 fois de creuser le 
message ci-avant :
Unable to open /home/vincent/tmp/france-latest.osm.pbf
qui m'a l'air relativement explicite.

Dans la foulée de ton ./france.osm2sql.sh (sans changer de dossier, ni 
d'utilisateur, ni de quoi que ce soit tenter un  :
$ ls -l /home/vincent/tmp/france-latest.osm.pbf
$ file /home/vincent/tmp/france-latest.osm.pbf

Vérifier des choses simples :
- Le fichier est il bien là ?
- sous ce nom là ? (un - un espace, un point ?)
- ton script change-t-il d'utilisateur et si oui, celui-ci a il accès au 
fichier (pas juste oui c'est bon y'a 777 mais passer dans cet utilisateur 
et tenter une lecture partielle de ce fichier genre 
cat /home/vincent/tmp/france-latest.osm.pbf  /dev/null  (puis ctrl+c) )


-- 
sly, DWG member since 11/2012
Coordinateur du groupe [ga]
http://wiki.openstreetmap.org/wiki/User:Sletuffe

___
dev-fr mailing list
dev-fr@openstreetmap.org
http://lists.openstreetmap.org/listinfo/dev-fr


Re: [OSM-dev-fr] osm2psql, problème de fichier.

2013-03-21 Par sujet Vincent Pottier

Le 21/03/2013 09:55, sly (sylvain letuffe) a écrit :

Je tenterais quand même, même si tu as déjà dû vérifier 10 fois de creuser le
message ci-avant :
Unable to open /home/vincent/tmp/france-latest.osm.pbf
qui m'a l'air relativement explicite.

Dans la foulée de ton ./france.osm2sql.sh (sans changer de dossier, ni
d'utilisateur, ni de quoi que ce soit tenter un  :
$ ls -l /home/vincent/tmp/france-latest.osm.pbf

postgres@vincent:~$ ls -l /home/vincent/tmp/france-latest.osm.pbf
-rw-rw-rw- 1 postgres postgres 2480499375 mars  19 02:24 
/home/vincent/tmp/france-latest.osm.pbf

$ file /home/vincent/tmp/france-latest.osm.pbf

postgres@vincent:~$ file /home/vincent/tmp/france-latest.osm.pbf
/home/vincent/tmp/france-latest.osm.pbf: data

Vérifier des choses simples :
- Le fichier est il bien là ?
- sous ce nom là ? (un - un espace, un point ?)
- ton script change-t-il d'utilisateur et si oui, celui-ci a il accès au
fichier (pas juste oui c'est bon y'a 777 mais passer dans cet utilisateur
et tenter une lecture partielle de ce fichier genre
cat /home/vincent/tmp/france-latest.osm.pbf  /dev/null  (puis ctrl+c) )

postgres@vincent:~$ cat /home/vincent/tmp/france-latest.osm.pbf  /dev/null
Pas de problème... A entendre le disque dur, ça a l'aire de lire le fichier.

Et, comme je le pensais, toujours le même problème avec 
france-130319.osm.pbf chargé dans la nuit

postgres@vincent:~$ ls -l /home/vincent/tmp/france-130319.osm.pbf
-rw-r--r-- 1 postgres postgres 2481581503 mars  20 02:27 
/home/vincent/tmp/france-130319.osm.pbf
postgres@vincent:~$ 
/home/vincent/Documents/cartographie/sh/france.osm2sql.sh

osm2pgsql SVN version 0.81.0 (64bit id space)
[...]
Reading in file: /home/vincent/tmp/france-130319.osm.pbf
Unable to open /home/vincent/tmp/france-130319.osm.pbf
Bug ?
--
FrViPofm


___
dev-fr mailing list
dev-fr@openstreetmap.org
http://lists.openstreetmap.org/listinfo/dev-fr


Re: [OSM-dev-fr] osm2psql, problème de fichier.

2013-03-21 Par sujet Christian Quest
Tu as essayé un coup d'osmconvert sur le fichier france-130319.osm.pbf
pour voir si il était valide ?

Tu as essayé avec les extraits d'osm-fr ? http://download.openstreetmap.fr/

L'erreur apparait très vite où après une certain temps laisserait
penser que c'est bien quelque part dans le contenu du fichier qu'il y
a un pépin ?


Le 21 mars 2013 11:17, Vincent Pottier vpott...@gmail.com a écrit :
 Le 21/03/2013 09:55, sly (sylvain letuffe) a écrit :

 Je tenterais quand même, même si tu as déjà dû vérifier 10 fois de creuser
 le
 message ci-avant :
 Unable to open /home/vincent/tmp/france-latest.osm.pbf
 qui m'a l'air relativement explicite.

 Dans la foulée de ton ./france.osm2sql.sh (sans changer de dossier, ni
 d'utilisateur, ni de quoi que ce soit tenter un  :
 $ ls -l /home/vincent/tmp/france-latest.osm.pbf

 postgres@vincent:~$ ls -l /home/vincent/tmp/france-latest.osm.pbf
 -rw-rw-rw- 1 postgres postgres 2480499375 mars  19 02:24
 /home/vincent/tmp/france-latest.osm.pbf

 $ file /home/vincent/tmp/france-latest.osm.pbf

 postgres@vincent:~$ file /home/vincent/tmp/france-latest.osm.pbf
 /home/vincent/tmp/france-latest.osm.pbf: data

 Vérifier des choses simples :
 - Le fichier est il bien là ?
 - sous ce nom là ? (un - un espace, un point ?)
 - ton script change-t-il d'utilisateur et si oui, celui-ci a il accès au
 fichier (pas juste oui c'est bon y'a 777 mais passer dans cet
 utilisateur
 et tenter une lecture partielle de ce fichier genre
 cat /home/vincent/tmp/france-latest.osm.pbf  /dev/null  (puis ctrl+c) )

 postgres@vincent:~$ cat /home/vincent/tmp/france-latest.osm.pbf  /dev/null
 Pas de problème... A entendre le disque dur, ça a l'aire de lire le fichier.

 Et, comme je le pensais, toujours le même problème avec
 france-130319.osm.pbf chargé dans la nuit
 postgres@vincent:~$ ls -l /home/vincent/tmp/france-130319.osm.pbf
 -rw-r--r-- 1 postgres postgres 2481581503 mars  20 02:27
 /home/vincent/tmp/france-130319.osm.pbf
 postgres@vincent:~$
 /home/vincent/Documents/cartographie/sh/france.osm2sql.sh

 osm2pgsql SVN version 0.81.0 (64bit id space)
 [...]
 Reading in file: /home/vincent/tmp/france-130319.osm.pbf
 Unable to open /home/vincent/tmp/france-130319.osm.pbf
 Bug ?
 --
 FrViPofm



 ___
 dev-fr mailing list
 dev-fr@openstreetmap.org
 http://lists.openstreetmap.org/listinfo/dev-fr



-- 
Christian Quest - OpenStreetMap France
Synthèse du Week-end SOTM-FR à Lyon : http://openstreetmap.fr/synthese-sotmfr

___
dev-fr mailing list
dev-fr@openstreetmap.org
http://lists.openstreetmap.org/listinfo/dev-fr


Re: [OSM-dev-fr] osm2psql, problème de fichier.

2013-03-21 Par sujet Lucas Nussbaum
On 21/03/13 at 11:17 +0100, Vincent Pottier wrote:
 Le 21/03/2013 09:55, sly (sylvain letuffe) a écrit :
 Je tenterais quand même, même si tu as déjà dû vérifier 10 fois de creuser le
 message ci-avant :
 Unable to open /home/vincent/tmp/france-latest.osm.pbf
 qui m'a l'air relativement explicite.
 
 Dans la foulée de ton ./france.osm2sql.sh (sans changer de dossier, ni
 d'utilisateur, ni de quoi que ce soit tenter un  :
 $ ls -l /home/vincent/tmp/france-latest.osm.pbf
 postgres@vincent:~$ ls -l /home/vincent/tmp/france-latest.osm.pbf
 -rw-rw-rw- 1 postgres postgres 2480499375 mars  19 02:24
 /home/vincent/tmp/france-latest.osm.pbf
 $ file /home/vincent/tmp/france-latest.osm.pbf
 postgres@vincent:~$ file /home/vincent/tmp/france-latest.osm.pbf
 /home/vincent/tmp/france-latest.osm.pbf: data
 Vérifier des choses simples :
 - Le fichier est il bien là ?
 - sous ce nom là ? (un - un espace, un point ?)
 - ton script change-t-il d'utilisateur et si oui, celui-ci a il accès au
 fichier (pas juste oui c'est bon y'a 777 mais passer dans cet utilisateur
 et tenter une lecture partielle de ce fichier genre
 cat /home/vincent/tmp/france-latest.osm.pbf  /dev/null  (puis ctrl+c) )
 postgres@vincent:~$ cat /home/vincent/tmp/france-latest.osm.pbf  /dev/null
 Pas de problème... A entendre le disque dur, ça a l'aire de lire le fichier.
 
 Et, comme je le pensais, toujours le même problème avec
 france-130319.osm.pbf chargé dans la nuit
 postgres@vincent:~$ ls -l /home/vincent/tmp/france-130319.osm.pbf
 -rw-r--r-- 1 postgres postgres 2481581503 mars  20 02:27
 /home/vincent/tmp/france-130319.osm.pbf
 postgres@vincent:~$
 /home/vincent/Documents/cartographie/sh/france.osm2sql.sh
 osm2pgsql SVN version 0.81.0 (64bit id space)
 [...]
 Reading in file: /home/vincent/tmp/france-130319.osm.pbf
 Unable to open /home/vincent/tmp/france-130319.osm.pbf
 Bug ?

Que dit:
strace -f /home/vincent/Documents/cartographie/sh/france.osm2sql.sh
?

Lucas

___
dev-fr mailing list
dev-fr@openstreetmap.org
http://lists.openstreetmap.org/listinfo/dev-fr


Re: [OSM-dev-fr] osm2psql, problème de fichier.

2013-03-21 Par sujet Vincent Pottier

Le 21/03/2013 11:57, Lucas Nussbaum a écrit :

Que dit:
strace -f /home/vincent/Documents/cartographie/sh/france.osm2sql.sh
?

Lucas

Good guess !
Je ne comprends pas tout mais voici un extrait vers la fin :

[pid 25569] write(2, \nReading in file: /home/vincent/..., 58
Reading in file: /home/vincent/tmp/france-latest.osm.pbf
) = 58
[pid 25569] time(NULL)  = 1363869357
[pid 25569] brk(0xa51e000)  = 0xa51e000
[pid 25569] mmap2(NULL, 33558528, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x643df000
[pid 25569] mmap2(NULL, 33558528, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x623de000
*[pid 25569] open(/home/vincent/tmp/france-latest.osm.pbf, O_RDONLY) = 
-1 EOVERFLOW (Value too large for defined data type)*
[pid 25569] write(2, Unable to open /home/vincent/tmp..., 55Unable to 
open /home/vincent/tmp/france-latest.osm.pbf

) = 55
[pid 25569] brk(0xa50e000)  = 0xa50e000
[pid 25569] munmap(0x643df000, 33558528) = 0
[pid 25569] munmap(0x623de000, 33558528) = 0
[pid 25569] write(2, Error occurred, cleaning up\n, 28Error occurred, 
cleaning up

) = 28
[pid 25569] send(3, X\0\0\0\4, 5, MSG_NOSIGNAL) = 5
[pid 25569] close(3)= 0
[pid 25569] send(4, X\0\0\0\4, 5, MSG_NOSIGNAL) = 5
[pid 25569] close(4)= 0
[pid 25569] send(5, X\0\0\0\4, 5, MSG_NOSIGNAL) = 5
[pid 25569] close(5)= 0
[pid 25569] send(6, X\0\0\0\4, 5, MSG_NOSIGNAL) = 5
[pid 25569] close(6)= 0
[pid 25569] exit_group(1)   = ?
Process 25568 resumed
Process 25569 detached

J'ai mis en gras ce qui me semble être un indice de ce qui ne va pas.
D'après ce que je viens de voir[1] mmap2 effectue une projection en 
mémoire d'un fichier. Peut-être que ma machine manque de mémoire pour 
traiter ce fichier de 2.4 Go (3.4 Go de RAM).


[1] http://manpages.ubuntu.com/manpages/intrepid/fr/man2/mmap2.2.html
--
FrViPofm
___
dev-fr mailing list
dev-fr@openstreetmap.org
http://lists.openstreetmap.org/listinfo/dev-fr


Re: [OSM-dev-fr] osm2psql, problème de fichier.

2013-03-21 Par sujet Pieren
On Thu, Mar 21, 2013 at 1:55 PM, Vincent Pottier vpott...@gmail.com wrote:
 J'ai mis en gras ce qui me semble être un indice de ce qui ne va pas.
 D'après ce que je viens de voir[1] mmap2 effectue une projection en mémoire
 d'un fichier. Peut-être que ma machine manque de mémoire pour traiter ce
 fichier de 2.4 Go (3.4 Go de RAM).

 [1] http://manpages.ubuntu.com/manpages/intrepid/fr/man2/mmap2.2.html

osm2pgsql devrait pouvoir supporter des fichiers 4GB:

https://github.com/openstreetmap/osm2pgsql/commit/4b0757f9c7f80c3056230333ae611ac322aff2b9

Pieren

___
dev-fr mailing list
dev-fr@openstreetmap.org
http://lists.openstreetmap.org/listinfo/dev-fr


Re: [OSM-dev-fr] osm2psql, problème de fichier.

2013-03-21 Par sujet Matthias Dietrich
2013/3/21 Vincent Pottier vpott...@gmail.com



 *[pid 25569] open(/home/vincent/tmp/france-latest.osm.pbf, O_RDONLY) =
 -1 EOVERFLOW (Value too large for defined data type)*
 [pid 25569] write(2, Unable to open /home/vincent/tmp..., 55Unable to
 open /home/vincent/tmp/france-latest.osm.pbf


C'est l'appel à open() qui retourne une erreur EOVERFLOW.

http://pubs.opengroup.org/onlinepubs/95399/functions/open.html

[EOVERFLOW]
The named file is a regular file and the size of the file cannot be
represented correctly in an object of type *off_t*.

Tu utilises un OS 32 bits ?
___
dev-fr mailing list
dev-fr@openstreetmap.org
http://lists.openstreetmap.org/listinfo/dev-fr


Re: [OSM-dev-fr] osm2psql, problème de fichier.

2013-03-21 Par sujet Eric Marsden
 vp == Vincent Pottier vpott...@gmail.com writes:

  vp *[pid 25569] open(/home/vincent/tmp/france-latest.osm.pbf, O_RDONLY) = 
-1 EOVERFLOW (Value too
  vp large for defined data type)*
  vp [pid 25569] write(2, Unable to open /home/vincent/tmp..., 55Unable to 
open
  vp /home/vincent/tmp/france-latest.osm.pbf

  C'est que le fichier est trop grand pour l'application (probablement
  machine 32 bits et osm2pgsql compilé sans l'option
  -D_FILE_OFFSET_BITS=64).

-- 
Eric Marsden


___
dev-fr mailing list
dev-fr@openstreetmap.org
http://lists.openstreetmap.org/listinfo/dev-fr


Re: [OSM-dev-fr] osm2psql, problème de fichier.

2013-03-21 Par sujet Vincent Pottier

Le 21/03/2013 14:39, Eric Marsden a écrit :

   vp *[pid 25569] open(/home/vincent/tmp/france-latest.osm.pbf, O_RDONLY) = 
-1 EOVERFLOW (Value too
   vp large for defined data type)*
   vp [pid 25569] write(2, Unable to open /home/vincent/tmp..., 55Unable to 
open
   vp /home/vincent/tmp/france-latest.osm.pbf

   C'est que le fichier est trop grand pour l'application (probablement
   machine 32 bits et osm2pgsql compilé sans l'option
   -D_FILE_OFFSET_BITS=64).


Probable !
Et ça se met où, l'option ?
Je ne suis pas champion de la compilation de programmes.
Et [1] ne donne pas beaucoup d'indications...
Il y a bien la ligne :

sed  -i  's/-g -O2/-O2 -march=native -fomit-frame-pointer/'  Makefile




[1] http://wiki.openstreetmap.org/wiki/Osm2pgsql#From_source_.28generic.29
--
Vincent

___
dev-fr mailing list
dev-fr@openstreetmap.org
http://lists.openstreetmap.org/listinfo/dev-fr