* Adding additional error handling to email message sending.
* Adding additional error handling to email message sending.
* Fixing issue with err being lost in the defer.
* Moving defers to be queued up earlier to ensure they get called.
* Fixed closing encoder to use defer pattern that matches the others.
A previous change reused the same timeout for dialing as well as
requesting in order to speed up some tests. This change introduces
a distinct timeout so that the different operations can have different
timeouts.
Ran into difficulties trying to find the ideal solution for sharing
these counts between multiple satellite servers, so for now this is a
dumb solution storing recent space-usage changes in a big dumb in-memory
map with a big dumb lock around it. The interface used, though, should
allow us to swap out the implementation without much difficulty
elsewhere once we know what we want it to be.
* internal/sync2: Cycle minor impl & docs improvements
Add the following improvements to the Cycle type of the internal/sync2
package:
* Avoid that Close method hang if Start/Run has not been called.
* Ensure that internal ticker is always stopped.
* Add clarifications when methods calls panic.
* internal/sync2: add minimal package level docs
* Changes defer
The timeout tests were configured to use very short timeouts but
for some reason they took many seconds to complete. This commit
fixes two issues:
1. The transports were always using the default timeout rather than
the timeout specified.
2. The tests were possibly calling t.FailNow inside of the non-test
goroutine which causes it to exit, possibly losing an error from
the error group. Additionally, it didn't seem to be testing that
the error came back as a deadline wrapped in a transport error.
The tests run in ~3s instead of ~60s now.
* Clarifies that the test-satellite-cfg-change is for being run by
Jenkins as others are.
* Move the target for updating the satellite configuration lock file to
a new Makefile group, called "Tooling".
* Change how it's run the script update-satellite-cfg-lock.sh for
ensuring that the outcome is the same when running from different
machines.
* scripts: check for satellite configuration changes
Create a simple script that checks if the satellite configuration has
differed with the last changes.
* Makefile: add target to check satellite cfg changes
Add a Makefile target which executes the script that checks if the last
changes has made a change in the satellite configuration.
* ci: add satellite cfg check on integration stage
* FIXUP: use releae defaults rather than development ones
* FIXUP: show the message when config differs & some cleanups
* scripts: add script to update the satellite cfg lock
Add a script for allowing to update the satellite configuration lock
file and add Makefile target to run it.
* scripts/testsdata: update satellite cfg lock
Update the satellite configuration lock file with the last changes that
satellite has suffered upstream.
* add boltDB batching for Put operation, add benchmark test
* add batchPut method to kademlia routingTable
* add BatchPut method for other KeyValueStore to satisfy interface
* return err not implemented
* add noSync to boltdb client
* rm boltDB noSync
* make batch block and fix tests
* changes per CR
* rm test setting so it matches prod code behavior
* fix lint errs