[lte][agw]Mitigate GRPC timeouts in S6a requests#4698
[lte][agw]Mitigate GRPC timeouts in S6a requests#4698ulaskozat merged 14 commits intomagma:masterfrom
Conversation
Signed-off-by: Ulas Kozat <[email protected]>
shaddi
left a comment
There was a problem hiding this comment.
Like the direction you're going with this but suggest we do this in a loop rather than a one-shot retry until we fix the underlying issue.
|
MAGMA-OAI-TESTS |
|
Running also on our pipeline |
Signed-off-by: Ulas Kozat <[email protected]>
Signed-off-by: Ulas Kozat <[email protected]>
Signed-off-by: Ulas Kozat <[email protected]>
|
This pull request introduces 2 alerts when merging 0e6825c into 601d6e6 - view on LGTM.com new alerts:
|
Signed-off-by: Ulas Kozat <[email protected]>
Signed-off-by: Ulas Kozat <[email protected]>
Signed-off-by: Ulas Kozat <[email protected]>
|
MAGMA-OAI-TESTS |
| db_location_list.append(db_location[:i] + '0' + str(n_shard) + db_location[i:]) | ||
| else: | ||
| db_location_list.append(db_location[:i] + str(n_shard) + db_location[i:]) |
There was a problem hiding this comment.
Maybe you can use "{:02d}".format(n_shard)
There was a problem hiding this comment.
actually I will eliminate this, it is a residual from earlier commits where I wasn't keeping a list...
Signed-off-by: Ulas Kozat <[email protected]>
|
This pull request introduces 2 alerts when merging 361d160 into 1177eba - view on LGTM.com new alerts:
|
Signed-off-by: Ulas Kozat <[email protected]>
Signed-off-by: Ulas Kozat <[email protected]>
|
This pull request introduces 1 alert when merging b75ba72 into 1177eba - view on LGTM.com new alerts:
|
|
MAGMA-OAI-TESTS |
ssanadhya
left a comment
There was a problem hiding this comment.
Changes in S6aClient.h look good to me!
ardzoht
left a comment
There was a problem hiding this comment.
minor nits, overall LGTM
Signed-off-by: Ulas Kozat <[email protected]>
Signed-off-by: Ulas Kozat <[email protected]>
Signed-off-by: Ulas Kozat <[email protected]>
Signed-off-by: Ulas Kozat <[email protected]>
|
MAGMA-OAI-TESTS |
* Mitigate GRPC timeouts in S6a requests Signed-off-by: Ulas Kozat <[email protected]> * Sharding at file level and set workers to 10 in config Signed-off-by: Ulas Kozat <[email protected]> * Fix indexing Signed-off-by: Ulas Kozat <[email protected]> * resolve nit comment Signed-off-by: Ulas Kozat <[email protected]> * Keep connection lock between table deletion and update phases Signed-off-by: Ulas Kozat <[email protected]> * Remove unused libs Signed-off-by: Ulas Kozat <[email protected]> * Add defaultdict Signed-off-by: Ulas Kozat <[email protected]> * address review comments Signed-off-by: Ulas Kozat <[email protected]> * fix object field name, missing s Signed-off-by: Ulas Kozat <[email protected]> * removed dangling variable due to the changes in the prev commits Signed-off-by: Ulas Kozat <[email protected]> * Address review comments Signed-off-by: Ulas Kozat <[email protected]> * Fix unit tests Signed-off-by: Ulas Kozat <[email protected]> * Pylint fixes Signed-off-by: Ulas Kozat <[email protected]> * Change to temporary file lib Signed-off-by: Ulas Kozat <[email protected]>
* Mitigate GRPC timeouts in S6a requests Signed-off-by: Ulas Kozat <[email protected]> * Sharding at file level and set workers to 10 in config Signed-off-by: Ulas Kozat <[email protected]> * Fix indexing Signed-off-by: Ulas Kozat <[email protected]> * resolve nit comment Signed-off-by: Ulas Kozat <[email protected]> * Keep connection lock between table deletion and update phases Signed-off-by: Ulas Kozat <[email protected]> * Remove unused libs Signed-off-by: Ulas Kozat <[email protected]> * Add defaultdict Signed-off-by: Ulas Kozat <[email protected]> * address review comments Signed-off-by: Ulas Kozat <[email protected]> * fix object field name, missing s Signed-off-by: Ulas Kozat <[email protected]> * removed dangling variable due to the changes in the prev commits Signed-off-by: Ulas Kozat <[email protected]> * Address review comments Signed-off-by: Ulas Kozat <[email protected]> * Fix unit tests Signed-off-by: Ulas Kozat <[email protected]> * Pylint fixes Signed-off-by: Ulas Kozat <[email protected]> * Change to temporary file lib Signed-off-by: Ulas Kozat <[email protected]>
Summary
To mitigate GRPC timeouts during authentication step:
-- increased the RPC timeout from 3 seconds to 10 seconds. This is the hard time out.
-- implemented file level sharding of subscribers into 100 buckets based on their last 2 digits in IMSI
-- open/close connections per api call.
To allow number of workers configurable via service yml files, I removed the hardwired value for number of workers passed during service initialization.
Test Plan
Additional Information