Commit Graph

256 Commits (8cced497640525ff1bed7011509b88306c7e7ea3)

Author SHA1 Message Date
Mark Haines 63878c0379 Don't bother checking for updates if the stream token hasn't advanced for a user 10 years ago
Mark Haines d7b3ac46f8 Revert "Improvement to performance of presence event stream handling" 10 years ago
Erik Johnston 2236ef6c92 Fix up leak. Add warnings. 10 years ago
Erik Johnston 476899295f Change the way we do logging contexts so that they survive divergences 10 years ago
Paul "LeoNerd" Evans 45543028bb Use the presence cachemap ordering to early-abort the iteration loop 10 years ago
Paul "LeoNerd" Evans f683b5de47 Store presence cachemap in an ordered dict, so that the newer serials will be at the end 10 years ago
Erik Johnston a6e62cf6d0 Fix off by one in presence token handling 10 years ago
Erik Johnston 1783c7ca92 Ensure we never miss any presence updates 10 years ago
Erik Johnston 0126ef7f3c Fix typo 10 years ago
Erik Johnston d98edb548a Ensure the serial returned by presence is always an integer 10 years ago
Paul "LeoNerd" Evans e1e5e53127 Remove users from the remote_offline_serials list (and clean up empty elements) when they go online again 10 years ago
Paul "LeoNerd" Evans b3bda8a75f Don't let the remote offline serial list grow arbitrarily large 10 years ago
Paul "LeoNerd" Evans 8a785c3006 Store a list of the presence serial number at which remote users went offline, so that when we delete them from the cachemap, we can still synthesize OFFLINE events for them (SYN-261) 10 years ago
Paul "LeoNerd" Evans 191f7f09ce Generate presence event-stream JSON structures directly 10 years ago
Paul "LeoNerd" Evans ed008e85a8 Reduce activity timer granularity to avoid too many quick updates (SYN-247) 10 years ago
Paul "LeoNerd" Evans 128cf2daf7 Appease pep8 10 years ago
Paul "LeoNerd" Evans b0cf867319 Use _ instead of . as a metric namespacing separator, for Prometheus 10 years ago
Paul "LeoNerd" Evans 59c448f074 Add a scalar gauge metric on the size of the presence user cachemap 10 years ago
Erik Johnston 8e28db5cc9 Change room handlers get_rooms_for_user to get_joined_rooms_for_user. This uses the a storage api that is cached. 10 years ago
Erik Johnston 72a4de2ce6 Use consumeErrors=True on all DeferredLists. 10 years ago
Mark Haines 84a769cdb7 Fix code-style 10 years ago
Mark Haines b085fac735 Code-style fixes 10 years ago
David Baker 273b12729b Reset badge count to zero when last active time is bumped 10 years ago
Mark Haines 5759bec43c Replace hs.parse_userid with UserID.from_string 10 years ago
Mark Haines adb04b1e57 Update copyright notices 10 years ago
Paul "LeoNerd" Evans f5d2514fc0 @log_function on PresenceStream's get_new_events_for_user() 10 years ago
Paul "LeoNerd" Evans 52f1d3c886 Store any incoming presence push in the local cache anyway, even if there's no interested observers (yet *hint*) (SYN-115) 10 years ago
Paul "LeoNerd" Evans 274d137b00 Extra verbosity on logging of received presence info 10 years ago
Erik Johnston 9d53228158 Change DomainSpecificString so that it doesn't use a HomeServer object 10 years ago
Mark Haines 32090aee16 Add a few missing yields, Move deferred lists inside PreserveLoggingContext because they don't interact well with the logging contexts 10 years ago
Paul "LeoNerd" Evans 03dc63f6c8 Initialise UserPresenceCache instances to always contain a 'presence' key 10 years ago
Paul "LeoNerd" Evans 759db7d7d5 Added ability to .get_state() from the PresenceHandler by returning a complete m.presence event 10 years ago
Paul "LeoNerd" Evans 4c18e08036 Don't expect all _user_cachemap entries to definitely contain a "last_active" key 10 years ago
Mark Haines 7d709542ca Fix pep8 warnings 10 years ago
Paul "LeoNerd" Evans b1ee6fd7ed Fix an off-by-one bug in presence event stream pagination; this might be responsible for any number of bug reports 10 years ago
Paul "LeoNerd" Evans d6bcffa929 Construct a source-specific 'SourcePaginationConfig' to pass into get_pagination_rows; meaning each source doesn't have to care about its own name any more 10 years ago
Paul "LeoNerd" Evans c5a25f610a Remove redundant (and incorrect) presence pagination fetching code 10 years ago
Erik Johnston 768ff1a850 Fix race in presence handler where we evicted things from cache while handling a key therein 10 years ago
Erik Johnston de55ba218f Fix race in presence handler where we evicted things from cache while handling a key therein 10 years ago
Matthew Hodgson 8a7c1d6a00 fix the copyright holder from matrix.org to OpenMarket Ltd, as matrix.org hasn't been incorporated in time for launch. 10 years ago
Paul "LeoNerd" Evans cda31fb755 Kill the state 10 years ago
Paul "LeoNerd" Evans dada11dc5f Bugfix for back-pagination of presence 10 years ago
Paul "LeoNerd" Evans da31b96b55 Implement presence state visibilty limiting when polling eventsource for stream 10 years ago
Kegan Dougal c54d8df504 Update API docs to use 'presence' key not 'state'. Fixed error messages when setting presence. 10 years ago
Paul "LeoNerd" Evans da3e04df8b Rename the 'do_users_share_a_room' to something slightly less verb-sounding 10 years ago
Paul "LeoNerd" Evans ddf3ca7ab3 Neater is_presence_visible() code 10 years ago
Paul "LeoNerd" Evans d9d6fbb085 Safer handling of incoming presence EDUs that may or maynot contain 'presence' or 'state' 10 years ago
Paul "LeoNerd" Evans 7b56a7a3cb 'continue' to go to the next item in a for loop, not 'break' 10 years ago
Paul "LeoNerd" Evans 270d302834 Reënable presence visibility permission checking now it's not used on redundant code paths 10 years ago
Paul "LeoNerd" Evans 32fdf8efd6 No need to test is_presence_visible in _start_polling_local because we know it will be by when it's called 10 years ago