mpilman
02e3b634fb
Compile sqlite with NDEBUG so we can debug
2019-04-05 13:12:19 -07:00
mpilman
ae84f5424a
Fix potential segfault when init changes enabled
2019-04-05 13:12:19 -07:00
mpilman
c008e16c81
Defer formatting in traces to make them cheaper
...
This is the first part of making `TraceEvent` cheaper. The main idea is
to defer calls to any code that formats string. These are the main
changes:
- TraceEvent::detail now takes a c-string instead of std::string for
literals. This prevents unnecessary allocations if the trace is not
going to be printed in the first place (for example for SevDebug).
Before that `detail` expected a `std::string` as key, which mean that
any string literal would be copied on each call.
- Templates Traceable and SpecialTraceMetricType. These templates can be
specialized for any type that needs to be printed. The actual
formatting will be deferred to after the `enabled` check. This
provides two benefits: (1) if a TraceEvent is disabled, we don't pay
for the formatting and (2) TraceEvent can trace types that it doesn't
know about.
- TraceEvent::enabled will be set in the constructor if the Severity is
passed. This will make sure that `TraceEvent::init` is not called.
- `TraceEvent::detail` will be inlined. So for disabled TraceEvent
calls, a call to detail will only introduce a if-branch which is much
cheaper than a function call.
2019-04-05 13:12:19 -07:00
Alvin Moore
52f1ef22e7
Added support for stripping symbols from fdbmonitor
2019-04-05 01:38:07 -07:00
Jingyu Zhou
acf60c5e9a
Merge pull request #1414 from jzhou77/pprof
...
Add manually triggered heap profiling
2019-04-04 22:27:33 -07:00
Jingyu Zhou
5be592632b
Change trace event message
...
If heap profiler is not running, we can't take a snapshot of the profile.
2019-04-04 15:29:50 -07:00
Jingyu Zhou
f538df5e6c
Add TraceEvent if unable to invoke heap profiler
2019-04-04 15:26:41 -07:00
Evan Tschannen
390ab9cfed
A process will mark itself as degraded if it continually disconnects from a different process which the failure monitor thinks is healthy
2019-04-04 14:11:12 -07:00
Alex Miller
8f49be480b
Update fdbserver/worker.actor.cpp
...
Co-Authored-By: jzhou77 <jingyuzhou@gmail.com>
2019-04-04 13:32:10 -07:00
Jingyu Zhou
2b75c2e684
Restore removed functions.
...
crc32c.cpp is 3rd party code.
orYield() in genericactors.actor.h might be used in the future code.
2019-04-04 13:24:55 -07:00
Jingyu Zhou
eaaf58ee34
Refactor profiler into cpu and heap profilers
2019-04-03 20:54:30 -07:00
Alex Miller
433060ef95
Update fdbclient/ClientWorkerInterface.h
...
Co-Authored-By: jzhou77 <jingyuzhou@gmail.com>
2019-04-03 20:05:19 -07:00
Alex Miller
ee7822f032
Merge pull request #1412 from atn34/fix-sandbox-port
...
Fix port to match sandbox foundationdb.conf
2019-04-03 19:29:51 -07:00
Jingyu Zhou
3371cf22d4
Add manually triggered heap profiling
...
At client side:
fdb> profile
ERROR: Usage: profile <client|list|flow|heap>
fdb> profile heap 127.0.0.1:4500
On the server side:
$ HEAPPROFILE=/tmp/fdbserver bin/fdbserver -C ../test.cluster -p 127.0.0.1:4500
Starting tracking the heap
FDBD joined cluster.
Dumping heap profile to /tmp/fdbserver.0001.heap (1024 MB allocated cumulatively, 13 MB currently in use)
Dumping heap profile to /tmp/fdbserver.0002.heap (User triggered heap dump)
2019-04-03 16:00:54 -07:00
Alex Miller
ee571ac2d8
Merge pull request #1386 from mpilman/features/client-simulator
...
Implemented JavaWorkload
2019-04-03 14:46:30 -07:00
Andrew Noyes
638978d9bb
Fix comment
2019-04-03 13:52:00 -07:00
Andrew Noyes
021224c44d
Fix port to match sandbox foundationdb.conf
2019-04-03 13:49:44 -07:00
Markus Pilman
101a05ae77
Merge branch 'master' into features/client-simulator
2019-04-03 10:03:56 -08:00
Jingyu Zhou
fc59587b3c
Merge pull request #1393 from jzhou77/pprof
...
Gperftools Profiling fix.
2019-04-03 10:35:31 -07:00
Alvin Moore
19df3e7521
Fixed dotnet reference errors
2019-04-03 05:33:46 -07:00
Evan Tschannen
375955f0f4
Merge pull request #1409 from etschannen/master
...
Merge 6.1 into master (updated versions.target)
2019-04-02 22:38:28 -07:00
Evan Tschannen
44c3072629
updated versions.target and release notes
2019-04-02 22:36:55 -07:00
Evan Tschannen
39c595223b
Merge branch 'release-6.1'
2019-04-02 22:30:02 -07:00
Evan Tschannen
dcbfb02a87
Merge pull request #1408 from etschannen/post-release-cleanup-6.1.0
...
Post release cleanup 6.1.0
2019-04-02 22:27:23 -07:00
Evan Tschannen
4514043dab
update installer WIX GUID following release
2019-04-02 22:26:26 -07:00
Evan Tschannen
1963b93bf3
update versions target to 6.1.1
2019-04-02 22:26:26 -07:00
Jingyu Zhou
bb775eaf45
Only add compiler flags of gperftools for gcc
2019-04-02 19:58:21 -07:00
Evan Tschannen
f5b1015f70
Merge pull request #1407 from etschannen/prepare-release-6.1.0
...
update installer WIX GUID following release
2019-04-02 18:44:30 -07:00
Evan Tschannen
56356814f9
update installer WIX GUID following release
2019-04-02 18:41:52 -07:00
Evan Tschannen
e5606589bb
Merge pull request #1405 from etschannen/release-6.1
...
Update documentation and protocol version for release 6.1.0
2019-04-02 18:40:16 -07:00
Evan Tschannen
985e1de467
Update documentation and protocol version for release 6.1.0
2019-04-02 18:39:24 -07:00
Evan Tschannen
41de0191b3
Merge pull request #1382 from cdonati/python-pack-versionstamp
...
Fix Versionstamp encoding issue for Value objects
2019-04-02 18:17:18 -07:00
Evan Tschannen
30133a30e0
Merge pull request #1403 from etschannen/release-6.1
...
Ported a bug fix to the 6.0 log system, and updated documentation
2019-04-02 17:56:18 -07:00
Evan Tschannen
6223b0b94d
Merge pull request #1397 from etschannen/feature-maintenance-zone
...
Added the ability to mark a zoneId for maintenance
2019-04-02 17:55:34 -07:00
Jingyu Zhou
56a1128a9b
Enhance cmake's gperftools support
...
Add compiler flags and link flags for gperftools.
2019-04-02 17:34:29 -07:00
mpilman
30500d5a61
Added docs for building with JavaWorkload
2019-04-02 17:26:35 -07:00
mpilman
160949d071
Remove unnecessary function
2019-04-02 16:28:34 -07:00
mpilman
d38efac7f8
minor code cleanup
2019-04-02 16:23:36 -07:00
Evan Tschannen
31ed73d9f5
Ported the bug fix https://github.com/apple/foundationdb/pull/1379 to OldTLogServer_6_0
2019-04-02 15:27:37 -07:00
Evan Tschannen
4d6334eb90
removed a known limitation about force_recovery_with_data_loss
2019-04-02 15:23:55 -07:00
Evan Tschannen
6881a8fc69
Added more release notes for 6.1.0
2019-04-02 15:19:44 -07:00
Alvin Moore
b3450af8a7
Merge pull request #1338 from mpilman/features/stripped-binaries
...
Strip debug symbols with `make packages`
2019-04-02 15:03:37 -07:00
Evan Tschannen
1d4a6ab551
cleaned up status to keep the healthyZone read separated from relicaFutures
2019-04-02 14:46:56 -07:00
A.J. Beamon
5f69970d56
Merge pull request #1390 from ajbeamon/update-release-notes
...
Some release notes updates
2019-04-02 14:46:42 -07:00
A.J. Beamon
1f1a378fdd
Merge pull request #1401 from segmentio/go-fix
...
bindings/go: move release_memory() calls
2019-04-02 14:45:02 -07:00
Evan Tschannen
e8548de656
Apply suggestions from code review
...
Co-Authored-By: ajbeamon <ajbeamon@users.noreply.github.com>
2019-04-02 14:42:51 -07:00
Evan Tschannen
a38c396283
made all maintenance transactions lock aware
2019-04-02 14:27:48 -07:00
Evan Tschannen
628fec8c8b
updated status with information about ongoing maintenance
...
clear the maintenance zone if a different storage server is detected failed
2019-04-02 14:15:51 -07:00
Chris Donati
156962e5bf
Fix Versionstamp encoding issue for Value objects
...
Python's struct.pack does not accept Value objects.
2019-04-02 13:49:58 -07:00
mpilman
1bc249bc23
Documented new `classPath` option for JavaWorkload
2019-04-02 13:35:13 -07:00