David Zhao
981fb7cac7
Adding license notices ( #1913 )
...
* Adding license notices
* remove from config
2023-07-27 16:43:19 -07:00
Raja Subramanian
f11a7a229f
Remove unnecessary check ( #1806 )
2023-06-19 16:40:05 +05:30
Raja Subramanian
40f5902d36
Consistently use connID as log tag ( #1801 )
2023-06-17 21:02:02 +05:30
Raja Subramanian
12db469297
Better tracking of signalling connection. ( #1794 )
...
* Better tracking of signalling connection.
- Reason for closing signaling channel.
- ConnectionID attached to request source/response sink
* Tests
2023-06-15 12:53:34 +05:30
Paul Wells
5f3ea75a1e
conditionally block on signal relay close ( #1722 )
2023-05-18 13:53:20 -07:00
Paul Wells
e03b7ef8de
start signal relay sessions with the correct node ( #1721 )
...
* start signal relay sessions with the correct node
* enable signal relay in multiregion integration test
2023-05-18 12:39:02 -07:00
Raja Subramanian
c79e0ce06f
Make signal close async. ( #1711 )
...
* Make signal close async.
Left notes about async close in code.
Also reducing retry config timeout
- Timeout to 7.5 seconds (making it 1/4th of current config)
- max retry to 4 seconds
- so, it can do 4 tries now in 7.5 seconds (with retries ending at 0.5
seconds, 1.5 seconds, 3.5 seconds, 7.5 seconds). The change of max to
4 seconds is not really needed, but it lined up with 7.5. So, made the
change.
* update comments a bit
2023-05-16 14:08:17 +05:30
Paul Wells
fc09cacfce
increase level for signal stream closed log messages ( #1660 )
...
* increase level for signal stream closed log messages
* ensure stream closes on signal close receipt
* cleanup
2023-04-27 08:30:40 -07:00
Paul Wells
f9f89cd7cf
close signal with reliable message ( #1658 )
...
* close signal with reliable message
* update protocol
2023-04-26 22:59:39 -07:00
David Colburn
ab6c994db4
update protocol/psrpc ( #1643 )
...
* update protocol/psrpc
* metadata references
2023-04-21 12:43:20 -07:00
Paul Wells
70041f004f
create signalStats from out of order join ( #1640 )
2023-04-20 03:27:41 -07:00
Paul Wells
422a28551e
record signal read failure metrics ( #1639 )
2023-04-19 15:33:42 -07:00
Paul Wells
96f3aaa587
free signal join response to gc after forwarding ( #1619 )
2023-04-16 17:38:09 -07:00
Paul Wells
9c64d71e91
update message counter in signal relay ( #1620 )
2023-04-16 08:40:23 -07:00
Raja Subramanian
ac266fbcd6
Support subscriber_allow_pause connect option ( #1612 )
...
* Support subscriber_allow_pause connect option
* optional subscriber_allow_pause field
2023-04-13 17:00:32 +05:30
Paul Wells
eb095db70a
Batch signal retries ( #1593 )
...
* batch signal retries
* cleanup
* update protocol
* range check message dedup
* update protocol with codegen
* block while draining
* only log send timeouts
* cleanup
* cleanup
* cleanup
* typo
* update config yaml options
* update protocol
2023-04-09 18:18:21 -07:00
Paul Wells
6b0cb33c53
set participant node for redis router in signal service ( #1584 )
2023-04-05 16:08:25 -07:00
Paul Wells
234f7ea5cb
read batched signal messages ( #1583 )
...
* batch signal messages
* update protcol
2023-04-05 14:41:52 -07:00
Paul Wells
6636e37664
add prometheus psrpc metrics observer ( #1571 )
...
* add prometheus psrpc metrics observer
* record rpc error counts
* update psrpc
* update protocol
2023-04-05 03:50:43 -07:00
Paul Wells
aaab3b8ce8
fix signal client message buffer size ( #1561 )
...
* fix signal client message buffer size
* update psrpc dep
2023-03-29 16:34:45 -07:00
David Colburn
191a9e8014
update core to 0.0.5 ( #1540 )
...
* update core
* sort imports
* fix typos
* redundant types
2023-03-22 16:53:23 -07:00
Paul Wells
04150c044b
count active signal sessions ( #1519 )
...
* count active signal sessions
* fix
* generate fake
2023-03-14 17:35:32 -07:00
Paul Wells
54bf7e0dac
allow configuring signal message buffer size ( #1504 )
...
* allow configuring signal message buffer size
* update psrpc
2023-03-08 17:34:14 -08:00
Paul Wells
2c93d55e5c
add stream retry middleware for signalling ( #1503 )
2023-03-08 00:51:19 -08:00
Paul Wells
e22de045ba
add signal psrpc service ( #1485 )
...
* add signal psrpc service
* update protocol dep
* refactor for cloud
* update psrpc
* pr feedback
2023-03-03 15:49:46 -08:00
David Zhao
ea12e1477f
Update to go-redis v9. Fixed Redis cluster support ( #1415 )
...
* Update to go-redis v9. Fixed Redis cluster support
2023-02-12 22:22:21 -08:00
David Zhao
9a7ea7a2fa
Close previous request channels when during initial retry ( #1409 )
...
So we don't leave abandoned requests hanging on the media instance
2023-02-09 17:27:33 -08:00
cnderrauber
8b6dab780c
Add reconnect reason and signal rtt calculation ( #1381 )
...
* Add connect reason and signal rtt calculate
* Update protocol
* solve comment
2023-02-06 11:12:25 +08:00
David Zhao
2fa46e2df4
Retry initial connection attempt should it fail ( #1335 )
...
Sometimes the initial selected node could fail. In that case, we'll give it a few more attempts to locate a media node for the session instead of failing it after the first try.
2023-01-25 22:59:57 -08:00
Dan McFaul
9e3ca1e989
adding rtc_init stat ( #1316 )
...
* adding rtc_initiated stat
* clean up signal and rtc init/connected
* update naming and break out stats update funcs
* update protocol dependency
2023-01-23 12:49:15 -07:00
Raja Subramanian
e6bbf07089
Comment out memstats worker. ( #1239 )
2022-12-19 22:37:34 +05:30
Raja Subramanian
80a4dc574a
Fallback to participant key if base62 is not available ( #1223 )
2022-12-13 05:01:23 +05:30
Raja Subramanian
b2df257ac6
base62 encode user provided name/identity. ( #1220 )
2022-12-10 13:02:31 +05:30
Raja Subramanian
2cad63fe9a
Create response channel before sending StartSession ( #1208 )
2022-12-05 00:11:52 +05:30
Benjamin Pracht
c735668f67
Use the redis.UniversalClient interface instead of *redis.Client when interacting with go-redis ( #1149 )
...
* Use the redis.UniversalClient interface instead of *redis.Client when interacting with go-redis
* Update protocol to v1.2.1
2022-11-07 17:27:28 -08:00
Raja Subramanian
1e8cc0dc76
Consolidate getMemoryStats ( #1122 )
...
* Consolidate getMemoryStats
* Avoid divide-by-0
2022-10-26 09:16:39 +05:30
cnderrauber
441053b7fa
add participant id when client reconnect ( #988 )
2022-09-07 15:56:56 +08:00
cnderrauber
f365481dde
unify resume/restart in single/multi node mode ( #946 )
2022-08-23 18:22:44 +08:00
Ramakrishna Chilaka
677b7c16d1
removing piBy180 from critical path ( #821 )
2022-07-11 16:02:51 -07:00
Dan McFaul
aa0df2813f
deleting nonRtc rooms and fixing race when deleting rooms ( #721 )
2022-05-27 09:45:22 -06:00
Raja Subramanian
11fb079a4f
Catching a few more races reported by go test -race ./... ( #713 )
...
* Fix a few more races
* Make sure room store on leave has correct count
* Revert logger change to reduce diff
2022-05-25 07:32:25 +05:30
David Zhao
26700ea135
Add back region when hydrating ParticipantInit. ( #648 )
...
It was left out in the previous PR #646
2022-04-24 09:07:33 -07:00
David Zhao
b7d22c4f34
Fix MessageChannel leaks ( #646 )
2022-04-22 10:53:20 -07:00
David Zhao
59112b9200
Increase default message channel from 200 -> 10k ( #638 )
2022-04-20 16:34:00 -07:00
Raja Subramanian
8535f3d5b9
Redis AdaptiveStream ( #631 )
...
* Redis AdaptiveStream
* Fix adaptive stream while tarnsferring from start session
2022-04-20 10:48:32 +05:30
David Zhao
282e2aed49
Increase frequency of status updates and longer availability threshold ( #628 )
...
* Increase frequency of status updates and longer avail. threshold.
* better fix.
* fix room close test failure due to slow peer connection Close
* Perform avg computation more frequently if data has changed
2022-04-19 22:18:00 -07:00
Raja Subramanian
cf627d8bbe
Send adaptive stream param in join ( #626 )
2022-04-19 16:45:35 +05:30
Raja Subramanian
a19ca69f5f
Prevent stats update if the deltas are empty ( #619 )
...
* Prevent stats update if the deltas are empty
* increase force interval
* static check
* Change max delay to 30 seconds
2022-04-18 22:51:34 +05:30
cnderrauber
7a3e446a65
run StartSession in a goroutine ( #614 )
2022-04-15 09:36:24 +08:00
Brint E. Kriebel
f8ae219eab
Add sort by option to node selector ( #599 )
...
* Add sort by option to node selector
Allow the final decision of a selected node to be based on different
sorting options rather than just random.
Add a `sysload`, `cpuload`, `rooms`, `clients`, `tracks`, and
`bytespersec` sorting options to select the appropriate room when
multiple are suitable for the chosen selector.
Add tests for sysload sort_by option
Closes : #598
* NodeSelector: rename "random" selector to "any"
Since the selector introduces limits but the final selection is now
based on the sort by value, the random selector name does not make
sense. Rename this selector to "any" to accurately reflect that it will
select any available no with no additional selection limits.
Allow the old setting "random" to point to the new selector name, but
print a deprecation warning message.
2022-04-14 01:25:36 -07:00