)]}'
{
  "commit": "f572d1dd449b41a9b426f4574954ec2a5f96673d",
  "tree": "472f0742c346e3ea6286ef0d9d88a8af3d466043",
  "parents": [
    "a2e19f163a9e45ee4f768efcf2a7c7e1d10bdc0c"
  ],
  "author": {
    "name": "Sameer Agarwal",
    "email": "sameeragarwal@google.com",
    "time": "Fri Jan 30 13:12:08 2015 -0800"
  },
  "committer": {
    "name": "Sameer Agarwal",
    "email": "sameeragarwal@google.com",
    "time": "Fri Jan 30 14:20:05 2015 -0800"
  },
  "message": "Improve the error handling in Conjugte Gradients.\n\nDue to floating point and conditioning issues, a system\nmatrix which is guaranteed to be PSD in exact arithmetic\ncan appear indefinite to the ConjugateGradientsSolver.\n\nPreviously, x\u0027Ax \u003c\u003d 0, the solver returned with numerical\nfailure. Which the trust region solver will treat as a failed\nsolve.\n\nBut, more general truncated Newton when they encounter indefiniteness\nuse the step computed till that point instead of declaring failure.\n\nThis changes does this and adds a bit more logging.\n\nChange-Id: I0e0cc56ef7d856f1c54ac6d638327b8353039f70\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d7aee3145a285070f46403870c46c6a817dc3f5b",
      "old_mode": 33188,
      "old_path": "internal/ceres/conjugate_gradients_solver.cc",
      "new_id": "43eeff44a302326a801e047c7e346fb0077d20b1",
      "new_mode": 33188,
      "new_path": "internal/ceres/conjugate_gradients_solver.cc"
    }
  ]
}
