[Debian-med-packaging] Bug#911793: Bug#911793: autopkgtest regression: Segmentation fault

Mattia Rizzolo mattia at debian.org
Fri Nov 23 09:52:19 GMT 2018


Control: reassign -1 src:gdcm 2.8.7-2
Control: severity -1 serious
Control: retitle -1 gdcm: ABI break
Control: affects -1 camitk

Hi,

So, I tried to investigate this a bit, and found the ABI break exactly
where Paul supposed it was.

On Tue, Nov 20, 2018 at 08:49:58PM +0100, Paul Gevers wrote:
> > And/or as
> > you suggested earlier should I add "gdcm >= 2.8.8"? Or it is something
> > (like "Breaks:vtk6") that should be done in gdcm or vtk7 instead?
> 
> I don't think so. I believe something in gdcm broke your package. If I
> currently look at the autopkgtest results in unstable [2] I see that
> your current version was fine for a while, until gdcm 2.8.8-1 was
> uploaded. The error you receive is the same in unstable and testing now.
> Note that all the versions of gdcm and vtk* you talked about in the past
> are now in testing. The reason why the old gamitk keeps working is
> because the old versions of the libraries stay around as long as needed
> by a package.
> 
> I don't know about the internals of vtk and gdcm, but something seems
> broken in there. I can't tell from here what it is.

This is a diff of a .symbols file I generated from libvtkgdcm2.8
versions 2.8.7-1 and 2.8.7-2.  The latter symbols file is the same all
the way to the current 2.8.8-2.

--- 2.8.7-1/libvtkgdcm2.8.symbols	2018-11-23 10:40:51.869500001 +0100
+++ 2.8.7-2/libvtkgdcm2.8.symbols	2018-11-23 10:43:34.526105357 +0100
@@ -68,7 +68,6 @@
  _Z38vtkImageMapToWindowLevelColors2ExecuteIyEvP31vtkImageMapToWindowLevelColors2P12vtkImageDataPT_S3_PhPii at Base 1
  _ZN10vtkCommand10UnRegisterEP13vtkObjectBase at Base 1
  _ZN10vtkCommand3IsAEPKc at Base 1
- _ZN11vtkBitArray14GetVoidPointerEx at Base 1
  _ZN12vtkAlgorithm11GetProgressEv at Base 1
  _ZN12vtkAlgorithm11SetProgressEd at Base 1
  _ZN12vtkAlgorithm12GetErrorCodeEv at Base 1
@@ -85,6 +84,7 @@
  _ZN12vtkAlgorithm19GetProgressMinValueEv at Base 1
  _ZN12vtkAlgorithm19GetProgressObserverEv at Base 1
  _ZN12vtkCellArray14InsertNextCellExPKx at Base 1
+ _ZN12vtkImageData10GetSpacingEv at Base 1
  _ZN12vtkImageData17GetNumberOfPointsEv at Base 1
  _ZN12vtkImageData9GetExtentEPi at Base 1
  _ZN12vtkImageData9GetExtentERiS0_S0_S0_S0_S0_ at Base 1
@@ -116,7 +116,11 @@
  _ZN13vtkDataWriter18SetPedigreeIdsNameEPKc at Base 1
  _ZN13vtkDataWriter19GetFileTypeMaxValueEv at Base 1
  _ZN13vtkDataWriter19GetFileTypeMinValueEv at Base 1
+ _ZN13vtkDataWriter20WriteArrayMetaDataOnEv at Base 1
  _ZN13vtkDataWriter21GetOutputStringLengthEv at Base 1
+ _ZN13vtkDataWriter21GetWriteArrayMetaDataEv at Base 1
+ _ZN13vtkDataWriter21SetWriteArrayMetaDataEb at Base 1
+ _ZN13vtkDataWriter21WriteArrayMetaDataOffEv at Base 1
  _ZN13vtkDataWriter21WriteToOutputStringOnEv at Base 1
  _ZN13vtkDataWriter22GetWriteToOutputStringEv at Base 1
  _ZN13vtkDataWriter22SetWriteToOutputStringEi at Base 1
