Esri / arcgis-osm-editor

ArcGIS Editor for OpenStreetMap is a toolset for GIS users to access and contribute to OpenStreetMap through their Desktop or Server environment.
Apache License 2.0
399 stars 131 forks source link

Failed to execute (OSMGPFileLoader) #126

Closed aots74 closed 8 years ago

aots74 commented 8 years ago

Have been trying out the new 10.4 version (and thank you for that!!). Everything seems to run OK except in the final stages. After 43 hours (mostly spent on resolving multi-part geometries), I run into the following error:

Any ideas?

ThomasEmge commented 8 years ago

In what geographical extent are you working or what is the OSM file we should use for testing? What are the OSM tags you are attempting to extract as part of the load process?

aots74 commented 8 years ago

Hi Thomas, I'm trying to load the full Australia dataset which is around 6.1gb. I have done it before and not had any problems. The one thing I think I did differently last time was to specify a set of tags. This time around I just selected ALL. I've commenced a run tonight using only the same set as last time and I'll see how it goes but it will take around 48 hours to run.

Thanks for your assistance!

ThomasEmge commented 8 years ago

If you do not intend to edit the data you might want to try a new tool in this release called OSM File Loader (Read Only). This tool skips some functionality that is needed for the read/write access to the OSM server. Using the new tool I was able to load Australia in a little less than 4 hrs on my desktop. Depending on the use of the machine where the tool is being executed you can make use of the parallel processing factor environment variable. To optimize further you should have the scratch workspace pointing to a folder on a different disk than the file geodatabase you use to load the data. For example, have the scratch workspace point to c:\sample and have the target feature classes at d:\OSM\Australia.gdb.

aots74 commented 8 years ago

Thanks Thomas, didn't notice that option. I've just tried using it and I pretty quickly get the error "Unable to create a valid point feature class (Object reference not set to an instance of an object). i have tried with and without manually defining tags. I'm also trying to load into a dataset as I would still like to create a network dataset from the data. Any ideas?

ThomasEmge commented 8 years ago

Hmm, that looks like a bug. Can you post your parameters? Are you running 64bit or 32bit background processing?

aots74 commented 8 years ago

I've tried 32 and 64 bit processing. Here's a copy of my parameters and the results:

Messages Executing: OSMGPMultiLoader S:\SpatialData\australia-latest.osm # # # DO_NOT_DELETE_NODES DO_NOT_DELETE_OSM_FILE S:\SpatialData\SpatialDB.gdb\OSM\osm_pt S:\SpatialData\SpatialDB.gdb\OSM\osm_ln S:\SpatialData\SpatialDB.gdb\OSM\osm_ply Start Time: Tue May 17 11:51:23 2016 Counted 31177712 nodes, 2421838 ways, and 30023 relations. Unable to create a valid point feature class (Object reference not set to an instance of an object.). Failed to execute (OSMGPMultiLoader). Failed at Tue May 17 11:52:23 2016 (Elapsed Time: 59.79 seconds)

ThomasEmge commented 8 years ago

I was able to reproduce the error.

For the time being do not attempt to load the data into a feature dataset just standalone feature classes. Then as a second step move the feature classes into a feature dataset.

aots74 commented 8 years ago

Thanks Thomas. I've tried as you describe and run into a new problem. Sorry! I don't know how I've complicated this so much. Had things working perfectly on 10.3 :( Error as follows:

Messages Executing: OSMGPMultiLoader S:\SpatialData\australia-latest.osm # # # DO_NOT_DELETE_NODES DO_NOT_DELETE_OSM_FILE S:\SpatialData\OSMData.gdb\osm_pt S:\SpatialData\OSMData.gdb\osm_ln S:\SpatialData\OSMData.gdb\osm_ply Start Time: Thu May 19 08:04:10 2016 Counted 31177712 nodes, 2421838 ways, and 30023 relations. Loading nodes... Done loading nodes (Elapsed Time: 0 hours 0 minutes 1 seconds). Error HRESULT E_FAIL has been returned from a call to a COM component. at ESRI.ArcGIS.Geoprocessing.GeoProcessorClass.IGeoProcessor2_Execute(String Name, IVariantArray ipValues, ITrackCancel pTrackCancel)

at ESRI.ArcGIS.OSM.GeoProcessing.OSMToolHelper.loadOSMNodes(List1 osmNodeFileNames, List1 nodeGDBNames, String featureClassName, String targetFeatureClass, List`1 tagsToLoad, Boolean deleteNodes, IGPMessages& toolMessages, ITrackCancel& CancelTracker)

at ESRI.ArcGIS.OSM.GeoProcessing.OSMGPMultiLoader.Execute(IArray paramvalues, ITrackCancel TrackCancel, IGPEnvironmentManager envMgr, IGPMessages message) Failed to execute (OSMGPMultiLoader). Failed at Thu May 19 08:07:36 2016 (Elapsed Time: 3 minutes 25 seconds)

ThomasEmge commented 8 years ago

Did you add the python directory to the PATH system environment variable?

If we have hidden this information, could you please suggest a location to more prominently feature the changes to the tool? The current location is here: https://github.com/Esri/arcgis-osm-editor/wiki/Release-Notes

aots74 commented 8 years ago

Yes, PATH variable is set as C:\Python27\ArcGISx6410.4 but I'm still receiving the error

ThomasEmge commented 8 years ago

And another bug. We have an API call that is not working as expected in a 64bit process. https://github.com/Esri/arcgis-osm-editor/blob/master/src/OSMGeoProcessing/OSMGPFactory.cs#L514

For now please use the tool in a 32bit call. Either in 32bit background processing or if you have the 64bit background processing installed, please run the tool in the foreground.

aots74 commented 8 years ago

Thanks Thomas, yes changing to 32-bit did the trick. Thanks! And I'm happy to test further if it would help at all.

jobelanger commented 3 years ago

Hello, apologies for opening a very old issue. Having the same issues as OP, but with ArcMap 10.8. Would someone be able to help me on how to change background processing in the UI? Not sure if it''s 64bit or 32 bit. Thanks!

ThomasEmge commented 3 years ago

Here is the help on how to switch between foreground and background geoprocessing.

https://desktop.arcgis.com/en/arcmap/latest/analyze/executing-tools/foreground-and-background-processing.htm