Commit Graph

243 Commits

Author SHA1 Message Date
Bhaskar Muppana d917f9449f Fixing Steve's review comments. 2017-09-05 14:06:55 -07:00
Bhaskar Muppana 92d05f6fc3 backupContainer is a std::string not a Key. 2017-09-05 13:22:44 -07:00
Bhaskar Muppana 83810edabc Backup/Restore tag can be std::string instad of Key. 2017-09-05 11:38:40 -07:00
Bhaskar Muppana 456ced2c65 Minor backup code cleanup 2017-09-05 09:42:14 -07:00
Bhaskar Muppana e1a7e11347 Minor backup code cleanup 2017-09-01 14:39:38 -07:00
Bhaskar Muppana d834ab9d4d Moving from task->params to Params 2017-09-01 13:50:38 -07:00
Bhaskar Muppana c564aaae68 Moving keyConfigBackupRanges into BackupConfig::backupRanges(). 2017-09-01 11:52:08 -07:00
Bhaskar Muppana 871bac0f96 Cleanup submitCleanup() 2017-08-30 18:05:50 -07:00
Bhaskar Muppana b38f131a46 Move keyStateStop to BackupConfig::stopVersion() 2017-08-30 16:22:28 -07:00
Bhaskar Muppana e73b72cdb9 Moving keyConfigStopWhenDoneKey to BackupConfig::stopWhenDone() 2017-08-30 15:31:55 -07:00
Bhaskar Muppana 1655547048 Removing keyConfigLogUid in preference to KeyBackedConfig::getUidAsKey(). 2017-08-30 15:07:36 -07:00
Bhaskar Muppana c1b6f3fdf2 Moving keyBackupTag to BackupConfig.tag() 2017-08-30 14:34:44 -07:00
Bhaskar Muppana 439193d17b Moving keyBackupContainer to BackupConfig.backupContainer() 2017-08-30 12:48:28 -07:00
Bhaskar Muppana c766bcb797 Moving keyStateStatus to BackupConfig::stateEnum. 2017-08-30 10:38:06 -07:00
Bhaskar Muppana 819566c166 keyFolderId is not used in File Backup anymore. We are instead using tag->uid based task validation. 2017-08-29 09:26:32 -07:00
Bhaskar Muppana df15dce000 Make BackupConfig subclass of KeyBackedConfig and remoe old way of Task
key validation.
2017-08-28 18:20:55 -07:00
Bhaskar Muppana 2ece658e60 Don't reuse backup logUid. 2017-08-28 16:50:39 -07:00
Bhaskar Muppana 32a690bce8 Generalize RestoreConfig class. 2017-08-28 16:48:26 -07:00
Bhaskar Muppana 8ac750672b Make RestoreTag and RestoreTags classes generic to be used with Backup. 2017-08-28 11:28:19 -07:00
Alec Grieser e31a7ff354 Merge branch 'release-5.0' 2017-08-24 17:07:35 -07:00
Alec Grieser 45ade048c4 use apple internal repos for node stuff 2017-08-24 16:30:39 -07:00
A.J. Beamon 45c0585891 Merge branch 'release-5.0' 2017-08-24 14:48:47 -07:00
Alec Grieser 63c2636ce5 Merge pull request #146 from cie/circus-retry-on-ssh-connection-closed
Retry SSH connections on connection failure
2017-08-24 14:23:08 -07:00
Alvin Moore 0c1be7537c Fixed OSX compilation warning about printf field value specification 2017-08-24 12:30:38 -07:00
A.J. Beamon 0d394a21fa Merge branch 'release-5.0' 2017-08-24 10:48:52 -07:00
Evan Tschannen 26a5b5e422 rollback workload now clogs the communication between one of the proxies and the tlogs, since that is what will cause a rollback 2017-08-23 16:08:13 -07:00
Alec Grieser b8c0b0e13f Merge branch 'release-5.0' 2017-08-23 15:53:58 -07:00
A.J. Beamon 4c706d33e9 Merge branch 'release-5.0' 2017-08-23 14:59:43 -07:00
Evan Tschannen be941b4bd1 sending void to committed could cause self to be deleted, so call cleanup before sending 2017-08-23 13:56:18 -07:00
Alvin Moore 7729f663e9 Ensured that the circus id is always lowercase 2017-08-23 13:45:00 -07:00
Evan Tschannen f9308b8fa6 Merge pull request #145 from cie/alexmiller/simrefactor
Refactor simulation to pull all configuration parameters into one struct.
2017-08-23 12:54:21 -07:00
Evan Tschannen 4b40f817f1 fix: is recovery is cancelled before the copy is complete, remove the tlog 2017-08-23 12:26:03 -07:00
Alec Grieser 2b678f6e91 Merge remote-tracking branch 'origin/release-5.0' 2017-08-23 10:24:23 -07:00
Alvin Moore 17c6392295 Added support for printing out information on the current simulation workers 2017-08-22 16:56:33 -07:00
Alvin Moore 8056b78414 Merge branch 'release-5.0' 2017-08-22 13:51:19 -07:00
Alvin Moore 814e471689 Added support for displaying initial workers via printf within simulation using a workload 2017-08-22 13:38:24 -07:00
Alex Miller 7b78035365 Have SimulationConfig wrap DatabaseConfiguration to reduce code duplication.
This effectively turns initializing SimulationConfig into the equivalent of
building a config string and calling buildConfiguration on it.
2017-08-22 10:13:57 -07:00
A.J. Beamon ae56d8e111 Merge pull request #142 from cie/alexmiller/clicrash
Make fdbcli gracefully handle malformed and partial command errors.
2017-08-22 09:05:47 -07:00
Alex Miller 9b25c72971 Pull database config and cluster config into one struct.
This will allow us to specify custom situations to be chosen more frequently,
and in particular control machines and processes.
2017-08-21 22:35:44 -07:00
Alex Miller 0c7fd0a23d Unify and clarify interactive and --exec command error and parse error handling.
Previously, interactive execution and --exec used two models for how a failed
command would impact other commands in the execution.

