Stephen Atherton
87d0c5bae0
Bug/usability fix: The output URLs of fdbbackup list were meant to be directly usable for backup management operations but they were missing the bucket URL parameter.
2019-03-05 21:14:21 -08:00
Stephen Atherton
d3377722d5
Added blob store Backup URL parameter 'header' which enables addition of custom HTTP header fields to blob store HTTP requests. Added 'fdbbackup modify' command line tool for changing the backup URL and parameters, default snapshot interval, and/or current snapshot interval of a running backup.
2019-03-05 04:00:11 -08:00
Evan Tschannen
5d2b11cba9
Merge pull request #1019 from satherton/http-request-id
...
Backup usability and sanity check improvements
2019-01-09 13:29:37 -08:00
A.J. Beamon
d265517156
Fix: fast allocator would not cleanup memory for a thread if that thread never called getMagazine. This could happen if the first thing the thread did was to release memory.
...
Added a new metric for the number of threads that hold memory for each size and improve some existing metrics.
Fix: a failed ASSERT would crash if done early in the program lifetime.
2019-01-08 14:36:01 -08:00
Stephen Atherton
0ec216a1fa
Added X-Request-ID header to HTTP requests and verification of matching ID in response, if present.
2019-01-07 17:56:38 -08:00
Stephen Atherton
f64d5321e9
Backup describe, expire, and delete will now clearly indicate when there is no backup at the given URL.
2018-12-20 18:05:23 -08:00
Evan Tschannen
55a9c4a0f0
Merge pull request #955 from ajbeamon/fix-bad-error-creation-and-whitespace
...
throw platform_error; -> throw platform_error();. Convert some spaces to tabs.
2018-12-03 15:12:37 -08:00
Stephen Atherton
e2673b2bbc
Fixed typo causing mac build failure.
2018-12-02 22:03:21 -08:00
A.J. Beamon
50c9dfdd01
Errors that occur in platform that are the result of IO issues are now raised as io_error rather than platform_error.
2018-11-30 10:55:19 -08:00
A.J. Beamon
97847f517b
throw platform_error; -> throw platform_error();. Convert some spaces to tabs.
2018-11-28 12:56:57 -08:00
Evan Tschannen
8b021d38d8
Merge pull request #939 from satherton/backup-smaller-snapshot-folders
...
New backup folder scheme which results in far fewer kv range folders
2018-11-27 11:18:52 -08:00
Stephen Atherton
b91b26ef75
Attempt at workaround of a rare issue where long running backup processes reach a state where DNS resolution requests always time out but other processes on the same host can still resolve successfully. In case this was somehow caused by a bad boost tcp_resolver state, each request now uses a unique tcp_resolver instance.
2018-11-26 20:02:03 -08:00
Stephen Atherton
32f434b2ee
Bug fix, dns resolution would throw an error if any of the results were IPv6 addresses, which could happen depending on the host networking configuration.
2018-11-26 19:53:46 -08:00
Stephen Atherton
ec9410492d
Changed backup folder scheme to use a much smaller number of unique folders for kv range files, which will speed up list and expire operations. The old scheme is still readable but will no longer be written except in simulation in order to test backward compatibility.
2018-11-23 05:23:56 -08:00
Alex Miller
9d04934f11
Don't allocate magazines backed by hugepages on systems that support them.
...
Doing so causes an excessive amount of memory to be wasted. See issue #909 .
2018-11-12 13:45:48 -08:00
Stephen Atherton
16909fb51d
HTTP header field names are now treated as case insensitive.
2018-11-09 16:57:01 -08:00
A.J. Beamon
81dc8b2d05
Fix crash when bad filename is specified for profiling output. Also removed some unused code and added a couple return value checks.
2018-10-25 09:35:19 -07:00
A.J. Beamon
664f64881c
Port truncate optimization from Snowflake PR in order to make quick changes for a patch release.
2018-10-05 15:05:26 -07:00
Steve Atherton
31b297e756
Merge pull request #755 from ajbeamon/fix-actor-compiler-warnings
...
Fix actor compiler warnings related to TEST_CASEs not having wait() s…
2018-09-24 10:11:32 -07:00
A.J. Beamon
4773b788e9
Fix line endings
2018-09-10 09:44:47 -07:00
Stephen Atherton
309159ea23
WriteValue() no longer uses format() which creates temporary strings, instead if writes directly into allocated space in the target buffer using snprintf().
2018-09-10 00:44:09 -07:00
Stephen Atherton
ce3f01a0cf
Added concept of type to JsonString. Appending single items or key/value pairs is now type-safe and only allowed in certain cases. JsonString will refuse to produce invalid JSON. All duplicative functions have been replaced with templates. Encoding of values uses json_spirit's value writer which should be no worse performance than format() and it will escape everything properly. Final string form is now built directly using knowledge of type, such as when an instance becomes an Array or Object the appropriate opening character is written. This avoids a full copy just to prepend the opening character later. Index interface for key/value pairs no longer makes a temporary copy of the key string. JsonString is now only needed by Status.actor.cpp. Still more work to be done here.
2018-09-08 07:15:28 -07:00
Evan Tschannen
d3c8d7ab4e
fix: status would generate invalid json
2018-09-07 18:26:05 -07:00
A.J. Beamon
e918ba7a4f
Fix actor compiler warnings related to TEST_CASEs not having wait() statements and the DescrCompiler having unused variables.
2018-09-06 16:14:04 -07:00
Stephen Atherton
425ed6c693
Fixed memory leak in JsonString operator[](), fixed minor document byte count error.
2018-09-06 02:28:23 -07:00
Evan Tschannen
fca1451186
fix: hasKey was not set properly
2018-09-05 23:46:31 -07:00
Evan Tschannen
98651bafb1
removed _keyNames from JsonString
2018-09-05 22:51:15 -07:00
Evan Tschannen
df406a340e
Merge pull request #742 from ajbeamon/roles-in-trace-events
...
Add the roles running on a process as a field on trace events in the …
2018-09-05 16:08:12 -07:00
A.J. Beamon
9e79f9ec59
Cleanup from review
2018-09-05 15:53:12 -07:00
A.J. Beamon
2de0b5d6d7
Add the roles running on a process as a field on trace events in the form of a comma delimited string of role abbreviations.
2018-09-05 15:06:14 -07:00
Alvin Moore
821adeae4f
Added method to swap in json text
2018-09-05 14:17:33 -07:00
Alvin Moore
6aa22af83b
Added explicit keyword for appropriate constructor
...
Templatized some methods
Removed unused hash function
2018-09-05 12:22:04 -07:00
Alvin Moore
43a2afc3b6
Added TODO comment
...
Removed debug comments
2018-09-05 08:06:19 -07:00
Alvin Moore
04a768042a
Added TraceEvent to measure time to create Status Json
...
Simplified JsonString class to use implementation method for reuse of methods
Removed quotes from non-string values within json
Added Tests for jsonstring
Removed hashing of names for JsonString
Switched name tracker to unordered set
2018-09-05 03:50:53 -07:00
Alvin Moore
affd7423b4
Added class to write json as objects are added
...
Integrated JsonString class into status
2018-08-31 01:21:24 -07:00
A.J. Beamon
168dce94cb
Remove some trace event suppressions that were happening off the network thread. Downgrade some trace events related to trace logging problems from SevError to SevWarnAlways.
2018-08-14 09:00:43 -07:00
Evan Tschannen
3186fac397
Make sure we still accept some connections even if we are CPU bound by high priority work
2018-08-10 17:47:21 -07:00
Evan Tschannen
b5a133865d
Merge branch 'release-6.0' of github.com:apple/foundationdb into release-6.0
...
# Conflicts:
# fdbrpc/TLSConnection.actor.cpp
2018-08-06 18:26:54 -07:00
Steve Atherton
fb46385a39
Merge pull request #628 from alexmiller-apple/reloadcertificates
...
Reload certificates if changed.
This is a cherry-pick of #628 back to release-6.0
2018-08-06 18:04:04 -07:00
Evan Tschannen
c3c5dd2805
do not suppress loadlibrary and loadfunction trace events
2018-08-06 17:55:24 -07:00
Evan Tschannen
6f328d41ac
suppressed spammy trace events
2018-08-06 12:12:55 -07:00
Evan Tschannen
be1a4d74c7
tlogs serve reads to log routers at a low priority, to prevent them from using all their resources catching up a remote dc that has been down for a long time
...
increase the amount of memory ratekeeper budgets for tlogs so that there is a gap after the spill threshold to prevent temporarily overshooting the budget
2018-08-04 10:31:30 -07:00
Evan Tschannen
65057b4788
Merge branch 'release-5.2' into release-6.0
...
# Conflicts:
# documentation/sphinx/source/downloads.rst
# documentation/sphinx/source/release-notes.rst
# fdbclient/MasterProxyInterface.h
# packaging/msi/FDBInstaller.wxs
2018-08-02 11:29:40 -07:00
Evan Tschannen
9f64dd945b
remove an unused length from trace event
2018-08-02 10:49:26 -07:00
Evan Tschannen
1c29275672
call all methods which could disable a trace event before it is initialized. In practice this means calling .error first, then .suppressFor, then all your details.
2018-08-01 14:30:57 -07:00
Evan Tschannen
a361a785e8
fix: clients which cannot talk to storage servers poll the proxy for new storage server interfaces. If there are too many clients polling, we saturate the proxies with these requests, prevents the storage servers from updating their interfaces.
2018-07-31 16:57:23 -07:00
A.J. Beamon
80d8197223
Spaces -> tabs
2018-07-18 08:40:26 -07:00
A.J. Beamon
227b55c8f9
Merge branch 'release-6.0' into on-main-thread-fix
2018-07-16 16:12:30 -07:00
A.J. Beamon
a067f8812d
When calling onMainThread from the network thread, first empty the queue of tasks scheduled from other threads. This way, tasks scheduled from the main thread can't jump ahead in line.
2018-07-16 16:10:24 -07:00
Evan Tschannen
e0caa28758
code cleanup
2018-07-16 15:56:43 -07:00