{"action":"created","issue":{"url":"https://api.github.com/repos/ReactiveX/RxJava/issues/3152","labels_url":"https://api.github.com/repos/ReactiveX/RxJava/issues/3152/labels{/name}","comments_url":"https://api.github.com/repos/ReactiveX/RxJava/issues/3152/comments","events_url":"https://api.github.com/repos/ReactiveX/RxJava/issues/3152/events","html_url":"https://github.com/ReactiveX/RxJava/issues/3152","id":100692999,"number":3152,"title":"IO Scheduler breaks long running Subscriber onNext","user":{"login":"thasmin","id":198015,"avatar_url":"https://avatars.githubusercontent.com/u/198015?v=3","gravatar_id":"","url":"https://api.github.com/users/thasmin","html_url":"https://github.com/thasmin","followers_url":"https://api.github.com/users/thasmin/followers","following_url":"https://api.github.com/users/thasmin/following{/other_user}","gists_url":"https://api.github.com/users/thasmin/gists{/gist_id}","starred_url":"https://api.github.com/users/thasmin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/thasmin/subscriptions","organizations_url":"https://api.github.com/users/thasmin/orgs","repos_url":"https://api.github.com/users/thasmin/repos","events_url":"https://api.github.com/users/thasmin/events{/privacy}","received_events_url":"https://api.github.com/users/thasmin/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ReactiveX/RxJava/labels/Question","name":"Question","color":"cc317c"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":12,"created_at":"2015-08-13T05:26:58Z","updated_at":"2015-08-13T23:08:14Z","closed_at":null,"body":"I'm new to Rx and I'm having trouble finding a solution with a scenario. I'm trying to make a network call, parse the result into objects, and send it to the UI. Parsing the response is quick and updating the UI is slower. The problem is that there's backpressure. Using onBackpressureBuffer doesn't fix the problem, and it doesn't even get rid of the MissingBackpressureException. When I tried to reduce the problem in a unit test, I found that I was able to get it to work by removing the subscribeOn(Schedulers.io()) line. I would expect this unit test to either fail or write \"12345\" to the consooe. Instead, it writes \"1\" and stops without any exceptions.\r\n\r\nI'm also not sure why using a backpressure buffer isn't working, so there may be two problems. At this point, all I know is that I'm in over my head and I can't find out any more information on the web. Am I doing this wrong or are there bugs here?\r\n\r\n```java\r\nObservable.from(new Integer[]{1, 2, 3, 4, 5})\r\n\t.subscribeOn(Schedulers.io())\r\n\t.subscribe(new Subscriber<Integer>() {\r\n\t\t@Override public void onCompleted() { }\r\n\t\t@Override public void onError(Throwable e) {\r\n\t\t\tAssert.fail(\"error: \" + e.getMessage());\r\n\t\t}\r\n\r\n\t\t@Override\r\n\t\tpublic void onNext(Integer integer) {\r\n\t\t\ttry {\r\n\t\t\t\tSystem.out.print(integer);\r\n\t\t\t\tThread.sleep(100);\r\n\t\t\t} catch (InterruptedException e) {\r\n\t\t\t\tSystem.out.print(\"interrupted\");\r\n\t\t\t\tAssert.fail(e.getMessage());\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n```"},"comment":{"url":"https://api.github.com/repos/ReactiveX/RxJava/issues/comments/130873487","html_url":"https://github.com/ReactiveX/RxJava/issues/3152#issuecomment-130873487","issue_url":"https://api.github.com/repos/ReactiveX/RxJava/issues/3152","id":130873487,"user":{"login":"headinthebox","id":1073054,"avatar_url":"https://avatars.githubusercontent.com/u/1073054?v=3","gravatar_id":"","url":"https://api.github.com/users/headinthebox","html_url":"https://github.com/headinthebox","followers_url":"https://api.github.com/users/headinthebox/followers","following_url":"https://api.github.com/users/headinthebox/following{/other_user}","gists_url":"https://api.github.com/users/headinthebox/gists{/gist_id}","starred_url":"https://api.github.com/users/headinthebox/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/headinthebox/subscriptions","organizations_url":"https://api.github.com/users/headinthebox/orgs","repos_url":"https://api.github.com/users/headinthebox/repos","events_url":"https://api.github.com/users/headinthebox/events{/privacy}","received_events_url":"https://api.github.com/users/headinthebox/received_events","type":"User","site_admin":false},"created_at":"2015-08-13T23:08:14Z","updated_at":"2015-08-13T23:08:14Z","body":"Since n varies, it can be below or above the default buffer size. I can not drop or buffer them because then I would only see a small portion of my game being updated. "}}