{"action":"created","issue":{"url":"https://api.github.com/repos/functional-streams-for-scala/fs2/issues/275","repository_url":"https://api.github.com/repos/functional-streams-for-scala/fs2","labels_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/issues/275/labels{/name}","comments_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/issues/275/comments","events_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/issues/275/events","html_url":"https://github.com/functional-streams-for-scala/fs2/issues/275","id":48805390,"number":275,"title":"Mac implementation of `tcp` occasionally hangs on socket close","user":{"login":"pchiusano","id":11074,"avatar_url":"https://avatars.githubusercontent.com/u/11074?v=3","gravatar_id":"","url":"https://api.github.com/users/pchiusano","html_url":"https://github.com/pchiusano","followers_url":"https://api.github.com/users/pchiusano/followers","following_url":"https://api.github.com/users/pchiusano/following{/other_user}","gists_url":"https://api.github.com/users/pchiusano/gists{/gist_id}","starred_url":"https://api.github.com/users/pchiusano/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pchiusano/subscriptions","organizations_url":"https://api.github.com/users/pchiusano/orgs","repos_url":"https://api.github.com/users/pchiusano/repos","events_url":"https://api.github.com/users/pchiusano/events{/privacy}","received_events_url":"https://api.github.com/users/pchiusano/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/functional-streams-for-scala/fs2/labels/build","name":"build","color":"006b75"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/functional-streams-for-scala/fs2/milestones/4","html_url":"https://github.com/functional-streams-for-scala/fs2/milestones/0.9.0","labels_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/milestones/4/labels","id":1338582,"number":4,"title":"0.9.0","description":"The first release with the new design, based on the (badly-named) branch `topic/redesign`. Breaks the dependency on scalaz and moves code to the `fs2` package. This release will also coincide with launch of site fs2.co, which should host documentation and API docs.","creator":{"login":"pchiusano","id":11074,"avatar_url":"https://avatars.githubusercontent.com/u/11074?v=3","gravatar_id":"","url":"https://api.github.com/users/pchiusano","html_url":"https://github.com/pchiusano","followers_url":"https://api.github.com/users/pchiusano/followers","following_url":"https://api.github.com/users/pchiusano/following{/other_user}","gists_url":"https://api.github.com/users/pchiusano/gists{/gist_id}","starred_url":"https://api.github.com/users/pchiusano/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pchiusano/subscriptions","organizations_url":"https://api.github.com/users/pchiusano/orgs","repos_url":"https://api.github.com/users/pchiusano/repos","events_url":"https://api.github.com/users/pchiusano/events{/privacy}","received_events_url":"https://api.github.com/users/pchiusano/received_events","type":"User","site_admin":false},"open_issues":7,"closed_issues":32,"state":"open","created_at":"2015-10-05T16:19:16Z","updated_at":"2016-09-06T12:09:47Z","due_on":null,"closed_at":null},"comments":11,"created_at":"2014-11-14T15:59:14Z","updated_at":"2016-09-10T04:51:39Z","closed_at":null,"body":"Issue is seemingly triggered by concurrent reads and writes to an `AsynchronousSocketChannel`. See `TcpSpec`:\r\n\r\n```Scala\r\n  property(\"echo\") = forAll { (msgs0: List[String]) =>\r\n    val msgs = (\"woot\" :: msgs0).map(_ + \"!\") // ensure nonempty\r\n    val out = Process(msgs: _*).pipe(text.utf8Encode)\r\n    echoTest(msgs) {\r\n      tcp.lastWrites_(out) ++\r\n      tcp.reads(1024).pipe(text.utf8Decode)\r\n    } &&\r\n    echoTest(msgs) {\r\n      tcp.lastWrites(out).tee(tcp.reads(1024))(tee.drainL)\r\n         .pipe(text.utf8Decode)\r\n    } && {\r\n      // NB: this version occasionally causes problems on mac\r\n      // the AsynchronousSocketChannel.close operation hangs indefinitely,\r\n      // even though all read/write operations have completed on the socket\r\n      // This appears to be a JDK bug\r\n      if (System.getProperty(\"os.name\").contains(\"Mac\")) true\r\n      else echoTest(msgs) {\r\n        tcp.lastWrites_(out) merge tcp.reads(1024).pipe(text.utf8Decode)\r\n      }\r\n    }\r\n  }\r\n```\r\n\r\nAlso see discussion in #250. We would be grateful if anyone more knowledgeable can find a workaround or fix for this issue."},"comment":{"url":"https://api.github.com/repos/functional-streams-for-scala/fs2/issues/comments/246088952","html_url":"https://github.com/functional-streams-for-scala/fs2/issues/275#issuecomment-246088952","issue_url":"https://api.github.com/repos/functional-streams-for-scala/fs2/issues/275","id":246088952,"user":{"login":"pchlupacek","id":678560,"avatar_url":"https://avatars.githubusercontent.com/u/678560?v=3","gravatar_id":"","url":"https://api.github.com/users/pchlupacek","html_url":"https://github.com/pchlupacek","followers_url":"https://api.github.com/users/pchlupacek/followers","following_url":"https://api.github.com/users/pchlupacek/following{/other_user}","gists_url":"https://api.github.com/users/pchlupacek/gists{/gist_id}","starred_url":"https://api.github.com/users/pchlupacek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pchlupacek/subscriptions","organizations_url":"https://api.github.com/users/pchlupacek/orgs","repos_url":"https://api.github.com/users/pchlupacek/repos","events_url":"https://api.github.com/users/pchlupacek/events{/privacy}","received_events_url":"https://api.github.com/users/pchlupacek/received_events","type":"User","site_admin":false},"created_at":"2016-09-10T04:51:39Z","updated_at":"2016-09-10T04:51:39Z","body":"@mpilquist @pchiusano I didn't had that behaviour since 0.9 implementation. I suggest to close this. "}}
{"actor":{"display_login":"pchlupacek"}}