As an example, consider:

    fdb> set foo bar ; set bar f\00 ; set baz foo

In interactive mode, this had the effect of {foo=bar, baz=foo}.
In --exec mode, this had the effect of {foo=bar}.

With this change, both now have the effect of {foo=bar}.  This is achieved by
prefixing the last parsed command, which is the one that had the error, with a
fake "parse_error" token.

The execution of this would now look like:

    ERROR: malformed escape sequence
    >>> set foo bar
    ERROR: Command failed to completely parse.
    ERROR: Not running partial or malformed command: set bar

Which indicates how much execution occurred and where it halted, identically in
both modes of execution.
2017-08-21 13:42:01 -07:00
Alec Grieser e94a1966c9 Merge branch 'release-5.0' 2017-08-17 11:29:45 -07:00
Alec Grieser 93cecd918f Merge branch 'release-5.0' 2017-08-16 13:28:16 -07:00
John Brownlee 48cddbe047 Merge remote-tracking branch 'origin/release-5.0' 2017-08-16 09:24:19 -07:00
Alex Miller d78b29625c Make fdbcli gracefully handle malformed and partial command errors.
Previously, running a command like `set \xffx\02abcded/` would cause a crash.
The `x\02` is a malformed typo of `\x02`, and the previously existing code to
handle this case looks like

    loop {
      err = parse_command
      if (err)  continue;
      // do things
    }

Thus, if we hit an error, we'd go back to the top of the loop, and try again.
This should be an infinite loop.  However, the actor compiler implementation of
loops involves function calls, so this actually turns into a series of the loop
head calling the loop body calling the loop head calling ... and we eventually
crash due to running out of stack.

This is now fixed by simply letting the code continue on to the check later
that does

    if (there was an error) {
      print nasty message
      return error
    }

With output that looks like

    ERROR: malformed escape sequence
    WARNING: the previous command failed, the remaining commands will not be executed.

And therefore the world becomes a happy place.
2017-08-15 17:49:39 -07:00
Alec Grieser 5ee07b1a9e Merge branch 'release-5.0' 2017-08-14 16:56:58 -07:00
John Brownlee 448fccbdaf Merge pull request #140 from cie/remove-wd40-refs
Remove wd40 refs
2017-08-14 10:22:52 -07:00
John Brownlee 62990fd8a4 Merge pull request #139 from cie/exclusion-free-space-calc
change exclusions so that they calculate free space based on storage …
2017-08-14 10:18:24 -07:00
Evan Tschannen de1b590a8a The TLog did not delete data from removed logs
The TLog continued to make data from removed logs persistent
2017-08-11 18:08:09 -07:00
John King f6d282e66a change exclusions so that they calculate free space based on storage servers only 2017-08-11 17:20:28 -07:00
Stephen Atherton 50fb44be92 Merge branch 'release-5.0'
# Conflicts:
#	versions.target
2017-08-09 23:36:12 -07:00