{"action":"created","issue":{"url":"https://api.github.com/repos/voltrb/volt/issues/124","labels_url":"https://api.github.com/repos/voltrb/volt/issues/124/labels{/name}","comments_url":"https://api.github.com/repos/voltrb/volt/issues/124/comments","events_url":"https://api.github.com/repos/voltrb/volt/issues/124/events","html_url":"https://github.com/voltrb/volt/issues/124","id":61956794,"number":124,"title":"Syncing breaks when client resets connection","user":{"login":"shelbyd","id":5272847,"avatar_url":"https://avatars.githubusercontent.com/u/5272847?v=3","gravatar_id":"","url":"https://api.github.com/users/shelbyd","html_url":"https://github.com/shelbyd","followers_url":"https://api.github.com/users/shelbyd/followers","following_url":"https://api.github.com/users/shelbyd/following{/other_user}","gists_url":"https://api.github.com/users/shelbyd/gists{/gist_id}","starred_url":"https://api.github.com/users/shelbyd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shelbyd/subscriptions","organizations_url":"https://api.github.com/users/shelbyd/orgs","repos_url":"https://api.github.com/users/shelbyd/repos","events_url":"https://api.github.com/users/shelbyd/events{/privacy}","received_events_url":"https://api.github.com/users/shelbyd/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":8,"created_at":"2015-03-16T03:25:35Z","updated_at":"2015-04-27T06:28:15Z","closed_at":"2015-04-27T06:01:19Z","body":"Reproduction:\r\n\r\n1. Connect two devices to the same site (sharing a store)\r\n1. Refresh the page on one device\r\n1. Do something on the not refreshed device that would update the refreshed device\r\n\r\nObserved: Refreshed device does not update\r\nExpected: Refreshed device updates\r\n\r\nThe server also throws the following stack trace:\r\n\r\n```\r\nE, [2015-03-16T02:47:07.625049 #3] ERROR -- : undefined method `delete' for nil:NilClass (NoMethodError) \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/lib/volt/utils/generic_pool.rb:84:in `block in remove' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/lib/volt/utils/generic_pool.rb:80:in `each' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/lib/volt/utils/generic_pool.rb:80:in `each_with_index' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/lib/volt/utils/generic_pool.rb:80:in `remove' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/app/volt/tasks/live_query/live_query.rb:70:in `remove_channel' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/app/volt/tasks/query_tasks.rb:58:in `block in close!' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/app/volt/tasks/query_tasks.rb:57:in `each' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/app/volt/tasks/query_tasks.rb:57:in `close!' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/lib/volt/server/socket_connection_handler.rb:61:in `closed' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/lib/volt/server/socket_connection_handler.rb:53:in `rescue in send_message' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/lib/volt/server/socket_connection_handler.rb:47:in `send_message' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/app/volt/tasks/live_query/live_query.rb:49:in `block in notify_changed' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/app/volt/tasks/live_query/live_query.rb:83:in `block in notify!' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/app/volt/tasks/live_query/live_query.rb:82:in `each' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/app/volt/tasks/live_query/live_query.rb:82:in `notify!' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/app/volt/tasks/live_query/live_query.rb:48:in `notify_changed' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/app/volt/tasks/live_query/query_tracker.rb:88:in `block in detect_changed' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/app/volt/tasks/live_query/query_tracker.rb:85:in `each' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/app/volt/tasks/live_query/query_tracker.rb:85:in `detect_changed' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/app/volt/tasks/live_query/query_tracker.rb:39:in `process_changes' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/app/volt/tasks/live_query/query_tracker.rb:29:in `run' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/app/volt/tasks/live_query/live_query.rb:22:in `run' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/app/volt/tasks/live_query/live_query_pool.rb:18:in `block in updated_collection' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/app/volt/tasks/live_query/live_query_pool.rb:17:in `each' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/app/volt/tasks/live_query/live_query_pool.rb:17:in `updated_collection' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/lib/volt/models/persistors/model_store.rb:207:in `save_to_db!' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/lib/volt/models/persistors/model_store.rb:94:in `changed' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/lib/volt/models/model.rb:98:in `attributes=' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/lib/volt/models/buffer.rb:16:in `save!' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/app/volt/tasks/store_tasks.rb:48:in `save' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/lib/volt/tasks/dispatcher.rb:27:in `block in dispatch' \r\n/app/vendor/bundle/ruby/2.1.0/gems/opal-0.6.3/stdlib/promise.rb:93:in `call' \r\n/app/vendor/bundle/ruby/2.1.0/gems/opal-0.6.3/stdlib/promise.rb:93:in `resolve' \r\n/app/vendor/bundle/ruby/2.1.0/gems/opal-0.6.3/stdlib/promise.rb:69:in `>>' \r\n/app/vendor/bundle/ruby/2.1.0/gems/opal-0.6.3/stdlib/promise.rb:52:in `^' \r\n/app/vendor/bundle/ruby/2.1.0/gems/opal-0.6.3/stdlib/promise.rb:158:in `then' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/lib/volt/tasks/dispatcher.rb:24:in `dispatch' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-0.8.26/lib/volt/server/socket_connection_handler.rb:41:in `process_message' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-sockjs-0.3.4.4/lib/sockjs/session.rb:252:in `block in run_user_app' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-sockjs-0.3.4.4/lib/sockjs/session.rb:250:in `each' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-sockjs-0.3.4.4/lib/sockjs/session.rb:250:in `run_user_app' \r\n/app/vendor/bundle/ruby/2.1.0/gems/volt-sockjs-0.3.4.4/lib/sockjs/session.rb:222:in `block in receive_message' \r\n/app/vendor/bundle/ruby/2.1.0/gems/eventmachine-1.0.7/lib/eventmachine.rb:968:in `call' \r\n/app/vendor/bundle/ruby/2.1.0/gems/eventmachine-1.0.7/lib/eventmachine.rb:968:in `block in run_deferred_callbacks' \r\n/app/vendor/bundle/ruby/2.1.0/gems/eventmachine-1.0.7/lib/eventmachine.rb:965:in `times' \r\n/app/vendor/bundle/ruby/2.1.0/gems/eventmachine-1.0.7/lib/eventmachine.rb:965:in `run_deferred_callbacks' \r\n/app/vendor/bundle/ruby/2.1.0/gems/eventmachine-1.0.7/lib/eventmachine.rb:187:in `run_machine' \r\n/app/vendor/bundle/ruby/2.1.0/gems/eventmachine-1.0.7/lib/eventmachine.rb:187:in `run' \r\n/app/vendor/bundle/ruby/2.1.0/gems/thin-1.6.3/lib/thin/backends/base.rb:73:in `start' \r\n/app/vendor/bundle/ruby/2.1.0/gems/thin-1.6.3/lib/thin/server.rb:162:in `start' \r\n/app/vendor/bundle/ruby/2.1.0/gems/thin-1.6.3/lib/thin/controllers/controller.rb:87:in `start' \r\n/app/vendor/bundle/ruby/2.1.0/gems/thin-1.6.3/lib/thin/runner.rb:200:in `run_command' \r\n/app/vendor/bundle/ruby/2.1.0/gems/thin-1.6.3/lib/thin/runner.rb:156:in `run!' \r\n/app/vendor/bundle/ruby/2.1.0/gems/thin-1.6.3/bin/thin:6:in `<top (required)>' \r\n/app/vendor/bundle/ruby/2.1.0/bin/thin:23:in `load' \r\n/app/vendor/bundle/ruby/2.1.0/bin/thin:23:in `<main>' \r\n```\r\n"},"comment":{"url":"https://api.github.com/repos/voltrb/volt/issues/comments/96519267","html_url":"https://github.com/voltrb/volt/issues/124#issuecomment-96519267","issue_url":"https://api.github.com/repos/voltrb/volt/issues/124","id":96519267,"user":{"login":"shelbyd","id":5272847,"avatar_url":"https://avatars.githubusercontent.com/u/5272847?v=3","gravatar_id":"","url":"https://api.github.com/users/shelbyd","html_url":"https://github.com/shelbyd","followers_url":"https://api.github.com/users/shelbyd/followers","following_url":"https://api.github.com/users/shelbyd/following{/other_user}","gists_url":"https://api.github.com/users/shelbyd/gists{/gist_id}","starred_url":"https://api.github.com/users/shelbyd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shelbyd/subscriptions","organizations_url":"https://api.github.com/users/shelbyd/orgs","repos_url":"https://api.github.com/users/shelbyd/repos","events_url":"https://api.github.com/users/shelbyd/events{/privacy}","received_events_url":"https://api.github.com/users/shelbyd/received_events","type":"User","site_admin":false},"created_at":"2015-04-27T06:28:15Z","updated_at":"2015-04-27T06:28:15Z","body":"I updated it locally with volt#0.9.1.pre2 on ruby-2.1.3."}}