@@ -249,8 +253,6 @@
  _ZN15vtkImageReader231SetDataScalarTypeToUnsignedCharEv at Base 1
  _ZN15vtkImageReader232SetDataScalarTypeToUnsignedShortEv at Base 1
  _ZN15vtkRenderWindow17SetNumberOfLayersEi at Base 1
- _ZN16vtkAbstractArray21SetNumberOfComponentsEi at Base 1
- _ZN16vtkAbstractArray7SetNameEPKc at Base 1
  _ZN16vtkImageRGBToYBR15ThreadedExecuteEP12vtkImageDataS1_Pii at Base 1
  _ZN16vtkImageRGBToYBR3IsAEPKc at Base 1
  _ZN16vtkImageRGBToYBR3NewEv at Base 1
@@ -469,6 +471,8 @@
  _ZN19vtkGDCMImageReader2D0Ev at Base 1
  _ZN19vtkGDCMImageReader2D1Ev at Base 1
  _ZN19vtkGDCMImageReader2D2Ev at Base 1
+ _ZN19vtkGenericDataArrayI23vtkAOSDataArrayTemplateIxExE11InsertValueExx at Base 1
+ _ZN19vtkGenericDataArrayI23vtkAOSDataArrayTemplateIxExE19EnsureAccessToTupleEx at Base 1
  _ZN19vtkIOImage_AutoInitD1Ev at Base 1
  _ZN19vtkIOImage_AutoInitD2Ev at Base 1
  _ZN19vtkImageColorViewer11GetPositionEv at Base 1
@@ -549,7 +553,6 @@
  _ZN19vtkImageMapToColors20GetPassAlphaToOutputEv at Base 1
  _ZN19vtkImageMapToColors20PassAlphaToOutputOffEv at Base 1
  _ZN19vtkImageMapToColors20SetPassAlphaToOutputEi at Base 1
- _ZN20vtkDataArrayTemplateIxE8GetValueEx at Base 1
  _ZN21vtkGDCMPolyDataReader11GetFileNameEv at Base 1
  _ZN21vtkGDCMPolyDataReader11RequestDataEP14vtkInformationPP20vtkInformationVectorS3_ at Base 1
  _ZN21vtkGDCMPolyDataReader11SetFileNameEPKc at Base 1
@@ -607,6 +610,8 @@
  _ZN21vtkImageMapToColors16D1Ev at Base 1
  _ZN21vtkImageMapToColors16D2Ev at Base 1
  _ZN22vtkMedicalImageReader225GetMedicalImagePropertiesEv at Base 1
+ _ZN23vtkFiltersCore_AutoInitD1Ev at Base 1
+ _ZN23vtkFiltersCore_AutoInitD2Ev at Base 1
  _ZN23vtkInteractorStyleImage27GetWindowLevelStartPositionEv at Base 1
  _ZN23vtkInteractorStyleImage29GetWindowLevelCurrentPositionEv at Base 1
  _ZN24vtkRTStructSetProperties17GetSOPInstanceUIDEv at Base 1
@@ -726,8 +731,21 @@
  _ZN25vtkMedicalImageProperties6SetKVPEPKc at Base 1
  _ZN25vtkRenderingCore_AutoInitD1Ev at Base 1
  _ZN25vtkRenderingCore_AutoInitD2Ev at Base 1
+ _ZN25vtkThreadedImageAlgorithm12GetEnableSMPEv at Base 1
+ _ZN25vtkThreadedImageAlgorithm12GetSplitModeEv at Base 1
+ _ZN25vtkThreadedImageAlgorithm12SetEnableSMPEb at Base 1
+ _ZN25vtkThreadedImageAlgorithm12SetSplitModeEi at Base 1
  _ZN25vtkThreadedImageAlgorithm18GetNumberOfThreadsEv at Base 1
  _ZN25vtkThreadedImageAlgorithm18SetNumberOfThreadsEi at Base 1
