Commit Graph

654 Commits

Author SHA1 Message Date
Stephen Atherton f105204aca Shifted version distribution over folders. 2017-11-15 23:13:04 -08:00
Stephen Atherton cc47d0e161 Bug fix in restore dispatch, begin file was not being incremented. Removed try/catch because the inherited handleError() is better. 2017-11-15 22:38:31 -08:00
Stephen Atherton ab0017f023 TaskBucket’s TaskFunc interface now has an optional handleError() which is called on any task that throws an error from execute() or finish(). Restore and Backup tasks use this to ensure that any errors that occur are placed in the backup or restore config’s lastError property. Bug fixes in log and range file encodings. 2017-11-15 13:33:09 -08:00
Stephen Atherton a77162b53d Merge branch 'master' into backup-container-refactor
# Conflicts:
#	fdbclient/BackupAgent.h
#	fdbclient/FileBackupAgent.actor.cpp
#	fdbclient/KeyBackedTypes.h
2017-11-15 08:14:47 -08:00
Stephen Atherton e07dcb9ada Fixed header paths. 2017-11-15 00:05:20 -08:00
Stephen Atherton 3dfaf13b67 IBackupContainer has been rewritten to be a logical interface for storing, reading, deleting, expiring, and querying backup data. The details of how the data is organized or stored is now hidden from users of the interface. Both the local and blobstore containers have been rewritten, the key changes being a multi level directory structure and no more use of temporary files or pseudo-symlinks in the blob store implementation. This refactor has a large impact radius as the previous backup container was just a thin wrapper that presented a single level list of files and offered no methods for managing or interpreting the file structure so all of that logic was spread around other places in the code base. This made moving to the new blob store schema very messy, and without this refactor further changes in the future would only be worse.
Several backup tasks have been cleaned up / simplified because they no longer need to manage the ‘raw’ structure of the backup.  The addition of IBackupFile and its finish() method simplified the log and range writer tasks.  Updated BlobStoreEndpoint to support now-required bucket creation and bucket listing prefix/delimiter options for finding common prefixes.  Added KeyBackedSet<T> type.  Moved JSONDoc to its own header.  Added platform::findFilesRecursively().

