{
  "_class" : "hudson.matrix.MatrixRun",
  "actions" : [
    {
      
    },
    {
      "_class" : "hudson.model.CauseAction",
      "causes" : [
        {
          "_class" : "hudson.model.Cause$UpstreamCause",
          "shortDescription" : "Started by upstream project \"jogl\" build number 887",
          "upstreamBuild" : 887,
          "upstreamProject" : "jogl",
          "upstreamUrl" : "job/jogl/"
        }
      ]
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "origin/master" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 887,
          "buildResult" : None,
          "marked" : {
            "SHA1" : "cb3e3638179a360a07325a908da7593f8e285f3c",
            "branch" : [
              {
                "SHA1" : "cb3e3638179a360a07325a908da7593f8e285f3c",
                "name" : "origin/master"
              }
            ]
          },
          "revision" : {
            "SHA1" : "cb3e3638179a360a07325a908da7593f8e285f3c",
            "branch" : [
              {
                "SHA1" : "cb3e3638179a360a07325a908da7593f8e285f3c",
                "name" : "origin/master"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "cb3e3638179a360a07325a908da7593f8e285f3c",
        "branch" : [
          {
            "SHA1" : "cb3e3638179a360a07325a908da7593f8e285f3c",
            "name" : "origin/master"
          }
        ]
      },
      "remoteUrls" : [
        "git://jogamp.org/srv/scm/jogl.git"
      ],
      "scmName" : ""
    },
    {
      "_class" : "hudson.plugins.git.GitTagAction"
    },
    {
      
    },
    {
      "_class" : "hudson.tasks.junit.TestResultAction",
      "failCount" : 0,
      "skipCount" : 0,
      "totalCount" : 512,
      "urlName" : "testReport"
    },
    {
      
    },
    {
      "_class" : "org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction"
    }
  ],
  "artifacts" : [
    
  ],
  "building" : False,
  "description" : None,
  "displayName" : "#887",
  "duration" : 2563196,
  "estimatedDuration" : 2541985,
  "executor" : None,
  "fullDisplayName" : "jogl » linux-x86_64 #887",
  "id" : "2013-01-11_08-30-37",
  "inProgress" : False,
  "keepLog" : False,
  "number" : 887,
  "queueId" : -1,
  "result" : "SUCCESS",
  "timestamp" : 1357889437000,
  "url" : "https://jogamp.org/chuck/job/jogl/label=linux-x86_64/887/",
  "builtOn" : "linux64-AMD58xx-ubuntu10-jogamp-x64-sgothel-002",
  "changeSet" : {
    "_class" : "hudson.plugins.git.GitChangeSetList",
    "items" : [
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestExclusiveContext01VSyncAnimAWT.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/ExclusiveContextBase00AWT.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestExclusiveContext11VSyncAnimNEWT.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestExclusiveContext01VSyncAnimNEWT.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/awt/TestGearsES2AWT.java",
          "src/jogl/classes/com/jogamp/opengl/util/AnimatorBase.java",
          "make/scripts/tests.sh",
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestExclusiveContext02FPSAnimAWT.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/ExclusiveContextBase00NEWT.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/GearsES2.java",
          "make/scripts/tests-x64.bat",
          "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/newt/TestGearsES2NEWT.java",
          "src/newt/classes/com/jogamp/newt/awt/applet/JOGLNewtAppletBase.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/RedSquareES2.java",
          "src/jogl/classes/javax/media/opengl/GLContext.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/ExclusiveContextBase10AWT.java",
          "src/jogl/classes/javax/media/opengl/GLAnimatorControl.java",
          "src/jogl/classes/javax/media/opengl/awt/GLJPanel.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/InitConcurrentBaseNEWT.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/demos/es1/newt/TestGearsES1NEWT.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestExclusiveContext12FPSAnimNEWT.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/ExclusiveContextBase10.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestExclusiveContext02FPSAnimNEWT.java",
          "src/jogl/classes/jogamp/opengl/GLDrawableHelper.java",
          "src/jogl/classes/com/jogamp/opengl/util/FPSAnimator.java",
          "src/jogl/classes/javax/media/opengl/GLAutoDrawable.java",
          "src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/ExclusiveContextBase10NEWT.java",
          "src/jogl/classes/com/jogamp/opengl/util/Animator.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/acore/ExclusiveContextBase00.java",
          "src/jogl/classes/jogamp/opengl/GLAutoDrawableBase.java",
          "src/jogl/classes/javax/media/opengl/awt/GLCanvas.java"
        ],
        "commitId" : "224fab1b2c71464826594740022fdcbe278867dc",
        "timestamp" : 1357884804000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "GLAutoDrawable/AnimatorBase: Add ExclusiveContextThread (ECT) feature; AnimatorBase: Add setModeBits/MODE_EXPECT_AWT_RENDERING_THREAD; FPSAnimator: Make transactions deterministic.\u000a\u000aExclusiveContextThread (ECT) allows user to dedicate a GLContext to a given thread.\u000aOnly the ECT will be allowed to claim the GLContext, hence releasing must be done on the ECT itself.\u000a\u000aThe core feature is accessible via GLAutoDrawable, while it can be conveniently enabled and disabled\u000avia an AnimatorBase implementation. The latter ensures it's being released on the ECT and waits for the result.\u000a\u000aNote that ECT cannot be guaranteed to work correctly w/ native (heavyweight) AWT components\u000adue to resource locking and AWT-EDT access. This is disabled in all new tests per default and\u000anoted on the API doc.\u000a\u000aNote: 'Animator transaction' == start(), stop(), pause(), resume().\u000a\u000a- Add ExclusiveContextThread (ECT) feature\u000a  - GLAutoDrawable NEW:\u000a    - Thread setExclusiveContextThread(Thread t)\u000a    - Thread getExclusiveContextThread()\u000a\u000a  - AnimatorBase NEW:\u000a    - Thread setExclusiveContext(Thread t)\u000a    - boolean setExclusiveContext(boolean enable)\u000a    - boolean isExclusiveContextEnabled()\u000a    - Thread getExclusiveContextThread()\u000a\u000a- AnimatorBase: Add setModeBits/MODE_EXPECT_AWT_RENDERING_THREAD\u000a  Allows user to pre-determine whether AWT rendering is expected before starting the animator.\u000a  If AWT is excluded, a more simple and transaction correct impl. will be used.\u000a\u000a- FPSAnimator: Make transactions deterministic.\u000a  FPSAnimator previously did not ensure whether a transaction was completed.\u000a  A deterministic transaction is required to utilize ECT.\u000a  FPSAnimator now uses same mechanism like Animator to ensure completeness,\u000a  i.e. Condition and 'finishLifecycleAction(..)'. Both are moved to AnimatorBase.\u000a\u000aTested manually on Linux/NV, Linux/AMD, Windows/NV and OSX/NV.\u000a  - All new tests validated correctness.\u000a  - All new tests shows an performance increase of ~3x w/ single GLWindow, where multiple GLWindows don't show a perf. increase.\u000a",
        "date" : "2013-01-11T07:13:24+0100",
        "id" : "224fab1b2c71464826594740022fdcbe278867dc",
        "msg" : "GLAutoDrawable/AnimatorBase: Add ExclusiveContextThread (ECT) feature;",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/javax/media/opengl/GLAutoDrawable.java"
          },
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/ExclusiveContextBase10.java"
          },
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestExclusiveContext02FPSAnimAWT.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/demos/es1/newt/TestGearsES1NEWT.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/GearsES2.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/GLDrawableHelper.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/javax/media/opengl/awt/GLCanvas.java"
          },
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/ExclusiveContextBase10AWT.java"
          },
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/ExclusiveContextBase00.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/javax/media/opengl/GLAnimatorControl.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/awt/TestGearsES2AWT.java"
          },
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/ExclusiveContextBase00NEWT.java"
          },
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestExclusiveContext02FPSAnimNEWT.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/RedSquareES2.java"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/newt/TestGearsES2NEWT.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/javax/media/opengl/awt/GLJPanel.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/util/AnimatorBase.java"
          },
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/ExclusiveContextBase10NEWT.java"
          },
          {
            "editType" : "edit",
            "file" : "make/scripts/tests-x64.bat"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/util/FPSAnimator.java"
          },
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/ExclusiveContextBase00AWT.java"
          },
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestExclusiveContext01VSyncAnimNEWT.java"
          },
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestExclusiveContext11VSyncAnimNEWT.java"
          },
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestExclusiveContext12FPSAnimNEWT.java"
          },
          {
            "editType" : "edit",
            "file" : "make/scripts/tests.sh"
          },
          {
            "editType" : "edit",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/InitConcurrentBaseNEWT.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/com/jogamp/opengl/util/Animator.java"
          },
          {
            "editType" : "edit",
            "file" : "src/newt/classes/com/jogamp/newt/awt/applet/JOGLNewtAppletBase.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/javax/media/opengl/GLContext.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/GLAutoDrawableBase.java"
          },
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/acore/TestExclusiveContext01VSyncAnimAWT.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/newt/classes/com/jogamp/newt/opengl/GLWindow.java",
          "src/jogl/classes/jogamp/opengl/GLContextImpl.java"
        ],
        "commitId" : "bdc2e57ffc91d88e187ded8c42335710448f50f0",
        "timestamp" : 1357884889000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Minor: GLWindow fix size validation; GLContextImpl: Remove hold ctx lock count constraints at destroy.\u000a",
        "date" : "2013-01-11T07:14:49+0100",
        "id" : "bdc2e57ffc91d88e187ded8c42335710448f50f0",
        "msg" : "Minor: GLWindow fix size validation; GLContextImpl: Remove hold ctx lock",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/newt/classes/com/jogamp/newt/opengl/GLWindow.java"
          },
          {
            "editType" : "edit",
            "file" : "src/jogl/classes/jogamp/opengl/GLContextImpl.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/test/com/jogamp/opengl/test/junit/jogl/demos/es1/OlympicES1.java",
          "src/test/com/jogamp/opengl/test/junit/jogl/demos/es1/newt/TestOlympicES1NEWT.java"
        ],
        "commitId" : "cb3e3638179a360a07325a908da7593f8e285f3c",
        "timestamp" : 1357885331000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Add old Olympic demo from GL4Java - Make it use ES1 and suitable for FixedFunctionEmul.\u000a",
        "date" : "2013-01-11T07:22:11+0100",
        "id" : "cb3e3638179a360a07325a908da7593f8e285f3c",
        "msg" : "Add old Olympic demo from GL4Java - Make it use ES1 and suitable for",
        "paths" : [
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/demos/es1/OlympicES1.java"
          },
          {
            "editType" : "add",
            "file" : "src/test/com/jogamp/opengl/test/junit/jogl/demos/es1/newt/TestOlympicES1NEWT.java"
          }
        ]
      }
    ],
    "kind" : "git"
  },
  "culprits" : [
    {
      "absoluteUrl" : "https://jogamp.org/chuck/user/sgothel",
      "fullName" : "Sven Gothel"
    }
  ]
}