{"action":"created","issue":{"url":"https://api.github.com/repos/pantsbuild/pants/issues/3274","repository_url":"https://api.github.com/repos/pantsbuild/pants","labels_url":"https://api.github.com/repos/pantsbuild/pants/issues/3274/labels{/name}","comments_url":"https://api.github.com/repos/pantsbuild/pants/issues/3274/comments","events_url":"https://api.github.com/repos/pantsbuild/pants/issues/3274/events","html_url":"https://github.com/pantsbuild/pants/pull/3274","id":151190594,"number":3274,"title":"[engine] bug fix: to get/put within the proper context","user":{"login":"peiyuwang","id":2474428,"avatar_url":"https://avatars.githubusercontent.com/u/2474428?v=3","gravatar_id":"","url":"https://api.github.com/users/peiyuwang","html_url":"https://github.com/peiyuwang","followers_url":"https://api.github.com/users/peiyuwang/followers","following_url":"https://api.github.com/users/peiyuwang/following{/other_user}","gists_url":"https://api.github.com/users/peiyuwang/gists{/gist_id}","starred_url":"https://api.github.com/users/peiyuwang/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/peiyuwang/subscriptions","organizations_url":"https://api.github.com/users/peiyuwang/orgs","repos_url":"https://api.github.com/users/peiyuwang/repos","events_url":"https://api.github.com/users/peiyuwang/events{/privacy}","received_events_url":"https://api.github.com/users/peiyuwang/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2016-04-26T17:18:50Z","updated_at":"2016-04-26T18:21:17Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/pantsbuild/pants/pulls/3274","html_url":"https://github.com/pantsbuild/pants/pull/3274","diff_url":"https://github.com/pantsbuild/pants/pull/3274.diff","patch_url":"https://github.com/pantsbuild/pants/pull/3274.patch"},"body":"For #3149  We have two places that `get` and `put` from/to storage are not used within\r\nthe proper context.\r\n\r\n* StringIO buffer for write, saving buffer to storage happens outside its context.\r\n* lmdb buffer for read, the invalid buffer was used outside transction context.\r\n\r\nThe earlier attempt is red herring: https://rbcommons.com/s/twitter/r/3751/.\r\n\r\nThese two behaviors are clearly documented, see [1] and [2].\r\n[1] https://docs.python.org/2/library/stringio.html\r\n[2] https://lmdb.readthedocs.org/en/release/"},"comment":{"url":"https://api.github.com/repos/pantsbuild/pants/issues/comments/214837416","html_url":"https://github.com/pantsbuild/pants/pull/3274#issuecomment-214837416","issue_url":"https://api.github.com/repos/pantsbuild/pants/issues/3274","id":214837416,"user":{"login":"peiyuwang","id":2474428,"avatar_url":"https://avatars.githubusercontent.com/u/2474428?v=3","gravatar_id":"","url":"https://api.github.com/users/peiyuwang","html_url":"https://github.com/peiyuwang","followers_url":"https://api.github.com/users/peiyuwang/followers","following_url":"https://api.github.com/users/peiyuwang/following{/other_user}","gists_url":"https://api.github.com/users/peiyuwang/gists{/gist_id}","starred_url":"https://api.github.com/users/peiyuwang/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/peiyuwang/subscriptions","organizations_url":"https://api.github.com/users/peiyuwang/orgs","repos_url":"https://api.github.com/users/peiyuwang/repos","events_url":"https://api.github.com/users/peiyuwang/events{/privacy}","received_events_url":"https://api.github.com/users/peiyuwang/received_events","type":"User","site_admin":false},"created_at":"2016-04-26T18:21:17Z","updated_at":"2016-04-26T18:21:17Z","body":"CI this"}}