[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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



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

Attachment: signature.asc
Description: PGP signature


Reply to: