realm / realm-tasks

To Do app built with Realm, inspired by Clear for iOS
Other
369 stars 71 forks source link

If user token expires, client stops syncing (Android) #397

Open jedelbo opened 7 years ago

jedelbo commented 7 years ago

I have this log from the server:

2017-02-02T11:22:18.014Z - info: sync-server: Connection[21]: Connection from 127.0.0.1:33002
2017-02-02T11:22:18.014Z - debug: sync-server: Connection[21]: WebSocket::initiate_server_handshake()
2017-02-02T11:22:18.014Z - debug: sync-server: Connection[22]: WebSocket::Websocket()
2017-02-02T11:22:18.016Z - info: sync-server: Connection[21]: Received: HTTP request(protocol_version=16)
2017-02-02T11:22:18.050Z - info: sync-server: Connection[21]: Session[1]: Session initiated (session_ident=1).
2017-02-02T11:22:18.050Z - info: sync-server: Connection[21]: Session[1]: Received: BIND(server_path=/ec136dddb85d6389101ecb7b14ca814a/realmtasks, signed_user_token='...EPz5m0UfGVaGABOy4PhtgakDP0Cw==', need_file_ident_pair=0)
2017-02-02T11:22:18.112Z - info: sync-server: Connection[21]: Session[1]: Received: IDENT(server_file_ident=3520536413138977724, client_file_ident=2, client_file_ident_secret=6342543230144259037, scan_server_version=87, scan_client_version=177, latest_server_version=87, latest_server_session_ident=2918902661844013680)
2017-02-02T11:22:18.112Z - debug: sync-server: Using already open Realm file: /home/realm/realm-object-server/data/0/user_data/ec136dddb85d6389101ecb7b14ca814a/realmtasks.realm
2017-02-02T11:22:18.112Z - error: sync-server: Connection[21]: Session[1]: Client file already bound in other session (message_type='ident', path='/ec136dddb85d6389101ecb7b14ca814a/realmtasks').
2017-02-02T11:22:18.113Z - info: sync-server: Connection[19]: Session[1]: Disabled
2017-02-02T11:22:18.113Z - detail: sync-server: Connection[21]: Session[1]: Received: UPLOAD(client_version=181, server_version=87, changeset_size=24, timestamp=65964056210)
2017-02-02T11:22:18.113Z - debug: sync-server: Using already open Realm file: /home/realm/realm-object-server/data/0/user_data/ec136dddb85d6389101ecb7b14ca814a/realmtasks.realm
2017-02-02T11:22:18.122Z - detail: sync-server: Connection[21]: Session[1]: Remote changeset integrated, producing server version 88
2017-02-02T11:22:18.122Z - debug: sync-server: Using already open Realm file: /home/realm/realm-object-server/data/0/user_data/ec136dddb85d6389101ecb7b14ca814a/realmtasks.realm
2017-02-02T11:22:18.123Z - detail: sync-server: Sending: DOWNLOAD(scan_server_version=88, scan_client_version=181, latest_server_version=88, latest_server_session_ident=2918902661844013680, latest_client_version=181, inserted_changeset_count=0, is_body_compressed=0, body_size=0, compressed_body_size=0)
2017-02-02T11:22:18.123Z - detail: sync-server: Connection[21]: Session[1]: Sending: DOWNLOAD(scan_server_version=87, scan_client_version=177, latest_server_version=88, latest_server_session_ident=2918902661844013680, latest_client_version=181, number of changesets=0, downloadable_bytes=1166)
2017-02-02T11:22:18.123Z - detail: sync-server: Connection[21]: Session[1]: Received: UPLOAD(client_version=182, server_version=87, changeset_size=18, timestamp=65964056423)
2017-02-02T11:22:18.124Z - debug: sync-server: Using already open Realm file: /home/realm/realm-object-server/data/0/user_data/ec136dddb85d6389101ecb7b14ca814a/realmtasks.realm
2017-02-02T11:22:18.129Z - detail: sync-server: Connection[21]: Session[1]: Remote changeset integrated, producing server version 89
...
2017-02-02T11:22:18.170Z - debug: sync-server: Using already open Realm file: /home/realm/realm-object-server/data/0/user_data/ec136dddb85d6389101ecb7b14ca814a/realmtasks.realm
2017-02-02T11:22:18.171Z - detail: sync-server: Sending: DOWNLOAD(scan_server_version=95, scan_client_version=189, latest_server_version=95, latest_server_session_ident=2918902661844013680, latest_client_version=189, inserted_changeset_count=0, is_body_compressed=0, body_size=0, compressed_body_size=0)
2017-02-02T11:22:18.171Z - detail: sync-server: Connection[21]: Session[1]: Sending: DOWNLOAD(scan_server_version=88, scan_client_version=181, latest_server_version=95, latest_server_session_ident=2918902661844013680, latest_client_version=189, number of changesets=0, downloadable_bytes=1166)
2017-02-02T11:32:10.961Z - info: sync-server: Connection[21]: Session[1]: Session terminated (session_ident=1).
2017-02-02T11:32:10.962Z - info: sync-server: Connection[21]: Connection closed by client: End of input

