Closed javiersanp closed 2 years ago
No ocurre en todos los ordenadores.
No ocurre en todos los ordenadores.
Es medio aleatorio.
catastro@e43bc24ad4aa:~/test$ catatom2osm -s 05015sur.geojson 05015 2022-01-23 10:35:09,791 - INFO - Generado '05015/highway_names.csv'. Por favor, compruébelo y ejecute de nuevo /usr/local/bin/catatom2osm: línea 2: 90 Violación de segmento (`core' generado) python3 /opt/CatAtom2Osm/catatom2osm $*
El problema aparece mucho menos desde que se cambia a capas en memoria v2.5.0
Sospecha sobre capa no eliminada https://gis.stackexchange.com/questions/387421/why-segmentation-fault-when-qgsvectorlayer-not-deleted
Posible relación con lxml.etree.iterparse usado en CatAtom.is_empty. Este código no falla:
import xml.etree.ElementTree as ET
def is_empty(self, gml_path, zip_path):
if os.path.exists(zip_path):
zf = zipfile.ZipFile(zip_path)
gml_fp = self.get_path_from_zip(zf, gml_path)
fo = zf.open(gml_fp, 'r')
else:
fo = open(gml_path, 'rb')
text = fo.read(2000)
fo.close()
parser = ET.XMLPullParser(['start', 'end'])
parser.feed(text)
events = list(parser.read_events())
return len([event for event, elem in events if event == 'start']) < 3
Desde 2.0.0 QGIS tira Violación de segmento (`core' generado) con la opción -o al ejecutar la primera vez.