Still to do:  update command line tool to use new IBackupContainer interface, fix bugs in Restore startup.
2017-11-14 23:33:17 -08:00
Balachandar Namasivayam 986b73f458 Fixed an issue where an ACTOR outlives an object passed to it and then crashes while accessing it. 2017-11-14 13:51:23 -08:00
A.J. Beamon 313e823629 Delete TDMetric data (tmpEventMetric) when a trace event is throttled. 2017-11-13 15:06:21 -08:00
A.J. Beamon 0fea5e9c2f Convert client_invalid_operation errors to ASSERTs. 2017-11-13 11:38:34 -08:00
A.J. Beamon cd085764f1 Do not automatically change a cluster file that does not match what you expect. 2017-11-10 14:12:45 -08:00
Alex Miller 311d1ca87d A variety of fixes that collectively fix using flow profiling in circus.
To run, use --co=flow_profiling=-1, because reasons.
2017-11-07 13:55:16 -08:00
Alec Grieser f53afd615e Merge pull request #203 from cie/update-old-kernel-memavailable-computation
Changes to MemAvailable computation on kernels without MemAvailable
2017-11-06 18:30:31 -08:00
A.J. Beamon d174e05bac Merge pull request #180 from cie/bindings-versionstamps-in-tuples
<rdar://problem/25560444> [Feature] Versionstamped keys and tuple/directory incompatibility
2017-11-06 16:39:17 -08:00
A.J. Beamon fee6734e71 Add braces around multiline if block 2017-11-06 16:38:32 -08:00
Alec Grieser 396434794d some python versionstamp api tweaks 2017-11-06 14:56:41 -08:00
Stephen Atherton 7a0aa7b0aa Merge pull request #202 from cie/fdbcli-status-log-backup-dr-info
Fdbcli status log backup dr info
2017-11-06 14:55:20 -08:00
A.J. Beamon fefbf22b6f Remove redundant tagCount 2017-11-06 14:00:08 -08:00
A.J. Beamon b1fe3d1b55 Delete spurious spaces 2017-11-06 12:59:00 -08:00
A.J. Beamon bf07fa3023 Untested changes to MemAvailable computation on kernels without MemAvailable 2017-11-06 09:35:05 -08:00
A.J. Beamon 7d63c2cfb7 Formatting fixes 2017-11-06 09:20:31 -08:00
A.J. Beamon 839ddd4d2e Merge pull request #201 from cie/bindings-java-get-range-first-chunk
<rdar://problem/35325444> Java Bindings: getRange shouldn't fetch first chunk twice when using asList
2017-11-06 09:09:52 -08:00
Evan Tschannen 150aca4734 Merge pull request #199 from cie/getrange-perf-improvements
Getrange perf improvements
2017-11-04 14:25:55 -07:00
Evan Tschannen 33eef4c76b Merge branch 'master' into getrange-perf-improvements 2017-11-04 14:25:45 -07:00
Evan Tschannen 706bf1e018 fix: we cannot trigger better master exists before a master is fully recovered because exclusions changed by the provisional master will not be committed until the master is fully recovered 2017-11-04 12:48:04 -07:00
Evan Tschannen 57aba0b3bc fix: excluded servers were the same fitness as storage servers for the master role
fix: better master exists did not considers exclusion for master fitness
2017-11-03 17:09:14 -07:00
Alec Grieser 45a1fd1681 Merge pull request #200 from cie/introduce_cluster_controller_in_circus
Introduce cluster controller process class in circus
2017-11-03 16:10:59 -07:00
Yichi Chiang 42fad5efe5 Introduce cluster controller process class in circus 2017-11-03 14:22:55 -07:00
A.J. Beamon 3ae3200cc5 Untested implementation of feature to log basic backup and DR info to fdbcli status. 2017-11-03 14:02:03 -07:00
Alec Grieser dafe553dc1 now pass along firstChunk when doing asList to avoid making two calls 2017-11-02 17:15:23 -07:00
Balachandar Namasivayam 33cc644ba8 Copy CommitTransactionRequest during tryCommit function call as it is anyway copied inside the function. 2017-11-02 17:00:44 -07:00
A.J. Beamon 3cad2676cc Collapse some of the getRange actors into a single actor. Avoid unnecessary comparisons. 2017-11-02 13:39:06 -07:00
John Brownlee d48b3ca719 Merge branch 'master' of github.com:apple/foundationdb 2017-11-02 11:22:05 -07:00
A.J. Beamon 2d5a3a07e4 Avoid copies and comparisons in RYW get range 2017-11-02 10:51:30 -07:00
Yichi Chiang dcc9aafab7 Merge branch 'master' of github.com:apple/foundationdb 2017-11-02 10:47:59 -07:00
Yichi Chiang c033d8efd8 Fix typo message and remove extra TraceEvent which overwrites the expected one 2017-11-02 10:47:51 -07:00
John Brownlee d46e240de2 Merge branch 'release-5.0'
# Conflicts:
#	fdbclient/FileBackupAgent.actor.cpp
#	versions.target
2017-11-02 10:42:30 -07:00
John Brownlee 5425d35ed7 Update versions.target 2017-11-02 10:29:34 -07:00
John Brownlee b20b9dc3f2 Update product ID. 2017-11-02 10:19:06 -07:00
A.J. Beamon 07c80484eb Merge branch 'master' into getrange-perf-improvements 2017-11-02 08:42:26 -07:00
Balachandar Namasivayam 3efaaec479 onMasterProxiesChanged was being triggered when any member of ClientDBInfo changed. Change the behavior to be triggered only when proxies field in ClientDBInfo is changed. 2017-11-01 18:29:56 -07:00
Yichi Chiang eeaea60f94 Merge branch 'master' of github.com:apple/foundationdb 2017-11-01 16:20:38 -07:00
Yichi Chiang bb32add5f0 Fix reusing watch transaction in watchDisabled() 2017-11-01 16:19:18 -07:00
A.J. Beamon 24d4f80d1e Merge pull request #198 from cie/bindings-java-while-true-supplier
<rdar://35096338> Java Bindings: There should be a version of whileTrue that takes a Supplier<CF<Boolean>>
2017-11-01 14:27:52 -07:00
John Brownlee 457ba49e5d Prepare for 5.0.7 release. 2017-11-01 13:19:50 -07:00
Balachandar Namasivayam 1d95e1bfd6 Log actor cancellation error to Client Transaction sampling records. 2017-11-01 11:51:31 -07:00
Stephen Atherton f050105243 Added HTTP 502 to the list of retryable errors. 2017-11-01 11:41:32 -07:00
A.J. Beamon 01a4888627 Merge pull request #182 from cie/log-group-for-unsupported-clients
Support log group field in status json
2017-11-01 11:33:29 -07:00
A.J. Beamon 7cf17df821 Merge branch 'master' into log-group-for-unsupported-clients
# Conflicts:
#	flow/Net2.actor.cpp
#	tests/fast/SidebandWithStatus.txt
#	tests/rare/LargeApiCorrectnessStatus.txt
#	tests/slow/DDBalanceAndRemoveStatus.txt
2017-11-01 11:31:02 -07:00
A.J. Beamon fcbeea104f Update documentation and tests with new connected_clients status schema 2017-11-01 11:25:50 -07:00
Alec Grieser eb62b9d9a9 add overload to whileTrue that takes supplier ; deprecated version that takes a Function 2017-11-01 11:21:23 -07:00