{"action":"created","issue":{"url":"https://api.github.com/repos/google/guava/issues/2134","labels_url":"https://api.github.com/repos/google/guava/issues/2134/labels{/name}","comments_url":"https://api.github.com/repos/google/guava/issues/2134/comments","events_url":"https://api.github.com/repos/google/guava/issues/2134/events","html_url":"https://github.com/google/guava/issues/2134","id":101481963,"number":2134,"title":"\"SEVERE: input future failed\" spams stdout/stderr","user":{"login":"norru","id":889291,"avatar_url":"https://avatars.githubusercontent.com/u/889291?v=3","gravatar_id":"","url":"https://api.github.com/users/norru","html_url":"https://github.com/norru","followers_url":"https://api.github.com/users/norru/followers","following_url":"https://api.github.com/users/norru/following{/other_user}","gists_url":"https://api.github.com/users/norru/gists{/gist_id}","starred_url":"https://api.github.com/users/norru/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/norru/subscriptions","organizations_url":"https://api.github.com/users/norru/orgs","repos_url":"https://api.github.com/users/norru/repos","events_url":"https://api.github.com/users/norru/events{/privacy}","received_events_url":"https://api.github.com/users/norru/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/google/guava/labels/package:%20concurrent","name":"package: concurrent","color":"207de5"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-08-17T18:30:01Z","updated_at":"2015-08-21T14:54:55Z","closed_at":null,"body":"Hello,\r\n\r\nif one future fails in a combined future a large message with stacktrace is spit out via java.util.logging. This is inconvenient. \r\n\r\n\tAug 17, 2015 7:12:44 PM com.google.common.util.concurrent.Futures$CombinedFuture setExceptionAndMaybeLog \r\n\tSEVERE: input future failed\r\n\r\nWe know of lots cases where this behaviour cannot or shuold not be avoided (for instance, jobs failing because of timeouts). \r\n\r\nThe exception is propagated and handled correctly by the combined future so we have other means to find out what's wrong and handle the case gracefully (it has to be done anyway).\r\n\r\nI can think of a few workarounds, which may even need to be applied in grops, which are equally pesky:\r\n\r\n- Working it around by java.util.logging at the system level is not practical as it requires manual changes at the OS/environment level.\r\n- Working it around by java.util.logging programmatically is very inconvenient because it needs to be done before starting each test, or requires all test to be derived from a common \"wrapper\".\r\n- Working it around by java.util.logging via command line is also very inconvenient because it needs to be done for each test execution environment (either surefire or Eclipse JUnit runner).\r\n- Working it around at the code level by wrapping the input futures with a fallback (or similar) for the known cases requires lots of coding. Also breaks the downstream error handling.\r\n- Working it around by bridging JUL to Slf4j tanks performance.\r\n\r\nCan this be avoided? Forking and rebuilding from source just to comment out a logging line is a bit overkill."},"comment":{"url":"https://api.github.com/repos/google/guava/issues/comments/133452578","html_url":"https://github.com/google/guava/issues/2134#issuecomment-133452578","issue_url":"https://api.github.com/repos/google/guava/issues/2134","id":133452578,"user":{"login":"cpovirk","id":1703908,"avatar_url":"https://avatars.githubusercontent.com/u/1703908?v=3","gravatar_id":"","url":"https://api.github.com/users/cpovirk","html_url":"https://github.com/cpovirk","followers_url":"https://api.github.com/users/cpovirk/followers","following_url":"https://api.github.com/users/cpovirk/following{/other_user}","gists_url":"https://api.github.com/users/cpovirk/gists{/gist_id}","starred_url":"https://api.github.com/users/cpovirk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cpovirk/subscriptions","organizations_url":"https://api.github.com/users/cpovirk/orgs","repos_url":"https://api.github.com/users/cpovirk/repos","events_url":"https://api.github.com/users/cpovirk/events{/privacy}","received_events_url":"https://api.github.com/users/cpovirk/received_events","type":"User","site_admin":false},"created_at":"2015-08-21T14:54:54Z","updated_at":"2015-08-21T14:54:54Z","body":"OK, let's start with the error message. What would you think of something like this?\r\n\r\n> Got more than one input Future failure. Logging failures after the first"}}