+ _ZN25vtkThreadedImageAlgorithm19GetMinimumPieceSizeEPi at Base 1
+ _ZN25vtkThreadedImageAlgorithm19GetMinimumPieceSizeERiS0_S0_ at Base 1
+ _ZN25vtkThreadedImageAlgorithm19GetMinimumPieceSizeEv at Base 1
+ _ZN25vtkThreadedImageAlgorithm19SetMinimumPieceSizeEPi at Base 1
+ _ZN25vtkThreadedImageAlgorithm19SetMinimumPieceSizeEiii at Base 1
+ _ZN25vtkThreadedImageAlgorithm20GetSplitModeMaxValueEv at Base 1
+ _ZN25vtkThreadedImageAlgorithm20GetSplitModeMinValueEv at Base 1
+ _ZN25vtkThreadedImageAlgorithm23GetDesiredBytesPerPieceEv at Base 1
+ _ZN25vtkThreadedImageAlgorithm23SetDesiredBytesPerPieceEx at Base 1
  _ZN25vtkThreadedImageAlgorithm26GetNumberOfThreadsMaxValueEv at Base 1
  _ZN25vtkThreadedImageAlgorithm26GetNumberOfThreadsMinValueEv at Base 1
  _ZN25vtkWindowLevelLookupTable14InverseVideoOnEv at Base 1
@@ -813,6 +831,7 @@
  _ZN31vtkImageMapToWindowLevelColors2D1Ev at Base 1
  _ZN31vtkImageMapToWindowLevelColors2D2Ev at Base 1
  _ZN4gdcm11DataElement12SetByteValueEPKcNS_2VLE at Base 1
+ _ZN4gdcm12SmartPointerINS_15SequenceOfItemsEEaSEPS1_ at Base 1
  _ZN4gdcm12SmartPointerINS_5ValueEEaSEPS1_ at Base 1
  _ZN4gdcm20BitmapToBitmapFilterD1Ev at Base 1
  _ZN4gdcm20BitmapToBitmapFilterD2Ev at Base 1
@@ -820,7 +839,9 @@
  _ZN4gdcm22EncodingImplementationILi74550907EE4ReadINS_6StringILc92ELj64ELc0EEEEEvPT_mRSi at Base 1
  _ZN4gdcm22EncodingImplementationILi74550907EE4ReadINS_6StringILc92ELj64ELc32EEEEEvPT_mRSi at Base 1
  _ZN4gdcm22EncodingImplementationILi74550907EE4ReadIdEEvPT_mRSi at Base 1
+ _ZN4gdcm22EncodingImplementationILi74550907EE4ReadIiEEvPT_mRSi at Base 1
  _ZN4gdcm22EncodingImplementationILi74550907EE5WriteINS_6StringILc92ELj64ELc0EEEEEvPKT_mRSo at Base 1
+ _ZN4gdcm22EncodingImplementationILi74550907EE5WriteINS_6StringILc92ELj64ELc32EEEEEvPKT_mRSo at Base 1
  _ZN4gdcm4ItemD1Ev at Base 1
  _ZN4gdcm4ItemD2Ev at Base 1
  _ZN4gdcm6Object10UnRegisterEv at Base 1
@@ -838,37 +859,26 @@
  _ZN4gdcm8FilenameD1Ev at Base 1
  _ZN4gdcm8FilenameD2Ev at Base 1
  _ZN4gdcm9AttributeILt12294ELt130ELi512ELi1EE12SetByteValueEPKNS_9ByteValueE at Base 1
- _ZN4gdcm9AttributeILt12294ELt130ELi512ELi1EE14SetFromDataSetERKNS_7DataSetE at Base 1
  _ZN4gdcm9AttributeILt12294ELt130ELi512ELi1EE18SetByteValueNoSwapEPKNS_9ByteValueE at Base 1
  _ZN4gdcm9AttributeILt12294ELt132ELi512ELi1EE12SetByteValueEPKNS_9ByteValueE at Base 1
