Feature: Hashed bins are reasonably performant.

Test results for features/tuf/benchmarks.feature

Running behat features/tuf/benchmarks.feature results in:

@rugged @cli @hashed-bins @benchmarks @gitlab-143
Feature: Hashed bins are reasonably performant.
  In order to speed up TUF repo operations when using hashed bins,
  As a Rugged operator,
  I want to reduce how many hashed bins metadata files are handled.

  Background:
    Given I reset Rugged

  Scenario Outline: Benchmark loading hashed-bin metadata files when adding targets.
    Given I run "sudo cp features/fixtures/config/benchmarks/<BINS>_bins.yaml /var/rugged/.config/rugged/config.yaml"
    And I run the Rugged command "rugged generate-keys --local"
    And I time the Rugged command "rugged initialize --local"

    Examples:
      | BINS |
      | 16   |
        │ Rugged command took: 00:00:00:522714
      | 32   |
        │ Rugged command took: 00:00:00:484651
      | 64   |
        │ Rugged command took: 00:00:00:599915
      | 128  |
        │ Rugged command took: 00:00:00:652154
      | 256  |
        │ Rugged command took: 00:00:00:789225
      | 512  |
        │ Rugged command took: 00:00:01:170072
      | 1024 |
        │ Rugged command took: 00:00:01:646800
      | 2048 |
        │ Rugged command took: 00:00:02:861264
      | 4096 |
        │ Rugged command took: 00:00:05:488606

  Scenario Outline: Benchmark loading hashed-bin metadata files when adding targets.
    Given I run "sudo cp features/fixtures/config/benchmarks/<BINS>_bins.yaml /var/rugged/.config/rugged/config.yaml"
    And I run the Rugged command "rugged generate-keys --local"
    And I run the Rugged command "rugged initialize --local"
    And I time "for i in $(seq -f '%03g' 0 99); do sudo fallocate -l 1 /var/rugged/incoming_targets/bar$i.zip ; sudo sudo -u rugged rugged add-targets --local ; done;"

    Examples:
      | BINS |
      | 16   |
        │ Command took: 00:00:48:560110
      | 32   |
        │ Command took: 00:00:48:710537
      | 64   |
        │ Command took: 00:00:48:085675
      | 128  |
        │ Command took: 00:00:52:119591
      | 256  |
        │ Command took: 00:00:56:992181
      | 512  |
        │ Command took: 00:01:07:501735
      | 1024 |
        │ Command took: 00:01:23:492087
      | 2048 |
        │ Command took: 00:01:58:536889
      | 4096 |
        │ Command took: 00:03:13:881100

18 scenarios (18 passed)
81 steps (81 passed)
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
Rugged TUF Server is a trademark of Consensus Enterprises.