Tim-Philipp Müller [Mon, 14 Oct 2019 23:24:00 +0000 (00:24 +0100)]
validate: remove autotools build
Tim-Philipp Müller [Mon, 14 Oct 2019 23:11:19 +0000 (00:11 +0100)]
codecanalyzer: remove
Remove in effort to declutter. There has been
pretty much no activity at all since the initial
commit in 2014 apart from a few coverity fixes.
Doesn't seem super-useful in its current form
either. Still available on github at
https://github.com/sreerenjb/codecanalyzer/
if anyone has a use for it.
Tim-Philipp Müller [Mon, 14 Oct 2019 18:28:08 +0000 (19:28 +0100)]
mediainfo: remove
This looks bitrotten and abandoned,
remove in an effort to declutter.
Tim-Philipp Müller [Mon, 14 Oct 2019 18:25:30 +0000 (19:25 +0100)]
vagrant: remove
This looks bitrotten and still targets Ubuntu 13.10
and autotools. Doesn't look like anyone has been using
this in the last 5+ years, so let's remove it in an
effort to declutter.
Thibault Saunier [Mon, 15 Jul 2019 21:58:05 +0000 (17:58 -0400)]
validate:launcher: Fix the 'can-happen-several-times' known issue field
Thibault Saunier [Mon, 15 Jul 2019 16:36:23 +0000 (12:36 -0400)]
validate: Check that pull_range is called from the streaming thread
`gst_pad_pull_range` should always be called from the streaming thread,
we now check that when pull_range is called, and if the sinkpad calling
the function has a GstTask with a running thread, the function is called
from that thread.
Nicolas Dufresne [Fri, 27 Sep 2019 20:52:51 +0000 (16:52 -0400)]
validate-scanario: Fix crash when using installed validate
When installed, the lookup path will endup on the very last try, but the
scenario_file was left unset, which lead to a crash.
Matthew Waters [Tue, 24 Sep 2019 01:45:34 +0000 (11:45 +1000)]
validate: fix build with newer gcc
In file included from ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gst.h:55,
from ../validate/gst/validate/gst-validate-scenario.c:45:
../validate/gst/validate/gst-validate-scenario.c: In function ‘gst_validate_scenario_load’:
../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstinfo.h:645:5: error: ‘%s’ directive argument is null [-Werror=format-overflow=]
645 | gst_debug_log ((cat), (level), __FILE__, GST_FUNCTION, __LINE__, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
646 | (GObject *) (object), __VA_ARGS__); \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstinfo.h:1067:26: note: in expansion of macro ‘GST_CAT_LEVEL_LOG’
1067 | #define GST_ERROR(...) GST_CAT_LEVEL_LOG (GST_CAT_DEFAULT, GST_LEVEL_ERROR, NULL, __VA_ARGS__)
| ^~~~~~~~~~~~~~~~~
../validate/gst/validate/gst-validate-scenario.c:3615:5: note: in expansion of macro ‘GST_ERROR’
3615 | GST_ERROR ("Invalid name for scenario '%s'", scenario_name);
| ^~~~~~~~~
../validate/gst/validate/gst-validate-scenario.c:3615:44: note: format string is defined here
3615 | GST_ERROR ("Invalid name for scenario '%s'", scenario_name);
| ^~
Thibault Saunier [Sat, 24 Aug 2019 11:57:23 +0000 (07:57 -0400)]
validate:launcher: Do not hardcode pathsep
Matthew Waters [Wed, 28 Aug 2019 07:22:55 +0000 (17:22 +1000)]
validate/flow: fix werror build with android clang
../validate/plugins/flow/gstvalidateflow.c:75:3: error: redefinition of typedef 'ValidateFlowOverride' is a C11 feature [-Werror,-Wtypedef-redefinition]
} ValidateFlowOverride;
^
../validate/plugins/flow/gstvalidateflow.h:31:23: note: previous definition is here
G_DECLARE_FINAL_TYPE (ValidateFlowOverride, validate_flow_override,
^
Matthew Waters [Mon, 26 Aug 2019 11:43:24 +0000 (21:43 +1000)]
validate: fix -Werror=unused-function with clang
[3623/4053] Compiling C object 'subprojects/gst-devtools/validate/plugins/flow/697521d@@gstvalidateflow@sha/gstvalidateflow.c.o'.
../subprojects/gst-devtools/validate/plugins/flow/gstvalidateflow.c:85:1: warning: unused function 'VALIDATE_IS_FLOW_OVERRIDE' [-Wunused-function]
G_DECLARE_FINAL_TYPE (ValidateFlowOverride, validate_flow_override,
^
/usr/include/glib-2.0/gobject/gtype.h:1407:26: note: expanded from macro 'G_DECLARE_FINAL_TYPE'
static inline gboolean MODULE##_IS_##OBJ_NAME (gpointer ptr) { \
^
<scratch space>:129:1: note: expanded from here
VALIDATE_IS_FLOW_OVERRIDE
^
Matthew Waters [Mon, 26 Aug 2019 11:41:00 +0000 (21:41 +1000)]
validate: fix -Werror=format-nonliteral build with clang
[3470/4053] Compiling C object 'subprojects/gst-devtools/validate/gst/validate/28db7b6@@gstvalidatetracer@sha/gst-validate-reporter.c.o'.
../subprojects/gst-devtools/validate/gst/validate/gst-validate-reporter.c:186:31: warning: format string is not a string literal [-Wformat-nonliteral]
message = g_strdup_vprintf (format, vacopy);
^~~~~~
[3487/4053] Compiling C object 'subprojects/gst-devtools/validate/gst/validate/28db7b6@@gstvalidatetracer@sha/gst-validate-report.c.o'.
../subprojects/gst-devtools/validate/gst/validate/gst-validate-report.c:1007:34: warning: format string is not a string literal [-Wformat-nonliteral]
tmp = gst_info_strdup_vprintf (format, args);
^~~~~~
[76/151] Compiling C object 'subprojects/gst-devtools/validate/plugins/flow/697521d@@gstvalidateflow@sha/gstvalidateflow.c.o'.
../subprojects/gst-devtools/validate/plugins/flow/gstvalidateflow.c:125:65: warning: format string is not a string literal [-Wformat-nonliteral]
if (!flow->error_writing_file && vfprintf (flow->output_file, format, ap) < 0) {
^~~~~~
Philippe Normand [Mon, 19 Aug 2019 11:25:39 +0000 (12:25 +0100)]
validate: Add a scenario for 5 seconds playback use-cases
Philippe Normand [Mon, 19 Aug 2019 10:08:41 +0000 (11:08 +0100)]
validate/ssim: Clean-up temporary directory
When no output-dir is specified in the plugin config, a temporary directory is
created, so it needs to be removed when no-longer needed.
Philippe Normand [Mon, 19 Aug 2019 10:25:45 +0000 (11:25 +0100)]
validate/launcher: Ensure the HTTP server is started when a pipeline needs it
Pipelines declared in gst-integration-testsuites can rely on the validate HTTP
server, so when an URI pointing to it is detected, advertise the server as
needed before starting the test.
For this to work the test scenario should explicitely declare the pipeline uri,
as shown in this example:
"some_playbin3":
{
"pipeline": "playbin3 uri=%(uri)s video-sink=%(videosink)s",
"config": [
"%(validateflow)s, pad=sink:sink"
],
"scenarios": ["play_15s"],
"uri": "http://127.0.0.1:%(http-server-port)s/defaults/html/foo.html"
}
Thibault Saunier [Mon, 5 Aug 2019 23:04:54 +0000 (19:04 -0400)]
validate:launcher: Allow passing any extra_data in json test definition
This means that we can now pass any extra key that `populate_tests`
expects, meaning any key expected by FakeMediaDescriptor and
a few other keys supported by the methods such as
`expected-issues` and `extra_env_vars`
Thibault Saunier [Wed, 10 Jul 2019 20:52:45 +0000 (16:52 -0400)]
launcher: Raise an exception when provided scenario can't be found
Aaron Boxer [Sun, 4 Aug 2019 00:09:32 +0000 (20:09 -0400)]
validate: add missing G_BEGIN/END_DECLS in validate.h
Mathieu Duponchelle [Thu, 1 Aug 2019 19:04:12 +0000 (21:04 +0200)]
validate: Update blacklisting reason for fast forward rtsp
While https://gitlab.freedesktop.org/gstreamer/gst-rtsp-server/issues/14
was merged, the client side (in particular rtpbasedepayload) still
isn't expected to work appropriately
Tim-Philipp Müller [Mon, 29 Jul 2019 09:05:20 +0000 (10:05 +0100)]
validate: fix build with older GLib versions
g_enum_to_string() is only available in newer ones.
Add compatibility workaround for the time being to decouple
this from the decision whether to bump the GLib requirement
and what to bump it to.
https://gitlab.freedesktop.org/gstreamer/gstreamer/merge_requests/199
Fixes #45
Mathieu Duponchelle [Fri, 26 Jul 2019 00:28:42 +0000 (02:28 +0200)]
scenario: fix PAUSED position check
The way this was implemented was simply wrong, first of all checking
the position against the segment after a seek in PAUSED by a query
of the pipeline position is of limited interest, and can only work
in forward playback.
Furthermore the check was a huge blob of code that didn't even look
like it was pretending to do a good job at checking the position in
reverse playback.
Mathieu Duponchelle [Fri, 26 Jul 2019 00:26:20 +0000 (02:26 +0200)]
json tests: assume all user pipelines can seek reverse
When doing a targeted test, it is up to the user to make sure
their pipeline + scenario behaves correctly.
Thibault Saunier [Tue, 9 Jul 2019 03:37:22 +0000 (23:37 -0400)]
validate:launcher: Pass the right timeout_factor is passed to subprojects
Thibault Saunier [Tue, 9 Jul 2019 03:36:52 +0000 (23:36 -0400)]
scenario: Do not dereference NULL pointer
Thibault Saunier [Wed, 3 Jul 2019 19:42:26 +0000 (15:42 -0400)]
validate:pipeline-monitor: Connect deep properties notification only when required
This is quite expensive and can lead to an overwhelm mainloop.
Thibault Saunier [Fri, 28 Jun 2019 21:34:00 +0000 (17:34 -0400)]
validate:scenario: Keep a reference to 'description' structure
For it to be reusable outside the scenario
Thibault Saunier [Thu, 27 Jun 2019 00:41:03 +0000 (00:41 +0000)]
doc: Minor typo fixes.
Thibault Saunier [Sun, 23 Jun 2019 17:56:52 +0000 (13:56 -0400)]
scenario: Use internal sinks when a sink bin can be used to check last-sample
Thibault Saunier [Sun, 23 Jun 2019 17:40:37 +0000 (13:40 -0400)]
docs: Document validate core configuration
Thibault Saunier [Sun, 23 Jun 2019 16:48:43 +0000 (12:48 -0400)]
validate:flow: Log buffers even when tracking srcpads
Thibault Saunier [Sun, 23 Jun 2019 16:48:06 +0000 (12:48 -0400)]
validate:launcher: Move get_fakesink_for_media_type to utils
So it can be reused in other apps like GES
Thibault Saunier [Sun, 23 Jun 2019 16:46:37 +0000 (12:46 -0400)]
validate: Also monitor ghost pads
Allowing overrides to work on ghost pads too
Thibault Saunier [Sun, 23 Jun 2019 15:58:11 +0000 (11:58 -0400)]
validateflow: Add `buffers-checksum` option to log buffers data checksum
Thibault Saunier [Sun, 23 Jun 2019 07:31:30 +0000 (03:31 -0400)]
validate: Add SCENARIO_NAME and CONFIG_NAME vars in configs/scenarios
Thibault Saunier [Sun, 23 Jun 2019 07:09:58 +0000 (03:09 -0400)]
validate: Set 'LOGSDIR' variable in scenarios and config files
Implementing support for variables in config files.
Thibault Saunier [Sun, 23 Jun 2019 05:51:08 +0000 (01:51 -0400)]
scenario: Set `SCENARIO_PATH/DIR` variables in scenarios
And add some documentation about it
Thibault Saunier [Sun, 23 Jun 2019 04:47:04 +0000 (00:47 -0400)]
scenario: Add a `TMPDIR` global variables in scenarios
This also adds the notion of global variables which will be useable
in config files too.
And add some documentation about default variables in scenarios
Thibault Saunier [Tue, 18 Jun 2019 22:10:24 +0000 (18:10 -0400)]
docs: Update validate action types
Include minor fixes in the action types and markdown generator
Thibault Saunier [Tue, 18 Jun 2019 21:43:56 +0000 (17:43 -0400)]
validate: Misc leaks plugging
Thibault Saunier [Mon, 17 Jun 2019 21:59:21 +0000 (17:59 -0400)]
validate:launcher: Strip env vars in command line outputing verbose
But activate if activating verbosity more than once
Thibault Saunier [Fri, 14 Jun 2019 14:43:15 +0000 (10:43 -0400)]
docs: Document GES validate action types
Thibault Saunier [Tue, 11 Jun 2019 21:11:42 +0000 (17:11 -0400)]
validate:reporter: Show report by branches when doing smart reporting
Meaning that instead of getting 1 "Detected on" line per monitor,
there will be one per "branch" like:
Detected on <audioconvert1:sink, audioconvert1:src, audioresample1:sink, audioresample1:src, smart-adder-adder:sink_0, smart-adder-adder:src, smart-adder-capsfilter:sink, smart-adder-capsfilter:src, capsfilter2:sink, capsfilter2:src, tee1:sink, tee1:src_0>
Making it simpler to read and a bit less verbose.
Thibault Saunier [Tue, 11 Jun 2019 20:34:28 +0000 (16:34 -0400)]
validate:launcher: Avoid repeating failure info in summaries
Thibault Saunier [Tue, 11 Jun 2019 20:27:55 +0000 (16:27 -0400)]
validate:scenario: Move force-key-unit action from the transcoding tool
The action is generally useful but was implemented in a way that
was restricting its usage for no good reason. Refactor the
implementation adding more argument so it can be used in a wider
context, such as uvch264src.
Something like:
``` bash
echo "video-request-key-unit, direction=upstream, all-header=true, count=1, target-element-factory-name=h264parse, srcpad=src, playback-time=1.0" > tmp.scenario && \
echo "stop,playback-time=2.0" >> tmp.scenario && \
gst-validate-1.0 --set-scenario=tmp.scenario uvch264src \
device=/dev/video0 name=src iframe-period=33 auto-start=true src.vfsrc ! queue ! fakesink \
src.vidsrc ! queue ! video/x-h264,width=1280,height=720,framerate=30/1 ! h264parse ! fakesink
```
works now.
Thibault Saunier [Tue, 11 Jun 2019 20:23:00 +0000 (16:23 -0400)]
validate:scenario: Minor documentation cleanup
Thibault Saunier [Tue, 11 Jun 2019 20:21:52 +0000 (16:21 -0400)]
validate:pipeline-monitor: Avoid wrong position issue
If the reported position or duration is NONE, do not check its
validity
Niels De Graef [Fri, 31 May 2019 21:18:08 +0000 (23:18 +0200)]
meson: Bump minimal GLib version to 2.44
This means we can use some newer features and get rid of some
boilerplate code using the G_DECLARE_* macros.
As discussed on IRC, 2.44 is old enough by now to start depending on it.
Thibault Saunier [Tue, 21 May 2019 18:54:39 +0000 (14:54 -0400)]
validate: Implement seeking with DEFAULT format
Thibault Saunier [Thu, 23 May 2019 15:49:01 +0000 (11:49 -0400)]
ssim: Report critical issue when override not attached
Thibault Saunier [Thu, 23 May 2019 15:35:28 +0000 (11:35 -0400)]
ssim: Fix the way we handle when an override is attached
Thibault Saunier [Thu, 23 May 2019 15:34:19 +0000 (11:34 -0400)]
docs: Minor fix about ssim plugin
Thibault Saunier [Wed, 24 Apr 2019 16:24:05 +0000 (16:24 +0000)]
docs: Fix docstrings
Thibault Saunier [Sat, 20 Apr 2019 14:21:07 +0000 (10:21 -0400)]
validate:launcher: Do not dump to big log files
Avoiding ' The script exceeded the maximum execution time set for the job' in GitLab
Thibault Saunier [Thu, 7 Feb 2019 18:50:26 +0000 (15:50 -0300)]
docs: Document the validateflow plugin
Thibault Saunier [Sat, 17 Nov 2018 19:50:30 +0000 (16:50 -0300)]
docs: Document validate action types
Just did:
```
gst-validate-1.0 --inspect-action-type all > docs/gst-validate-action-types.md
```
Thibault Saunier [Sat, 17 Nov 2018 15:31:13 +0000 (12:31 -0300)]
validate: inspect: Output valid markdown
So it can be used directly in the documentation Also add a special "all"
argument to `gst-validate-1.0 --inspect-action-type` so we can generate
the documentation for all action types easily.
Thibault Saunier [Mon, 22 Oct 2018 09:38:30 +0000 (11:38 +0200)]
doc: Port to hotdoc
Ideally we want a GstValidate hotdoc plugin... not for now.
Thibault Saunier [Mon, 22 Oct 2018 09:38:27 +0000 (11:38 +0200)]
meson: Use dep.type_name() when it makes sense
Thibault Saunier [Mon, 22 Oct 2018 09:38:24 +0000 (11:38 +0200)]
doc: Minor fixes
Tim-Philipp Müller [Fri, 19 Apr 2019 12:02:43 +0000 (13:02 +0100)]
launcher: testsuites: skip systemclock stress tests
These are very flaky when the build bots are under load.
Tim-Philipp Müller [Sat, 4 May 2019 18:54:16 +0000 (19:54 +0100)]
validate: fix build on macOS
_Q_VALIDATE_MONITOR was defined twice because it wasn't declared
as extern in the header, so it would be defined as variable in all
included files. This doesn't seem to cause problems on Linux, but
seems to cause build failures on macOS.
Fixes #42
Tim-Philipp Müller [Fri, 19 Apr 2019 09:42:30 +0000 (10:42 +0100)]
Back to development
Tim-Philipp Müller [Thu, 18 Apr 2019 23:36:53 +0000 (00:36 +0100)]
Release 1.16.0
Thibault Saunier [Wed, 17 Apr 2019 21:05:36 +0000 (17:05 -0400)]
validate:check: Mare nle test_simple_operation as long
Thibault Saunier [Wed, 17 Apr 2019 20:46:31 +0000 (16:46 -0400)]
validate:check: Fix some mistakes translating regex from gitlab-ci.yml
Thibault Saunier [Wed, 17 Apr 2019 20:59:32 +0000 (16:59 -0400)]
ci: Run valgrind tests when changing the check testsuite
Thibault Saunier [Wed, 17 Apr 2019 15:04:45 +0000 (11:04 -0400)]
validate:launcher: Set ORC_CODE=backup when running gst unit tests under valgrind
Thibault Saunier [Wed, 17 Apr 2019 14:43:09 +0000 (10:43 -0400)]
validate:check: Blacklist and mark some GES tests as long under valgrind
Thibault Saunier [Wed, 17 Apr 2019 14:30:02 +0000 (10:30 -0400)]
validate:testsuites: Add unit tests blacklists
Thibault Saunier [Wed, 17 Apr 2019 12:56:46 +0000 (08:56 -0400)]
validate:launcher: Ignore possibly lost for now
Mathieu Duponchelle [Wed, 17 Apr 2019 00:31:30 +0000 (02:31 +0200)]
TestsManager: _add_blacklist in set_default_blacklist
Otherwise test suites that want to set_default_blacklist and
add tests in setup_tests were seeing their blacklist ignored.
Split up and rename set_blacklists() to complete the refactoring
Mathieu Duponchelle [Wed, 17 Apr 2019 00:29:36 +0000 (02:29 +0200)]
Check indirect leaks
Thibault Saunier [Mon, 15 Apr 2019 20:13:48 +0000 (16:13 -0400)]
validate:launcher: Do not copy logs for non flaky tests
That looks weird for users and is incorrect
Thibault Saunier [Mon, 15 Apr 2019 15:50:16 +0000 (11:50 -0400)]
validate:launcher: Fix printing debug logs URIs
Thibault Saunier [Fri, 12 Apr 2019 16:33:25 +0000 (12:33 -0400)]
validate:launcher: Do not stop tcp server when reiterating tests runs
Thibault Saunier [Fri, 12 Apr 2019 14:13:15 +0000 (10:13 -0400)]
validate:launcher: Associate issues with the bug they come from
Making it simpler to follow when print the known issues
Thibault Saunier [Fri, 12 Apr 2019 14:12:45 +0000 (10:12 -0400)]
validate:launcher: Indent known issues printing
Thibault Saunier [Thu, 11 Apr 2019 14:31:07 +0000 (10:31 -0400)]
validate:launcher: Print the number of times the test was run when --forever
Thibault Saunier [Sat, 6 Apr 2019 14:40:32 +0000 (11:40 -0300)]
validate:launcher: Add python suppression files
Thibault Saunier [Sat, 6 Apr 2019 14:10:14 +0000 (11:10 -0300)]
validate:launcher: Use md viewer to dump md logs if avalaible
And enhance the markdown
See https://github.com/axiros/terminal_markdown_viewer
Thibault Saunier [Sat, 6 Apr 2019 13:46:52 +0000 (10:46 -0300)]
validate:launcher: Avoid forking when running gstcheck tests in gdb
Thibault Saunier [Sat, 6 Apr 2019 02:05:20 +0000 (23:05 -0300)]
validate:launcher: Add an option to output HTML if commonmark is installed
Thibault Saunier [Sat, 6 Apr 2019 01:23:29 +0000 (22:23 -0300)]
validate:launcher: Do not user python 3.5 features
Thibault Saunier [Fri, 5 Apr 2019 13:41:14 +0000 (10:41 -0300)]
validate:launcher: Move all logs to one single log files to be displayed to end user
Thibault Saunier [Fri, 5 Apr 2019 13:40:45 +0000 (10:40 -0300)]
validate:launcher: Make extra_logfiles a set and fix their names
Thibault Saunier [Fri, 5 Apr 2019 13:40:04 +0000 (10:40 -0300)]
validate:launcher: Remove spurious print
Thibault Saunier [Thu, 4 Apr 2019 20:07:58 +0000 (17:07 -0300)]
validate:launcher: Remove noise about empty known issues in logs
Thibault Saunier [Thu, 4 Apr 2019 20:05:14 +0000 (17:05 -0300)]
validate:launcher: Fix printing application name in the logs
Tim-Philipp Müller [Thu, 11 Apr 2019 00:27:45 +0000 (01:27 +0100)]
Release 1.15.90
Tim-Philipp Müller [Thu, 11 Apr 2019 00:25:17 +0000 (01:25 +0100)]
validate: autotools: dist mock decryptor header file
Tim-Philipp Müller [Thu, 11 Apr 2019 00:00:39 +0000 (01:00 +0100)]
validate: win32: add new api to export file
Thibault Saunier [Thu, 28 Mar 2019 13:08:16 +0000 (10:08 -0300)]
validate:launcher: Add a list of well known subpression files from gst-build subprojects
Fixes https://gitlab.freedesktop.org/gstreamer/gst-devtools/issues/38
Thibault Saunier [Wed, 27 Mar 2019 15:36:16 +0000 (12:36 -0300)]
validate: Add a mecanism to rerun failling tests
And add a way to mark some 'flakes' as tolerated
Thibault Saunier [Wed, 27 Mar 2019 18:07:48 +0000 (15:07 -0300)]
validate:launcher: Reset process on clean
Thibault Saunier [Tue, 26 Mar 2019 22:35:19 +0000 (19:35 -0300)]
validate: Print error message details in our reports
Thibault Saunier [Tue, 26 Mar 2019 18:18:27 +0000 (15:18 -0300)]
validate:launcher: Dump applied known issues in the logs
Thibault Saunier [Tue, 26 Mar 2019 17:09:54 +0000 (14:09 -0300)]
validate:launcher: Put all logs inside the failure node
Pleasing gitlab CI reporting system
Thibault Saunier [Tue, 26 Mar 2019 15:19:16 +0000 (12:19 -0300)]
validate:launcher: By default use cpu_count / 2
Thibault Saunier [Tue, 26 Mar 2019 13:49:26 +0000 (10:49 -0300)]
validate:launcher: Print name of the test to be debugged
When --debug was passed
Thibault Saunier [Tue, 26 Mar 2019 13:47:12 +0000 (10:47 -0300)]
validate:pad-monitor: Accept any return value when we aggregated FLUSHING while tearing down
Basically nothing guarantees that the set of pads we aggregated the flow
for is the same as the one that was aggregated during the actual data
flow as some pads could have been removed meanwhile.