Commit Graph

11 Commits

Author SHA1 Message Date
Jon Chambers 0e8d4f9a61 Drop Bouncy Castle as a dependency. 2021-04-26 17:58:19 -04:00
Chris Eager 18fb23f27c Fix default logger autoconfiguration parse error 2021-04-13 16:15:01 -05:00
Chris Eager 92c25a8373 Fix flaky SenderTest 2021-04-13 16:15:01 -05:00
Ehren Kret 0dcb4b645c
Build Dynamo DB backed Message Store (#358)
* Work in progress...

* Finish first pass draft of MessagesDynamoDb

* Use begins_with everywhere for destination device id

* Remove now unused methods

* First basic test built

* Add another test case

* Remove comment

* Verify more of the message contents

* Ensure all methods are tested

* Integrate MessagesDynamoDb into the MessagesManager

This change plugs the MessagesDynamoDb class into the live serving
flow in MessagesManager.

Tests are not yet as comprehensive for this big a change as they
should be, but they now compile and pass so checkpointing here with a
commit.

* Put DynamoDB before RDBS when deleting specific messages

* Extract method

* Make aws sdk version into a property

* Rename clientBuilder

* Discard messages with no GUID

* Unify batching logic into one function

* Comment on the source of the value in this constant

* Inline method

* Variable name swizzle

* Add timers to all public methods

* Add missing return statements

* Reject messages that are too large with response code 413

* Add configuration to control dynamo DB timeouts

* Set server timestamp from the ReceiptSender

* Change to shorter key names to optimize IOPS

* Fix tests broken by changing column names

* Fix broken copyright template output

* Remove copyright template error text

* Add experiments to control use of dynamo and rds in message storage

* Specify instance profile credentials for the dynamic configuration manager

* Use property for aws sdk version

* Switch dynamo to instance profile credentials

* Add metrics to the batch write loop

* Use placeholders in logging
2021-02-03 10:03:19 -06:00
Ehren Kret 2f7bb3499d Make copyright notices consistent
Use SPDX-License-Identifier copyright notices and apply consistently
to source throughout the repo. This covers all modules except
service. That one will be updated in a subsequent commit.
2020-10-23 10:16:02 -05:00
Jon Chambers cd4b85b0b5 Don't print intermediate status when running SimultaneousSenderTest. 2020-09-01 16:29:47 -04:00
Ehren Kret 2aca007a59 Remove references to newer bouncy castle from tests
This unifies the entire workspace on one instance of bouncy castle
until such time as the entire workspace is ready to upgrade to BC 1.64
2020-04-02 10:20:01 -07:00
Moxie Marlinspike b4f528039f Multiplex GCM messages across 10 HttpClient instances
The underlying HttpClient implementation will not create a new
connection when the max sessions for an HTTP/2 connection have
been reached.
2019-06-10 12:37:53 -07:00
Moxie Marlinspike 3c6b418ca8 Publish fcm retry metrics 2019-05-30 11:05:05 -07:00
Moxie Marlinspike 105a38a7db Update gcm-sender-async to use jdk11 httpclient 2019-05-30 10:46:40 -07:00
Moxie Marlinspike e6f25b9c5e Bring gcm-sender-async in as a module 2019-05-29 11:03:33 -07:00