2017-02-02T11:40:13.876Z - debug: proxy attempting to upgrade client ::ffff:94.18.198.132:46331 => headers: {"connection":"Upgrade","host":"edelbo.net","sec-websocket-key":"PLQplvuv2gFk44AUvSoiJQ==","sec-websocket-protocol":"io.realm.protocol","sec-websocket-version":"13","upgrade":"websocket","x-realm-access-token":"eyJpZGVudGl0eSI6ImVjMTM2ZGRkYjg1ZDYzODkxMDFlY2I3YjE0Y2E4MTRhIiwicGF0aCI6Ii9lYzEzNmRkZGI4NWQ2Mzg5MTAxZWNiN2IxNGNhODE0YS9yZWFsbXRhc2tzIiwiZXhwaXJlcyI6MTQ4NjAzNDU5OCwiYXBwX2lkIjoiaW8ucmVhbG0ucmVhbG10YXNrcyIsImFjY2VzcyI6WyJkb3dubG9hZCIsInVwbG9hZCIsIm1hbmFnZSJdfQ==:aO7qayW56/voaAcfzo3UrkbHnYrGugv+F6tyrEzRgYOplwUrNbZMUMGj71S0bn5H46tLnFAzmTJBG9GUkFfd9qA+O3yhmLA2Tum3kevKVG46B1oaBFrzjZjuRpChLifO422UDd8iCisud7WsiY+N5NQQZIUDQU9H7JNe+V9QhFYnAP4yu/bbale2edY516YS32Js19zIuGdMobGPMrO+xsiGEWsaTuhWOadF9mp5sZk94P12ED7c9tmPkYVGLRG1lnsaxSdwILVw57aQmZ5AJ0rOot2OAwr9+ZLPcUD/e+hXjfSPOa/w8/kbqTEPz5m0UfGVaGABOy4PhtgakDP0Cw==","x-realm-path":"/ec136dddb85d6389101ecb7b14ca814a/realmtasks","x-realm-protocol-version":"16"}.}
2017-02-02T11:40:13.883Z - info: sync-server: Connection[22]: Connection from 127.0.0.1:34676
2017-02-02T11:40:13.884Z - debug: sync-server: Connection[22]: WebSocket::initiate_server_handshake()
2017-02-02T11:40:13.886Z - debug: sync-server: Connection[23]: WebSocket::Websocket()
2017-02-02T11:40:13.890Z - info: sync-server: Connection[22]: Received: HTTP request(protocol_version=16)
2017-02-02T11:40:13.922Z - info: sync-server: Connection[22]: Session[1]: Session initiated (session_ident=1).
2017-02-02T11:40:13.923Z - info: sync-server: Connection[22]: Session[1]: Received: BIND(server_path=/ec136dddb85d6389101ecb7b14ca814a/realmtasks, signed_user_token='...EPz5m0UfGVaGABOy4PhtgakDP0Cw==', need_file_ident_pair=0)
2017-02-02T11:40:13.924Z - error: sync-server: Connection[22]: Session[1]: Token expired (signed_user_token='...EPz5m0UfGVaGABOy4PhtgakDP0Cw==').
2017-02-02T11:40:13.925Z - error: sync-server: Connection[22]: Session[1]: Bad authentication (message_type='bind', signed_user_token='...EPz5m0UfGVaGABOy4PhtgakDP0Cw==').
2017-02-02T11:40:13.925Z - debug: sync-server: Connection[22]: protocol_error (error_code='203', session_ident='1'
2017-02-02T11:40:13.925Z - info: sync-server: Connection[22]: Session[1]: Session terminated (session_ident=1).
2017-02-02T11:40:13.926Z - info: sync-server: Connection[22]: Sending: ERROR(error_code=203, message_size=39, try_again=0, session_ident=1)
2017-02-02T11:40:13.929Z - info: sync-server: Connection[22]: Connection closed by client: End of input
2017-02-02T13:05:12.915Z - info: sync-server: Connection[19]: Session[1]: Session terminated (session_ident=1).
2017-02-02T13:05:12.916Z - info: sync-server: Connection[19]: Connection closed by client: End of input

After this the client needs to be restarted to re-initiate communication.

bigfish24 commented 7 years ago

What version of client and server are you using? cc @austinzheng

jedelbo commented 7 years ago

Server version 1.0.0 App just built from master: df2ce7f0