Commit Graph

  • 97a923afdf mirror: Don't start migrating until the allocation map is built nick 2013-10-23 15:58:47 +01:00
  • 335261869d mirror: Don't count bytes transferred for the purposes of keeping the stream empty as part of our bwlimit nick 2013-10-23 15:26:28 +01:00
  • 8cf9cae8c0 mirror: Don't sleep if our stream is filling up nick 2013-10-23 14:38:27 +01:00
  • 6986c70888 bitset: Swap pthread_cond_broadcast for pthread_cond_signal nick 2013-09-24 15:28:58 +01:00
  • 4b9ded0e1d bitset: More-efficient implementation of bitset_stream_queued_bytes nick 2013-09-24 15:27:17 +01:00
  • b177faacd6 mirror: Reduce the mirror convergence window to 5 seonds, from 60 nick 2013-09-24 14:42:21 +01:00
  • 96e60a4a29 Added tag 0.1.0 for changeset acad9e9df53c nick 2013-09-24 12:27:29 +01:00
  • d87af93cec tests: Add a migration test with many clients connecting in two waves 0.1.0 nick 2013-09-24 10:11:40 +01:00
  • bc50532321 Fix a current compiler warning nick 2013-09-23 17:15:56 +01:00
  • 22f92c5df0 Fix a potential compiler warning on 32-bit nick 2013-09-23 17:15:47 +01:00
  • 78fc65c515 bitset: Rename bitset_stream_on/off as bitset_enable/disable_stream nick 2013-09-23 17:10:14 +01:00
  • 5c1b119f83 serve: Fix calulation of server_mirror_bytes_remaining nick 2013-09-23 17:09:55 +01:00
  • f4793c7059 bitset: Rename bitset_mapping to bitset nick 2013-09-23 16:58:40 +01:00
  • 0f0697a0aa serve: Remove an unused (and incorrect, in any case) function nick 2013-09-23 16:47:32 +01:00
  • e98c2f2f05 serve: Fix the sense of allow/forbid_new_clients nick 2013-09-23 16:46:43 +01:00
  • ebe6c4a8ab mirror: Remove dead code. We still rely on all_dirty in one place. nick 2013-09-23 14:20:05 +01:00
  • 847b2ec9ad status: Remove useless stats nick 2013-09-23 14:19:49 +01:00
  • ca9aea0d13 status: Expose migration_seconds_left nick 2013-09-23 14:09:25 +01:00
  • 0ae249009c serve/mirror: Move some code tracking migration speed into serve nick 2013-09-23 13:49:01 +01:00
  • 0f2225becf status: Display number of currently connected clients, and whether new clients are allowed nick 2013-09-23 13:38:19 +01:00
  • a6c175ed1d serve: Allow number of clients currently being used to be counted nick 2013-09-23 13:37:13 +01:00
  • 94654419c5 serve: Add a comment clarifying that a behaviour is safe nick 2013-09-23 10:53:55 +01:00
  • e161121c7a flexnbd: Remove unused ".INCOMPLETE" file code nick 2013-09-23 10:38:18 +01:00
  • 150e506780 flexnbd: Remove the server I/O lock as it no longer has any consumers nick 2013-09-23 10:29:06 +01:00
  • 9a3106f946 flexnbd: Remove the server I/O lock from around NBD requests nick 2013-09-23 10:22:48 +01:00
  • 71036730c4 Fix a warning in a test nick 2013-09-23 10:17:50 +01:00
  • 6553907972 mirror: Fix mirroring, break status nick 2013-09-20 17:08:14 +01:00
  • 9770bbe42b tests: Fix for the previous commit nick 2013-09-20 16:53:30 +01:00
  • 6ffa10bf89 flexnbd: Make a test a bit stricter nick 2013-09-20 16:00:56 +01:00
  • eb80c0d235 mirror: Remove server I/O lock and dirty map nick 2013-09-19 15:18:30 +01:00
  • a5c296f948 mirror: Fix a comment nick 2013-09-18 16:28:05 +01:00
  • 77a66c85a0 serve: Move bitset freeing to after closing the mirror and clients nick 2013-09-17 17:30:33 +01:00
  • 0172eb1cba flexnbd: Some comments and a minor fix in client.c to do with the event stream nick 2013-09-13 15:17:15 +01:00
  • c3a5eb0600 bitset: add bitset_stream_size and bitset_stream_queued_bytes nick 2013-09-12 16:54:42 +01:00
  • 0a029fbbf5 bitset: Add an event stream implementation nick 2013-09-12 12:30:50 +01:00
  • 83426e1c01 tests: Update check_bitset to use new bitset_free() function nick 2013-09-11 16:09:27 +01:00
  • 86a000c717 bitset: Some whitespace changes nick 2013-09-11 15:48:19 +01:00
  • 54a41aacdf bitset: Add a bitset_free() function nick 2013-09-11 14:41:59 +01:00
  • 487bef1f40 flexnbd: Disconnect clients at the start of a mirror last pass nick 2013-09-10 16:03:26 +01:00
  • 0494295705 mirror: Ensure the mirror client socket is closed after a fail, and before a retry nick 2013-08-27 15:54:59 +01:00
  • 14fde0f2a1 mirror: Remove overly-verbose log line nick 2013-08-21 14:41:19 +01:00
  • e13d1d8fb4 mirror: honour max_bytes_per_second - naive scheme nick 2013-08-14 16:24:50 +01:00
  • efdd613968 listen: Turn off CLIENT_MAX_WAIT_SECS nick 2013-08-14 16:09:55 +01:00
  • d0022402ae mirror: Start our timeout watcher from the first, not second, transfer nick 2013-08-14 15:29:24 +01:00
  • 28fff91af1 flexnbd: add a mirror-speed command to change mirror->max_bytes_per_second nick 2013-08-14 13:33:02 +01:00
  • 385c9027db flexnbd status: display mirror->max_bytes_per_second as mirror_speed_limit nick 2013-08-14 13:30:25 +01:00
  • b73081e417 One more fix nick 2013-08-13 16:22:44 +01:00
  • cc468b0b17 control/mirror: Use uint64_t and strtoull to get max_Bps into the mirror nick 2013-08-13 12:30:18 +01:00
  • 7128fcc901 control: Output abandoned mirror state nick 2013-08-13 12:29:53 +01:00
  • 45355666f7 mirror: And another abandon fix nick 2013-08-12 16:14:53 +01:00
  • 8a294e5ee0 mirror: fix abandon nick 2013-08-12 15:54:49 +01:00
  • c6764b0de1 mirror: abandon signals are now honoured outside of the remote end being readable / writable nick 2013-08-12 15:30:21 +01:00
  • 41facd2ccf Branch merge nick 2013-08-09 17:07:06 +01:00
  • f6456349f7 Backed out changeset e58ff57b5e2d nick 2013-08-09 17:06:56 +01:00
  • 9f4fbe782c Branch merge nick 2013-08-09 17:03:25 +01:00
  • 8c750a5e9d listen: Allow longer gaps between transfers nick 2013-08-09 17:02:58 +01:00
  • 64702d992d Minor fixes here and there nick 2013-08-09 17:02:33 +01:00
  • c2df38c9d3 mirror: Use libev to provide an event loop inside the mirror thread nick 2013-08-09 17:02:10 +01:00
  • 754949d43f bitset: Add a bitset_run_count_ex that lets you learn the value of the bits in the run nick 2013-08-09 16:49:38 +01:00
  • 1a966ca0be bitset: Prove that bitset operations with len=0 don't underflow lupine 2013-07-26 17:09:21 +01:00
  • f590f8ed3c status: Add migration_speed ( bytes per second ) and migration_duration( seconds ) to the migration output nick 2013-07-26 11:50:01 +01:00
  • bc9ce93648 bitset: squash one more bug nick 2013-07-25 10:58:50 +01:00
  • a5870b8e9b Remove a stray debugging statement nick 2013-07-25 10:14:14 +01:00
  • bed8959d47 bitset: Fix large runs nick 2013-07-24 17:42:08 +01:00
  • 5c59a412af flexnbd-proxy: ensure upstream cooldown is applied when read init from upstream fails nick 2013-07-24 16:01:38 +01:00
  • 253cee5a10 flexnbd: Acknowledge new return type of bitset_run_count nick 2013-07-24 15:08:29 +01:00
  • 7de22a385e flexnbd: clients should be MADV_RANDOM, rather than MADV_SEQUENTIAL nick 2013-07-24 14:18:23 +01:00
  • 14db3315ca non-debug builds get -O2 for impressive bitset speedups nick 2013-07-24 12:34:36 +01:00
  • efe9eaef7c bitset: A more-efficient bit(set)_run_count nick 2013-07-24 12:03:24 +01:00
  • f8fd4e0437 bitset: Actually enable an optimization in bit_set/clear_range nick 2013-07-24 11:19:52 +01:00
  • 9a37951aaa bitset: Use uint64_t everywhere to avoid possible integer overflows nick 2013-07-24 10:34:22 +01:00
  • d18423c153 tests: Fix a couple of compile warnings nick 2013-07-23 17:22:23 +01:00
  • 1b0fe24529 test: Add some tests for bitset_run_count nick 2013-07-23 17:13:40 +01:00
  • 5c5636b053 flexnbd mirror: If the final run would be longer than the file size, truncate to file size nick 2013-07-23 11:00:51 +01:00
  • afe76debf7 flexnbd status: Actually output pass statistics nick 2013-07-08 14:27:04 +01:00
  • f4bfc70a4b flexnbd status: Add current pass clean/dirty byte statistics nick 2013-07-08 13:51:15 +01:00
  • b29ef6d4de flexnbd status: Avoid a possible NULL dereference reading migration status nick 2013-07-08 13:32:14 +01:00
  • dee0bb27d6 flexnbd status: Add the size of the backing file, in bytes nick 2013-07-08 10:11:18 +01:00
  • f556f298b1 flexnbd status: Add current migration pass to the status output if we're migrating nick 2013-07-08 09:58:31 +01:00
  • 55b452ebef Fix tests for new killswitch argument nick 2013-07-03 10:04:08 +01:00
  • 9f34752842 flexnbd: Make the killswitch runtime-selectable nick 2013-07-03 09:56:35 +01:00
  • 81d41f567d proxy: Reduce the reconnect cooldown from 15 seconds to 3. nick 2013-06-20 10:26:34 +01:00
  • 89fd18f6f0 proxy: Add a 30-second timeout for requests in-flight to upstream nick 2013-06-19 16:36:19 +01:00
  • 3c56ba0af6 proxy: Fix a comment nick 2013-06-19 11:27:09 +01:00
  • 2a9884e9e9 proxy: Fix the prefetch code nick 2013-06-19 11:18:52 +01:00
  • 1afea5c73d proxy: Respect the REQUEST_MASK nick 2013-06-19 11:18:22 +01:00
  • 62bdad2a6e ioutil: Add a bit more debug output to iobuf_read/write nick 2013-06-19 11:17:46 +01:00
  • cd0a1f905f proxy: The minor optimisation bugs if needle is not advanced on iobuf_read() nick 2013-06-19 11:16:35 +01:00
  • 2156d06368 proxy: DRY up some code nick 2013-06-18 16:58:39 +01:00
  • b14bba36ec proxy: Set proxy->upstream_fd before calling proxy_finish_connect_to_upstream nick 2013-06-18 15:58:38 +01:00
  • f5c434f21c proxy: Initial move to event-loop proxy model. nick 2013-06-18 15:37:39 +01:00
  • 662b9c2d07 readwrite: Expose a couple of points of functionality nick 2013-06-18 15:36:15 +01:00
  • 197c1131bf tests: Tell us which offset fails nick 2013-06-18 15:35:24 +01:00
  • cecf2ebc77 proxy: log details of a request that fails upstream at the warn level nick 2013-06-07 12:12:12 +01:00
  • f7e5353355 serve: Add a killswitch that causes the server to uncleanly exit on hang nick 2013-06-06 14:16:20 +01:00
  • f9fe421472 proxy: Some logging cleanups nick 2013-06-06 12:24:28 +01:00
  • 1b6c10926f docs: Fix the documentation for the loglevel timestamps nick 2013-06-06 12:23:14 +01:00
  • 24858fcde5 logging: Add a timestamp to the log messages we emit nick 2013-06-06 11:57:05 +01:00
  • 26c7f1b1c4 mirror: munmap() our range on cleanup nick 2013-05-30 11:09:24 +01:00
  • 055836c8cb mirror: Don't undo the MADV_SEQUENTIAL hinting over the course of a migration nick 2013-05-30 11:06:15 +01:00