Bug 1700062 - iowatcher cannot generate videos due to missing rsvg-convert
Summary: iowatcher cannot generate videos due to missing rsvg-convert
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: blktrace
Version: 28
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Eric Sandeen
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 1700065 1719942
TreeView+ depends on / blocked
 
Reported: 2019-04-15 17:46 UTC by Bryan Gurney
Modified: 2019-06-12 19:12 UTC (History)
2 users (show)

Fixed In Version:
Clone Of:
: 1700065 (view as bug list)
Environment:
Last Closed: 2019-05-02 17:57:26 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Bryan Gurney 2019-04-15 17:46:58 UTC
Description of problem:
After installing iowatcher on a Fedora 28 virtual machine (XFCE spin), it's not possible to create an I/O trace movie via the "--movie" option.

The command fails with "xargs: rsvg-convert: No such file or directory", and then cleans up a temporary movie directory.

Version-Release number of selected component (if applicable):
iowatcher-1.2.0-6.fc28.x86_64

How reproducible:
Always

Steps to Reproduce:
1. dnf install iowatcher
2. Use blktrace to trace for activity on a test block device.  Using the example test device "/dev/test1":
2a. In one terminal, as root, execute "blktrace -d /dev/test1".  This command will continue to run, leaving a newline after the prompt.  (The trace can be stopped later via Ctrl+C.)
2b. Perform I/O on the test device "/dev/test1".  (This could be reads or writes via dd, test I/O performed by the "fio" program, or 
2c. Stop the trace that was started in 2a via "Ctrl+C".
3. Using the trace files from step 2, execute the following command:
"iowatcher -t test1.blktrace.0 -o outfile.ogg --movie=rect"

NOTES on blktrace:
- There may be multiple trace files created, depending on the number of CPUs on the system.  Pointing to the "blktrace.0" file will allow iowatcher to find the other files in the directory.
- Larger blktrace runs can result in larger disk space requirements for the iowatcher movie output, and high levels of CPU usage.  A movie render usually takes several minutes for a blktrace file set of about 1 GiB.

Actual results:
$ iowatcher -t dm-3.blktrace.0 -o outfile.ogg --movie=rect

(stdout/stderr:)
Using movie style: rect
Converting svg files in io-movie-RQSmoO
xargs: rsvg-convert: No such file or directory
Creating movie io-movie-RQSmoO with png2theora
no input files found; run with -h for help.
Removing movie dir io-movie-RQSmoO


Expected results:
Executing "$ iowatcher -t dm-3.blktrace.0 -o outfile.ogg --movie=rect" results in a series of PNG files generated by rsvg-convert, then 

Additional info:
The package "librsvg2-tools" installs the program "/usr/bin/rsvg-convert", which resolves the dependency failure.  (The version I installed is librsvg2-tools-2.42.7-2.fc28.x86_64.)

Comment 1 Eric Sandeen 2019-04-15 18:59:16 UTC
So, simply adding:

Requires: librsvg2-tools

should be sufficient to resolve this for Fedora?

Comment 2 Bryan Gurney 2019-04-15 19:04:07 UTC
Yes, I believe so.

After I saw the error, I ran "dnf whatprovides rsvg-convert", it returned "librsvg2-tools", and after installing it, "iowatcher ... --movie" successfully generated an OGG movie.

Comment 3 Eric Sandeen 2019-05-02 17:57:26 UTC
I've fixed this in rawhide.  If you need it pushed back to f28, please let me know.


Note You need to log in before you can comment on or make changes to this bug.