Skip to content

Tags: hurricane1026/seastar

Tags

seastar-20.05.0

Toggle seastar-20.05.0's commit message
semaphore: specify consume_units as noexcept

semaphore::consume is trivially noexcept and semaphore_units(basic_semaphore&, size_t)
is also noexcept so consume_units can be specified as noexcept.

Also, fix get_units' comment to say it returns an exceptional future
rather than throwing an exception.

Signed-off-by: Benny Halevy <[email protected]>
Message-Id: <[email protected]>

seastar-19.06.0

Toggle seastar-19.06.0's commit message
core/deleter: Fix abort when append() is called twice with a shared d…

…eleter

Appending a deleter which has the same impl pointer as a deleter which
already exists in the chain triggered the assertion which was there to
protect against formation of a cycle in the deleter chain (and thus
infinite loop).

This case can be handled by simply dropping such deleters based on the
premise that the existing deleter is enough to keep the object alive.

This causes the following code to fail:

  temporary_buffer<char> big_buf(200);

  auto buf1 = big_buf.share(0, 10);
  auto buf2 = big_buf.share(11, 10);

  net::packet p;
  p.append(net::packet(std::move(buf1)));
  p.append(net::packet(std::move(buf2)));

Fixes scylladb#646.

Tests:

  - unit (dev)

Message-Id: <[email protected]>

seastar-18.08.0

Toggle seastar-18.08.0's commit message
seastar-addr2line: don't print an empty line between backtrace lines

In most cases addr2line's output will already has a newline character at
the end of the last line (because the line coming from the input does),
no need for `print()` to add another one, introducing an unnecessary
empty line. Use `sys.stdout.write()` to have full control over when a
new line is printed.

Signed-off-by: Botond Dénes <[email protected]>
Message-Id: <5481db11ef4cf50f07805f26005349c22c56a797.1535026792.git.bdenes@scylladb.com>

seastar-17.05.0

Toggle seastar-17.05.0's commit message
execution_stage: fix wrong exception thrown for non-unique stages

The metrics API now also enforces uniqueness, and as it is called before
execution stage registration, it throws earlier, and confuses the unit test
because a different exception type is expected.

Fix by reversing the order of metrics registration and execution stage
registration.