Bug 1335105 - Dynflow executor segfaults at some circumstances
Summary: Dynflow executor segfaults at some circumstances
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Satellite
Classification: Red Hat
Component: Tasks Plugin
Version: 6.2.0
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: Unspecified
Assignee: Ivan Necas
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-05-11 11:30 UTC by Ivan Necas
Modified: 2019-09-26 18:41 UTC (History)
3 users (show)

Fixed In Version: rubygem-dynflow-0.8.11-1
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-07-27 11:15:41 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Ivan Necas 2016-05-11 11:30:02 UTC
Description of problem:
In https://bugzilla.redhat.com/show_bug.cgi?id=1320794, the executor segfaults
with

/opt/theforeman/tfm/root/usr/share/gems/gems/sequel-4.20.0/lib/sequel/dataset/actions.rb:139: [BUG] Stack consistency error (sp: 329, bp: 328)
ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-linux]

-- Control frame information -----------------------------------------------
c:0077 p:0011 s:0329 e:000327 BLOCK  /opt/theforeman/tfm/root/usr/share/gems/gems/sequel-4.20.0/lib/sequel/dataset/actions.rb:139
c:0076 p:0008 s:0325 e:000324 BLOCK  /opt/theforeman/tfm/root/usr/share/gems/gems/sequel-4.20.0/lib/sequel/adapters/postgres.rb:655
c:0075 p:0021 s:0322 e:000321 BLOCK  /opt/theforeman/tfm/root/usr/share/gems/gems/sequel-4.20.0/lib/sequel/adapters/postgres.rb:878 [FINISH]
c:0074 p:---- s:0318 e:000317 CFUNC  :times
c:0073 p:0010 s:0315 e:000314 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/sequel-4.20.0/lib/sequel/adapters/postgres.rb:872
c:0072 p:0014 s:0310 e:000309 BLOCK  /opt/theforeman/tfm/root/usr/share/gems/gems/sequel-4.20.0/lib/sequel/adapters/postgres.rb:655
c:0071 p:0037 s:0307 e:000306 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/sequel-4.20.0/lib/sequel/adapters/postgres.rb:169
c:0070 p:0048 s:0301 e:000300 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/sequel-4.20.0/lib/sequel/adapters/postgres.rb:511
c:0069 p:0018 s:0294 e:000293 BLOCK  /opt/theforeman/tfm/root/usr/share/gems/gems/sequel-4.20.0/lib/sequel/adapters/postgres.rb:335
c:0068 p:0008 s:0292 e:000291 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/sequel-4.20.0/lib/sequel/adapters/postgres.rb:532
c:0067 p:0007 s:0288 e:000287 BLOCK  /opt/theforeman/tfm/root/usr/share/gems/gems/sequel-4.20.0/lib/sequel/adapters/postgres.rb:335
c:0066 p:0008 s:0285 e:000284 BLOCK  /opt/theforeman/tfm/root/usr/share/gems/gems/sequel-4.20.0/lib/sequel/database/connecting.rb:250
c:0065 p:0163 s:0282 e:000281 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/sequel-4.20.0/lib/sequel/connection_pool/threaded.rb:98
c:0064 p:0020 s:0272 e:000271 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/sequel-4.20.0/lib/sequel/database/connecting.rb:250
c:0063 p:0022 s:0268 e:000267 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/sequel-4.20.0/lib/sequel/adapters/postgres.rb:335
c:0062 p:0059 s:0262 e:000261 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/sequel-4.20.0/lib/sequel/dataset/actions.rb:911
c:0061 p:0030 s:0255 E:000688 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/sequel-4.20.0/lib/sequel/adapters/postgres.rb:655
c:0060 p:0031 s:0251 E:000e78 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/sequel-4.20.0/lib/sequel/dataset/actions.rb:139 [FINISH]
c:0059 p:---- s:0247 E:0009f8 CFUNC  :map
c:0058 p:0093 s:0244 e:000243 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/sequel-4.20.0/lib/sequel/dataset/actions.rb:390
c:0057 p:0082 s:0239 E:0009c0 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-0.8.10/lib/dynflow/persistence_adapters/sequel.rb:186
c:0056 p:0011 s:0232 e:000231 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-0.8.10/lib/dynflow/coordinator_adapters/sequel.rb:25
c:0055 p:0011 s:0228 e:000227 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-0.8.10/lib/dynflow/coordinator.rb:248
c:0054 p:0029 s:0224 e:000223 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-0.8.10/lib/dynflow/dispatcher/client_dispatcher.rb:90
c:0053 p:0011 s:0219 e:000218 BLOCK  /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-0.8.10/lib/dynflow/dispatcher/client_dispatcher.rb:59
c:0052 p:0016 s:0216 e:000215 BLOCK  /opt/theforeman/tfm/root/usr/share/gems/gems/algebrick-0.7.3/lib/algebrick/matchers/abstract.rb:74 [FINISH]
c:0051 p:---- s:0214 e:000213 CFUNC  :tap
c:0050 p:0009 s:0211 e:000210 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/algebrick-0.7.3/lib/algebrick/matchers/abstract.rb:73
c:0049 p:0042 s:0208 e:000207 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/algebrick-0.7.3/lib/algebrick/matching.rb:56
c:0048 p:0027 s:0203 e:000201 BLOCK  /opt/theforeman/tfm/root/usr/share/gems/gems/algebrick-0.7.3/lib/algebrick/matching.rb:36 [FINISH]
c:0047 p:---- s:0198 e:000197 CFUNC  :each
c:0046 p:0048 s:0195 e:000194 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/algebrick-0.7.3/lib/algebrick/matching.rb:35
c:0045 p:0013 s:0190 e:000189 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/algebrick-0.7.3/lib/algebrick/matching.rb:23
c:0044 p:0056 s:0183 E:000f68 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-0.8.10/lib/dynflow/dispatcher/client_dispatcher.rb:54
c:0043 p:0018 s:0175 e:000174 BLOCK  /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-0.8.10/lib/dynflow/dispatcher/client_dispatcher.rb:38
c:0042 p:0085 s:0172 e:000171 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-0.8.10/lib/dynflow/dispatcher/client_dispatcher.rb:104
c:0041 p:0013 s:0163 e:000162 METHOD /opt/theforeman/tfm/root/usr/share/gems/gems/dynflow-0.8.10/lib/dynflow/dispatcher/client_dispatcher.rb:37

I'm filing a separate bug for this one, as the "undefined method `cp_config' for" in the original bug has different fix.

Version-Release number of selected component (if applicable):


How reproducible:
Occasionally (race-condition kind of bug)

Steps to reproduce described in:

https://bugzilla.redhat.com/show_bug.cgi?id=1320794

watch /var/log/foreman/dynflow_executor.output for the segfaults

Additional info:

Comment 1 Ivan Necas 2016-05-11 11:30:49 UTC
Proposed fix https://github.com/Dynflow/dynflow/pull/185

Comment 4 Ondřej Pražák 2016-05-27 07:08:43 UTC
I went several times through steps described in

https://bugzilla.redhat.com/show_bug.cgi?id=1320794#c0

and I did not run into any segfaults. 
Verified on RHEL 7, snap 13.1

Comment 5 Bryan Kearney 2016-07-27 11:15:41 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2016:1501


Note You need to log in before you can comment on or make changes to this bug.