- _ZN4gdcm9AttributeILt12294ELt132ELi512ELi1EE14SetFromDataSetERKNS_7DataSetE at Base 1
  _ZN4gdcm9AttributeILt12294ELt132ELi512ELi1EE18SetByteValueNoSwapEPKNS_9ByteValueE at Base 1
  _ZN4gdcm9AttributeILt12294ELt133ELi65536ELi1EE12SetByteValueEPKNS_9ByteValueE at Base 1
- _ZN4gdcm9AttributeILt12294ELt133ELi65536ELi1EE14SetFromDataSetERKNS_7DataSetE at Base 1
  _ZN4gdcm9AttributeILt12294ELt133ELi65536ELi1EE18SetByteValueNoSwapEPKNS_9ByteValueE at Base 1
  _ZN4gdcm9AttributeILt12294ELt164ELi8ELi1EE12SetByteValueEPKNS_9ByteValueE at Base 1
- _ZN4gdcm9AttributeILt12294ELt164ELi8ELi1EE14SetFromDataSetERKNS_7DataSetE at Base 1
  _ZN4gdcm9AttributeILt12294ELt164ELi8ELi1EE18SetByteValueNoSwapEPKNS_9ByteValueE at Base 1
  _ZN4gdcm9AttributeILt12294ELt166ELi32768ELi1EE12SetByteValueEPKNS_9ByteValueE at Base 1
- _ZN4gdcm9AttributeILt12294ELt166ELi32768ELi1EE14SetFromDataSetERKNS_7DataSetE at Base 1
  _ZN4gdcm9AttributeILt12294ELt166ELi32768ELi1EE18SetByteValueNoSwapEPKNS_9ByteValueE at Base 1
  _ZN4gdcm9AttributeILt12294ELt34ELi512ELi1EE12SetByteValueEPKNS_9ByteValueE at Base 1
- _ZN4gdcm9AttributeILt12294ELt34ELi512ELi1EE14SetFromDataSetERKNS_7DataSetE at Base 1
  _ZN4gdcm9AttributeILt12294ELt34ELi512ELi1EE18SetByteValueNoSwapEPKNS_9ByteValueE at Base 1
  _ZN4gdcm9AttributeILt12294ELt36ELi4194304ELi1EE12SetByteValueEPKNS_9ByteValueE at Base 1
- _ZN4gdcm9AttributeILt12294ELt36ELi4194304ELi1EE14SetFromDataSetERKNS_7DataSetE at Base 1
  _ZN4gdcm9AttributeILt12294ELt36ELi4194304ELi1EE18SetByteValueNoSwapEPKNS_9ByteValueE at Base 1
  _ZN4gdcm9AttributeILt12294ELt38ELi1024ELi1EE12SetByteValueEPKNS_9ByteValueE at Base 1
- _ZN4gdcm9AttributeILt12294ELt38ELi1024ELi1EE14SetFromDataSetERKNS_7DataSetE at Base 1
  _ZN4gdcm9AttributeILt12294ELt38ELi1024ELi1EE18SetByteValueNoSwapEPKNS_9ByteValueE at Base 1
  _ZN4gdcm9AttributeILt12294ELt40ELi1048576ELi1EE12SetByteValueEPKNS_9ByteValueE at Base 1
- _ZN4gdcm9AttributeILt12294ELt40ELi1048576ELi1EE14SetFromDataSetERKNS_7DataSetE at Base 1
  _ZN4gdcm9AttributeILt12294ELt40ELi1048576ELi1EE18SetByteValueNoSwapEPKNS_9ByteValueE at Base 1
  _ZN4gdcm9AttributeILt12294ELt42ELi512ELi4EE12SetByteValueEPKNS_9ByteValueE at Base 1
  _ZN4gdcm9AttributeILt12294ELt42ELi512ELi4EE18SetByteValueNoSwapEPKNS_9ByteValueE at Base 1
- _ZN4gdcm9AttributeILt12294ELt42ELi512ELi4EE18SetFromDataElementERKNS_11DataElementE at Base 1
  _ZN4gdcm9AttributeILt12294ELt54ELi8ELi1EE12SetByteValueEPKNS_9ByteValueE at Base 1
- _ZN4gdcm9AttributeILt12294ELt54ELi8ELi1EE14SetFromDataSetERKNS_7DataSetE at Base 1
  _ZN4gdcm9AttributeILt12294ELt54ELi8ELi1EE18SetByteValueNoSwapEPKNS_9ByteValueE at Base 1
  _ZN4gdcm9AttributeILt12294ELt66ELi8ELi1EE12SetByteValueEPKNS_9ByteValueE at Base 1
  _ZN4gdcm9AttributeILt12294ELt66ELi8ELi1EE18SetByteValueNoSwapEPKNS_9ByteValueE at Base 1
@@ -936,8 +946,6 @@
  _ZNK4gdcm15SequenceOfItems9GetLengthEv at Base 1
  _ZNK4gdcm6Object5PrintERSo at Base 1
  _ZNK4gdcm7DataSet14GetDataElementERKNS_3TagE at Base 1
- _ZNK4gdcm7DataSet15FindDataElementERKNS_3TagE at Base 1
- _ZNK4gdcm7ElementILi1024ELi218367EE16GetAsDataElementEv at Base 1
  _ZNK4gdcm7ElementILi32ELi218367EE16GetAsDataElementEv at Base 1
  _ZNK4gdcm9AttributeILt12294ELt132ELi512ELi1EE16GetAsDataElementEv at Base 1
  _ZNK4gdcm9AttributeILt8ELt4432ELi4194304ELi1EE16GetAsDataElementEv at Base 1
@@ -957,9 +965,12 @@
  _ZNSt6vectorISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_ESaIS7_EE17_M_realloc_insertIJS7_EEEvN9__gnu_cxx17__normal_iteratorIPS7_S9_EEDpOT_ at Base 1
  _ZNSt6vectorISt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_ESaIS7_EEaSERKS9_ at Base 1
  _ZNSt6vectorIcSaIcEE17_M_default_appendEm at Base 1
+ _ZNSt6vectorIdSaIdEE17_M_default_appendEm at Base 1
  _ZNSt6vectorIdSaIdEE17_M_realloc_insertIJRKdEEEvN9__gnu_cxx17__normal_iteratorIPdS1_EEDpOT_ at Base 1
  _ZNSt6vectorIdSaIdEEaSERKS1_ at Base 1
  _ZNSt6vectorIjSaIjEEaSERKS1_ at Base 1
+ _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPKcEEvT_S8_St20forward_iterator_tag at Base 1
+ _ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPcEEvT_S7_St20forward_iterator_tag at Base 1
  _ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED0Ev at Base 1
  _ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED1Ev at Base 1
  _ZNSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEED2Ev at Base 1


As you can imagine, that's no good.
Also, I haven't checked the other binaries produced by the same source
package, so I don't know whether libvtkgdcm2.8 is the only one affected.

Also, I don't know what triggered this, if it was the py3 change or the
vtk change (most likely).


I'd probably recommend to just change the package name and do a proper
transition here.

And start tracking the symbols please, this wouldn't have gone unnoticed
for so long, and now an ABI break migrated to testing.

-- 
regards,
                        Mattia Rizzolo

GPG Key: 66AE 2B4A FCCF 3F52 DA18  4D18 4B04 3FCD B944 4540      .''`.
more about me:  https://mapreri.org                             : :'  :
Launchpad user: https://launchpad.net/~mapreri                  `. `'`
Debian QA page: https://qa.debian.org/developer.php?login=mattia  `-
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/debian-med-packaging/attachments/20181123/b68b58b1/attachment.sig>


More information about the Debian-med-packaging mailing list