{
  "_class" : "hudson.matrix.MatrixBuild",
  "actions" : [
    {
      "_class" : "hudson.model.CauseAction",
      "causes" : [
        {
          "_class" : "hudson.model.Cause$UserIdCause",
          "shortDescription" : "Started by user Sven Gothel",
          "userId" : "sgothel",
          "userName" : "Sven Gothel"
        }
      ]
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "origin/master" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 617,
          "buildResult" : None,
          "marked" : {
            "SHA1" : "9e61d4529143ff3f6de15ce55f8e8747f67a86c9",
            "branch" : [
              {
                "SHA1" : "9e61d4529143ff3f6de15ce55f8e8747f67a86c9",
                "name" : "origin/master"
              }
            ]
          },
          "revision" : {
            "SHA1" : "9e61d4529143ff3f6de15ce55f8e8747f67a86c9",
            "branch" : [
              {
                "SHA1" : "9e61d4529143ff3f6de15ce55f8e8747f67a86c9",
                "name" : "origin/master"
              }
            ]
          }
        },
        "origin2/master" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 544,
          "buildResult" : None,
          "marked" : {
            "SHA1" : "bc826eb2e216ce82a5e6bc61403e4eff2f338380",
            "branch" : [
              {
                "SHA1" : "bc826eb2e216ce82a5e6bc61403e4eff2f338380",
                "name" : "origin/master"
              },
              {
                "SHA1" : "bc826eb2e216ce82a5e6bc61403e4eff2f338380",
                "name" : "origin2/master"
              }
            ]
          },
          "revision" : {
            "SHA1" : "bc826eb2e216ce82a5e6bc61403e4eff2f338380",
            "branch" : [
              {
                "SHA1" : "bc826eb2e216ce82a5e6bc61403e4eff2f338380",
                "name" : "origin/master"
              },
              {
                "SHA1" : "bc826eb2e216ce82a5e6bc61403e4eff2f338380",
                "name" : "origin2/master"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "9e61d4529143ff3f6de15ce55f8e8747f67a86c9",
        "branch" : [
          {
            "SHA1" : "9e61d4529143ff3f6de15ce55f8e8747f67a86c9",
            "name" : "origin/master"
          }
        ]
      },
      "remoteUrls" : [
        
      ],
      "scmName" : ""
    },
    {
      "_class" : "hudson.plugins.git.GitTagAction"
    },
    {
      
    },
    {
      "_class" : "hudson.tasks.test.MatrixTestResult",
      "failCount" : 17,
      "skipCount" : 0,
      "totalCount" : 2379,
      "urlName" : "testReport"
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction"
    }
  ],
  "artifacts" : [
    
  ],
  "building" : False,
  "description" : None,
  "displayName" : "#617",
  "duration" : 2277092,
  "estimatedDuration" : 3723458,
  "executor" : None,
  "fullDisplayName" : "jogl #617",
  "id" : "2012-01-08_07-03-26",
  "inProgress" : False,
  "keepLog" : False,
  "number" : 617,
  "queueId" : -1,
  "result" : "UNSTABLE",
  "timestamp" : 1326002606000,
  "url" : "https://jogamp.org/chuck/view/on%20server/job/jogl/617/",
  "builtOn" : "solaris-NVQUADRO-solaris10-jogamp-x32-sgothel-020",
  "changeSet" : {
    "_class" : "hudson.plugins.git.GitChangeSetList",
    "items" : [
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/jogl/classes/com/jogamp/opengl/util/Animator.java",
          "src/jogl/classes/com/jogamp/opengl/util/AnimatorBase.java"
        ],
        "commitId" : "7ce29d85bb85c003c9dc3b94efa84b55dfbb7f86",
        "timestamp" : 1325909851000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Animator*: Clarify debug output\u000a",
        "date" : "2012-01-07T05:17:31+0100",
        "id" : "7ce29d85bb85c003c9dc3b94efa84b55dfbb7f86",
        "msg" : "Animator*: Clarify debug output",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/util/AnimatorBase.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/util/Animator.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/jogl/classes/jogamp/opengl/GLContextImpl.java",
          "src/jogl/classes/jogamp/opengl/GLPbufferImpl.java",
          "src/jogl/classes/jogamp/opengl/x11/glx/X11GLXDrawableFactory.java",
          "src/newt/classes/com/jogamp/newt/opengl/GLWindow.java",
          "src/jogl/classes/jogamp/opengl/GLDrawableHelper.java",
          "src/jogl/classes/javax/media/opengl/GLContext.java",
          "src/jogl/classes/javax/media/opengl/awt/GLJPanel.java",
          "src/jogl/classes/javax/media/opengl/awt/GLCanvas.java",
          "src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLDrawableFactory.java"
        ],
        "commitId" : "098398c2a9145447da5314eed9792b3738c2d515",
        "timestamp" : 1325997077000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "GLContext*/GLDrawableHelper: Fix consistency of recursive makeCurrent()/release()/destroy() calls ; Enable context switch tracing ; GLCanvas: proper AbstractGraphicsDevice destruction\u000a\u000aGLContext*/GLDrawableHelper: Fix consistency of recursive makeCurrent()/release()/destroy() calls\u000a  Utilizing volatile and lock.tryLock(0) for lockConsiderFailFast(),\u000a  reducing redundant synchronization and using RecursiveLock implicit sync.\u000a\u000a  GLContext 'early-out' is the case where the thread already holds the\u000a  context, ie. context is already current and the native makeCurrent is skipped.\u000a\u000a  makeCurrent()'s 'early-out' w/o incr. the recursive lock of GLContext\u000a  and it's NativeSurface could lead to asymetry in lock/unlock count\u000a  with release()/destroy() calls. The 1st release actually released the\u000a  native ctx already.\u000a  Properly utilize recursive lock/unlock in all cases and impl. 'early-out' after locking.\u000a\u000a  Following the above in GLDrawableHelper.invokeGL()'s 'early-out' case as well,\u000a  ie calling makeCurrent()/release() symmetrical.\u000a\u000a  Introduce GLDrawableHelper.disposeGL(), which issues dispose on all GLEventListeners\u000a  within a current context and issued context destruction directly.\u000a  This simplifies GLAutodrawable's destroy/dispose calls and ensures\u000a  that the above sequence of events happens atomically (lock is being hold until destruction).\u000a\u000aEnable context switch tracing\u000a  If property 'jogl.debug.GLContext.TraceSwitch' is defined, trace context switch.\u000a\u000aGLCanvas: proper AbstractGraphicsDevice destruction\u000a",
        "date" : "2012-01-08T05:31:17+0100",
        "id" : "098398c2a9145447da5314eed9792b3738c2d515",
        "msg" : "GLContext*/GLDrawableHelper: Fix consistency of recursive",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/GLPbufferImpl.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/x11/glx/X11GLXDrawableFactory.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/javax/media/opengl/GLContext.java"
          },
          {
            "editType" : "edit",
            "file" : "src/newt/classes/com/jogamp/newt/opengl/GLWindow.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/javax/media/opengl/awt/GLCanvas.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLDrawableFactory.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/javax/media/opengl/awt/GLJPanel.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/GLContextImpl.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/GLDrawableHelper.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/nativewindow/classes/jogamp/nativewindow/windows/GDISurface.java",
          "src/jogl/classes/jogamp/opengl/GLContextImpl.java",
          "src/newt/classes/jogamp/newt/WindowImpl.java",
          "src/newt/classes/com/jogamp/newt/opengl/GLWindow.java",
          "src/nativewindow/classes/jogamp/nativewindow/WrappedSurface.java",
          "src/jogl/classes/javax/media/opengl/GLContext.java",
          "src/nativewindow/classes/jogamp/nativewindow/jawt/JAWTWindow.java"
        ],
        "commitId" : "6451e3c0c79fca92a39e32c2600c69f16dfc7f4d",
        "timestamp" : 1325997789000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "GLContext/NativeSurface Impl's toString(): Add lock.toString()\u000a",
        "date" : "2012-01-08T05:43:09+0100",
        "id" : "6451e3c0c79fca92a39e32c2600c69f16dfc7f4d",
        "msg" : "GLContext/NativeSurface Impl's toString(): Add lock.toString()",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/nativewindow/classes/jogamp/nativewindow/jawt/JAWTWindow.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/GLContextImpl.java"
          },
          {
            "editType" : "edit",
            "file" : "src/newt/classes/com/jogamp/newt/opengl/GLWindow.java"
          },
          {
            "editType" : "edit",
            "file" : "src/nativewindow/classes/jogamp/nativewindow/WrappedSurface.java"
          },
          {
            "editType" : "edit",
            "file" : "src/nativewindow/classes/jogamp/nativewindow/windows/GDISurface.java"
          },
          {
            "editType" : "edit",
            "file" : "src/newt/classes/jogamp/newt/WindowImpl.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/javax/media/opengl/GLContext.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/test/com/jogamp/opengl/test/junit/jogl/awt/TestAWTCardLayoutAnimatorStartStopBug532.java",
          "make/scripts/tests.sh",
          "make/scripts/tests-x64.bat",
          "make/scripts/java-win64-dbg.bat"
        ],
        "commitId" : "9e61d4529143ff3f6de15ce55f8e8747f67a86c9",
        "timestamp" : 1325998323000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "TestAWTCardLayoutAnimatorStartStopBug532: Refine, add 'continue' mode, ..\u000a\u000aPrevious commit 098398c2a9145447da5314eed9792b3738c2d515 cleaned up\u000aand fixed context/drawable lock/unlock for makeCurrent()/release()/destroy()\u000aand consistency is looks much better now in this regard.\u000a\u000aHowever, on Intel HD 3000 / Windows7, our AnimatorControl start/stop still\u000alet the 2nd switch to GLCanvas within the CardPanel not showing rendering results.\u000a\u000aOne interesting artefact though:\u000a\u000a1st switch 2 GLCanvas (rendering visible):\u000a*** hdc 0x2f010ec5, hdw(hdc) 0x1003a0, hdw 0x1003a0 - AWT-EventQueue-0, com.jogamp.opengl.util.Animator[started true, animating true, paused false, drawable 1]\u000a*** hdc 0x160110c4, hdw(hdc) 0x1003a0, hdw 0x1003a0 - AWT-EventQueue-0, com.jogamp.opengl.util.Animator[started true, animating true, paused false, drawable 1]\u000a*** hdc 0x2f010ec5, hdw(hdc) 0x1003a0, hdw 0x1003a0 - AWT-EventQueue-0, com.jogamp.opengl.util.Animator[started true, animating true, paused false, drawable 1]\u000a*** hdc 0x160110c4, hdw(hdc) 0x1003a0, hdw 0x1003a0 - AWT-EventQueue-0, com.jogamp.opengl.util.Animator[started true, animating true, paused false, drawable 1]\u000a-> alternating HDC's\u000a\u000a2nd switch 2 GLCanvas (rendering _not_ visible):\u000a*** hdc 0x160110c4, hdw(hdc) 0x1003a0, hdw 0x1003a0 - AWT-EventQueue-0, com.jogamp.opengl.util.Animator[started true, animating true, paused false, drawable 1]\u000a*** hdc 0x160110c4, hdw(hdc) 0x1003a0, hdw 0x1003a0 - AWT-EventQueue-0, com.jogamp.opengl.util.Animator[started true, animating true, paused false, drawable 1]\u000a*** hdc 0x160110c4, hdw(hdc) 0x1003a0, hdw 0x1003a0 - AWT-EventQueue-0, com.jogamp.opengl.util.Animator[started true, animating true, paused false, drawable 1]\u000a*** hdc 0x160110c4, hdw(hdc) 0x1003a0, hdw 0x1003a0 - AWT-EventQueue-0, com.jogamp.opengl.util.Animator[started true, animating true, paused false, drawable 1]\u000a-> fixed HDC\u000a\u000aMaybe this is a hint for what is going wrong in JAWTWindow locking,\u000awhich aquires the frame's HDC.\u000a\u000aVerifying the recursive lock shows proper lock/unlock actions though.\u000a",
        "date" : "2012-01-08T05:52:03+0100",
        "id" : "9e61d4529143ff3f6de15ce55f8e8747f67a86c9",
        "msg" : "TestAWTCardLayoutAnimatorStartStopBug532: Refine, add 'continue' mode,",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "make/scripts/tests.sh"
          },
          {
            "editType" : "edit",
            "file" : "make/scripts/tests-x64.bat"
          },
          {
            "editType" : "edit",
            "file" : "make/scripts/java-win64-dbg.bat"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/awt/TestAWTCardLayoutAnimatorStartStopBug532.java"
          }
        ]
      }
    ],
    "kind" : "git"
  },
  "culprits" : [
    {
      "absoluteUrl" : "https://jogamp.org/chuck/user/rami%20santina",
      "fullName" : "Rami Santina"
    },
    {
      "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
      "fullName" : "Sven Gothel"
    },
    {
      "absoluteUrl" : "https://jogamp.org/chuck/user/michaelhermannweber",
      "fullName" : "michaelhermannweber"
    },
    {
      "absoluteUrl" : "https://jogamp.org/chuck/user/wwalker3",
      "fullName" : "wwalker3"
    }
  ],
  "runs" : [
    {
      "number" : 617,
      "url" : "https://jogamp.org/chuck/view/on%20server/job/jogl/label=linux-x86_64/617/"
    },
    {
      "number" : 617,
      "url" : "https://jogamp.org/chuck/view/on%20server/job/jogl/label=macos-x86_64/617/"
    },
    {
      "number" : 617,
      "url" : "https://jogamp.org/chuck/view/on%20server/job/jogl/label=windows-x86_64/617/"
    }
  ]
}