Post-processing fails with Segmentation fault (core dumped)

Prev Next

Introduction

Problem description

navvis-postprocessing fails:

/opt/NavVis/mapper/share/navvis_scripts/_navvis-start-postprocessing-M6.sh: line 1756: 13807 Killed                  $NV_CLOUD_PROCESSOR --base-dir=$PROC_DIR --input-dir=pointclouds/tmp --cloud-res=$CLOUD_RES $NV_CLOUD_PROCESSOR_EXTRA_ARGS --sensor-frame=$SENSORFRAME_POSTPROCESSING
/opt/NavVis/mapper/share/navvis_scripts/_navvis-start-postprocessing-M6.sh: line 1756: 24000 Segmentation fault      (core dumped) $NV_PCP $POINTCLOUD_RAW_NV $POINTCLOUD_RAW_PLY --input-res=$CLOUD_RES --sensor-frame=$SENSORFRAME_POSTPROCESSING
/opt/NavVis/mapper/share/navvis_scripts/_navvis-start-postprocessing-M6.sh: line 1756: 24023 Segmentation fault      (core dumped) $NV_PCP $POINTCLOUD_NV $POINTCLOUD_OUT_PLY --input-res=$CLOUD_RES --sensor-frame=$SENSORFRAME_POSTPROCESSING

However the post-processing continues and the log shows

File does not exist: 'datasets_proc/2020-04-09_10.17.32//pointcloud.ply'. Exit.
Removing datasets_proc/2020-04-09_10.17.32//tmp/bags/rewritten
head: cannot open 'datasets_proc/2020-04-09_10.17.32//pointcloud.ply' for reading: No such file or directory


***************************************************************************
*** Colorizing point cloud                                              ***
*** Date: 2020-04-24 Time: 14-39-38                                     ***
***************************************************************************
ERROR: File '/media/data2/Patz/datasets_proc/2020-04-09_10.17.32/pointcloud.ply' does not exist! Exit.


----------------------------------------------------------------------------
NavVis Point Cloud Coloring
Copyright (c) NavVis GmbH 2013-2017, http://www.navvis.com

Software Version: 4.0.15-b7540-f36811c9-bionic-release-2.5.1-gandalf (f36811c93f19dc505e2a11e46cf51714dbaca625)
System Information: CPU: 8 physical / 16 logical cores | Physical Memory: 62.73 GiB
----------------------------------------------------------------------------

**************************************************************************
*** Started stitching of panoramic images on                            *** 
*** Input directory: '/media/data2/Patz/datasets_rec/2020-04-09_10.17.32'                                         *** 
*** Date: 2020-04-24 Time: 14-39-38                                     ***
***************************************************************************
[ERROR] Point cloud 'datasets_proc/2020-04-09_10.17.32//pointcloud.ply' does not exist.
[ERROR] Directory 'datasets_proc/2020-04-09_10.17.32/' seems not to be a valid navvis proc directory.
Removing datasets_proc/2020-04-09_10.17.32//tmp
[ FAILED] /media/data2/Patz/datasets_rec/2020-04-09_10.17.32 > Panoramic image stitching failed.

Root cause

Segmentation faults or errors displaying

std::bad_alloc

indicate that the software tries to access memory or storage that is not available to it. That happens either when another piece of software is using it or - which is the usual case for NavVis Post-Processing:

  • post-processing already has consumed all of the memory (RAM)

  • the workstation does not have enough storage space left to store temporary or final data

Scope

This solution applies to all versions of Post-Processing software.

Troubleshooting procedure

In the post-processing log, check the Section "Host" right at the beginning:

Host:
  CPU:     logical cores: 8 / physical cores: 4
  Memory:  physical: 31.4 GiB, available: 25.5 GiB, 19% used
  Storage: total: 3072.0 GiB, used: 1402.1 GiB, free: 1669.9 GiB, 46% used

There should be enough Memory and Storage available.

Refer to the hardware specifications for Desktop Processing here.

The different options you can try now are:

  1. Stop all other known processes running at the same time

  2. Clean up your workstation storage

  3. Use a workstation with more memory (RAM)

  4. Cut the Dataset at a good position you determined in the quality map (nv_cut-dataset) and process the two datasets one after another

If the customer runs into issues for third-party processes and tools as well, it is likely that the workstation itself is broken (eg broken RAM modules).