<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>38502</bug_id>
          
          <creation_ts>2010-05-03 18:40:12 -0700</creation_ts>
          <short_desc>[Qt] Qt build system failed to notice dependency changes after r58712</short_desc>
          <delta_ts>2012-02-02 10:26:22 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>LayoutTestFailure, Qt, QtTriaged</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dmitry Titov">dimich</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>barraclough</cc>
    
    <cc>benjamin</cc>
    
    <cc>eric</cc>
    
    <cc>ossy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>220410</commentid>
    <comment_count>0</comment_count>
    <who name="Dmitry Titov">dimich</who>
    <bug_when>2010-05-03 18:40:12 -0700</bug_when>
    <thetext>http://build.webkit.org/builders/Qt%20Linux%20Release/builds/11163
http://build.webkit.org/builders/Qt%20Linux%20Release/builds/11168
http://build.webkit.org/builders/Qt%20Linux%20Release/builds/11169

It started happening with r58712 although it&apos;s possible this change shifted timing enough for some existing race to get worse.

Unfortunately, it seems the release Qt builds do not have symbols.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>220426</commentid>
    <comment_count>1</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-05-03 19:49:00 -0700</bug_when>
    <thetext>Either way, we can&apos;t leave this crashing.  We need to revert the revert or skip the test or fix whatever is causing this.  We can&apos;t just leave the tree red.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>220440</commentid>
    <comment_count>2</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2010-05-03 20:47:40 -0700</bug_when>
    <thetext>I believe that Ossy reported that this was caused by the QT build script failing to detect a dependency change after the update pulled in r58712, and that a clean build fixed the problem for him in his local build.

Did I misunderstand something, or did that turn out not to be the case?
Does this just require a nice clean build on the bot?, or is there another problem?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>220443</commentid>
    <comment_count>3</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-05-03 20:57:18 -0700</bug_when>
    <thetext>You&apos;re right, this has resolved itself.  So I guess we should change this bug to be a bug in the Qt build system then.  Do we know what about the dependencies the build script failed to notice?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>220444</commentid>
    <comment_count>4</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-05-03 20:57:57 -0700</bug_when>
    <thetext>Thank you both for your prompt followup.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>220445</commentid>
    <comment_count>5</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-05-03 21:00:02 -0700</bug_when>
    <thetext>I always hit the security checkbox by accident. :(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>220472</commentid>
    <comment_count>6</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2010-05-03 22:15:45 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Do we know what about the
&gt; dependencies the build script failed to notice?

I believe Ossy thought he understood this, he explained to me on irc something like:

(1) The revert removed wtf/text/AtomicStringTable.h
(2) ...
(3) This causing some .o&apos;s to not get rebuilt.

I&apos;m afraid I didn&apos;t really follow step 2 myself, but Ossy seemed to see what was going on. :o)

As a workaround I suggested we could make the QT bot spot files being removed in an update &amp; force a rebuild.  Ossy appeared to think this might work, but was going to try to fix the dependencies in the makefile properly first, before resorting to hackery. :-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>220536</commentid>
    <comment_count>7</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2010-05-04 02:47:57 -0700</bug_when>
    <thetext>r58712 made fast/workers/worker-gc2.html crash. I played a lot with this bug.
If I skipped fast/workers/worker-gc2.html, fast/workers/worker-gc.html crashed. And I had a suspicion, I thought it is a DRT sideeffect. After skipped the test before fast/workers/worker-gc.html, I didn&apos;t get any crash. (with run-webkit-tests fast/workers --iterations 100)

So I skipped fast/workers/worker-event-listener.html until fix:
http://trac.webkit.org/changeset/58746

The other potential problem, dependency feature is unrelated to
this crash, but I&apos;m going to examine it too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>220659</commentid>
    <comment_count>8</comment_count>
    <who name="Dmitry Titov">dimich</who>
    <bug_when>2010-05-04 10:47:09 -0700</bug_when>
    <thetext>Yep, unfortunately, this wasn&apos;t the issue of clean build and we still have a failure here, Ossy had to disable a test to green the tree. Here is a sequence of events:

The first this crashed after r58712 even though suspicion is that change only changed timing to expose existing issue:
http://build.webkit.org/builders/Qt%20Linux%20Release/builds/11158 

Ossy triggered clean build on the bot, which helped, lathough temporarily (perhaps shifting :
http://build.webkit.org/builders/Qt%20Linux%20Release/builds/11164 

After some more builds (and perhaps a bit of change in timing again) the crash re-appeared:
http://build.webkit.org/builders/Qt%20Linux%20Release/builds/11181

Ossy finds out the test fails because of the sideeffect of the preceeding worker-event-listener.html and disables that on Qt, bot goes green again:
http://build.webkit.org/builders/Qt%20Linux%20Release/builds/11194</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>220671</commentid>
    <comment_count>9</comment_count>
    <who name="Dmitry Titov">dimich</who>
    <bug_when>2010-05-04 11:08:37 -0700</bug_when>
    <thetext>Discussed with Ossy, we need to split this issue in 2 - about failing test and dependency issue in build system.

More details on dependency issue, compiled from IRC chat:

When you remove a file from the tree, it will be removed from the makefiles, dependencies, etc. But if you remove the dependency, it might be some trash in an object, lib. Try to imagine a foo.so : a.o b.o c.o rule, and if you remove a.c from the tree, the new rule will be foo.so : b.o c.o , without a.o. This rule won&apos;t trigger a new linking.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>221250</commentid>
    <comment_count>10</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2010-05-05 13:20:32 -0700</bug_when>
    <thetext>Okay, I think I&apos;ve figured out the worker-gc2 crash, and I think it&apos;s related to a change I made a few weeks ago.

The bug was in existence prior to r58114.  This introduced leaks, which will have masked the bug (the bug is a use after release of the objects leaked by r58114).  r58712 then appeared to break the test, since it stopped leaking these objects again, making the bug possible.

The bug is currently only biting on QT since it is platform dependent – it depends on the ordering that ThreadSpecifics are deleted, which is not defined.

patch incoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>221255</commentid>
    <comment_count>11</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2010-05-05 13:30:46 -0700</bug_when>
    <thetext>Actually, I shouldn&apos;t steal this bug – is there still an issue to resolve re the build system&apos;s dependencies Ossy?

new bug: https://bugs.webkit.org/show_bug.cgi?id=38604</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>221411</commentid>
    <comment_count>12</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2010-05-05 18:14:10 -0700</bug_when>
    <thetext>bug #38604 is fixed in r58851, hopefully this should be the issue that was hitting fast/workers/worker-gc2.html on Qt.  With a bit of luck there&apos;s now just the build dependency problem to resolve.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>342299</commentid>
    <comment_count>13</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2011-01-30 08:30:14 -0800</bug_when>
    <thetext>Uh, shouldn&apos;t this be closed?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>547967</commentid>
    <comment_count>14</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-02-02 10:26:22 -0800</bug_when>
    <thetext>(In reply to comment #13)
&gt; Uh, shouldn&apos;t this be closed?

Yes.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>