Discussion:
Disappearing dynamics
Andrew Bernard
2018-11-09 01:46:25 UTC
Permalink
Hi All,

I apologize for the seeming lunacy of this post! I am using lilypond
2.19.82 on Ubuntu 18.10. I am currently engraving a string quarter. Only
seven or eight pages in, I have started added in the dynamics and I find
they just disappear - they don't show. I am simply adding dynamics to the
notes, not in a separate Dynamics context. I am utterly unable to provide
an MWE to support this, as it only happens in the context of my full work,
the complete apparatus of which is very large. I am unable to binary chop
things to see where the error could come from, it's just impractical. The
worst part is that some dynamics show, and they only show after repeated
compile after compile. This latter point is what makes me think there may
be some very subtle memory related bug involved here.

Has anybody heard of this crazy behaviour? There's not a mention of such in
the lilypond user archives.

I cant figure out what to do next, except give up the engraving, which is
slightly sub-optimal.

Any suggestions would be gratefully received.

Andrew
Urs Liska
2018-11-09 05:44:34 UTC
Permalink
Post by Andrew Bernard
Hi All,
I apologize for the seeming lunacy of this post! I am using lilypond
2.19.82 on Ubuntu 18.10. I am currently engraving a string quarter. Only
seven or eight pages in, I have started added in the dynamics and I find
they just disappear - they don't show. I am simply adding dynamics to the
notes, not in a separate Dynamics context. I am utterly unable to provide
an MWE to support this, as it only happens in the context of my full work,
the complete apparatus of which is very large. I am unable to binary chop
things to see where the error could come from, it's just impractical.
But if you are using Gut or another VCS you should be able to identify the first additions that exposed the issue. This *may* give you some pointers.

Best
Urs
Post by Andrew Bernard
The
worst part is that some dynamics show, and they only show after
repeated
compile after compile. This latter point is what makes me think there may
be some very subtle memory related bug involved here.
Has anybody heard of this crazy behaviour? There's not a mention of such in
the lilypond user archives.
I cant figure out what to do next, except give up the engraving, which is
slightly sub-optimal.
Any suggestions would be gratefully received.
Andrew
_______________________________________________
bug-lilypond mailing list
https://lists.gnu.org/mailman/listinfo/bug-lilypond
Andrew Bernard
2018-11-09 06:51:05 UTC
Permalink
Hi Urs,

Thanks for the tip. It just happened with the first dynamic I added on
about page seven. Everything fine until then.

Having worked as a UNIX professional developer for a very long time, I can
tell you something equally lunatic sounding. It has a whiff of being
related to file system buffering, again, crazy as that may sound. I have
the music in one file, and the score/layout in another file. I save the
music file, and then in Frescobaldi switch to the score file and compile.
If I save both files and compile each one enough times the dynamics
eventually appear. This is so bizarre I feel like I am in some sort of
science fiction film. It's almost like the score file has not caught the
write to disk of the music file.

Does this add any light to it? Why is it only dynamics that go missing?
Something is playing tricks on me. :-)

I'll test compiling from the command line to eliminate any Frescobaldi
issues.

Andrew
Post by Urs Liska
But if you are using Gut or another VCS you should be able to identify the
first additions that exposed the issue. This *may* give you some pointers.
Urs Liska
2018-11-09 06:53:11 UTC
Permalink
Post by Andrew Bernard
Hi Urs,
Thanks for the tip. It just happened with the first dynamic I added on
about page seven. Everything fine until then.
Having worked as a UNIX professional developer for a very long time, I can
tell you something equally lunatic sounding. It has a whiff of being
related to file system buffering, again, crazy as that may sound. I have
the music in one file, and the score/layout in another file. I save the
music file, and then in Frescobaldi switch to the score file and compile.
If I save both files and compile each one enough times the dynamics
eventually appear. This is so bizarre I feel like I am in some sort of
science fiction film. It's almost like the score file has not caught the
write to disk of the music file.
Does this add any light to it?
At least not for me ...
Post by Andrew Bernard
Why is it only dynamics that go missing?
Something is playing tricks on me. :-)
I'll test compiling from the command line to eliminate any Frescobaldi
issues.
That was the first thing I was going to suggest. Using verbose output is the other.

Urs
Post by Andrew Bernard
Andrew
Post by Urs Liska
But if you are using Gut or another VCS you should be able to
identify the
Post by Urs Liska
first additions that exposed the issue. This *may* give you some
pointers.
Andrew Bernard
2018-11-09 07:00:08 UTC
Permalink
OK. Using a command line compile there is no sign of this issue.

At least I can continue with the engraving.

This looks not to be a lilypond bug now but an interaction between
Frescobaldi and Ubuntu 18.10.

In which case it looks like I have to abandon Frescobaldi after all these
years. Not good!

I suppose the next test is to try out Frescobaldi with the score on a
different distro. That will take a while. I shall report back in due course.

My guess is that it is Ubuntu 18.10. There's something slightly wobbly
about it in Virtualbox on my machines.

Andrew
Urs Liska
2018-11-09 07:07:17 UTC
Permalink
Post by Andrew Bernard
OK. Using a command line compile there is no sign of this issue.
At least I can continue with the engraving.
This looks not to be a lilypond bug now but an interaction between
Frescobaldi and Ubuntu 18.10.
In which case it looks like I have to abandon Frescobaldi after all these
years. Not good!
I suppose the next test is to try out Frescobaldi with the score on a
different distro. That will take a while. I shall report back in due course.
My guess is that it is Ubuntu 18.10. There's something slightly wobbly
about it in Virtualbox on my machines.
You could try determining the exact command line that Frescobaldi generates.
How you can do that depends on what version of Frescobaldi you use, as I've recently made some changes to the way the engraving jobs are handled.

Urs
Post by Andrew Bernard
Andrew
Andrew Bernard
2018-11-09 14:07:41 UTC
Permalink
Hi Urs,

Installed Debian 9.5 and all. The error, I am sorry to say, is in
Frescobaldi, displayed in Ubuntu 18.10 and Debian 9.5. Using emacs and
command line lilypond works fine on both Linux distros. Using Frescobaldi
3.0.0, the dynamics appear only intermittently, with no apparent pattern.

I am at a complete loss to understand this, and I cannot imagine how to
demonstrate it without giving away my entire library of code and IP. It's
completely inexplicable to me why only dynamics are affected. So far, this
is just a ten page start on a string quartet, so I don't think the system
is stretched to its limits at all.

This behaviour shows up whether using the lilypond default system fonts, or
Linux Biolinum O that I use, or any other font.

What this means is that unless anybody ever sees this that I will have to
give up using Frescobaldi, a great pity.

If anybody has any clue how to debug this it would be great. I do not know
how to get the lilypond command for compiling out of Frescobaldi to examine.

Andrew
Urs Liska
2018-11-09 14:21:27 UTC
Permalink
Post by Andrew Bernard
Hi Urs,
Installed Debian 9.5 and all. The error, I am sorry to say, is in
Frescobaldi, displayed in Ubuntu 18.10 and Debian 9.5. Using emacs and
command line lilypond works fine on both Linux distros. Using
Frescobaldi
3.0.0, the dynamics appear only intermittently, with no apparent pattern.
I am at a complete loss to understand this, and I cannot imagine how to
demonstrate it without giving away my entire library of code and IP. It's
completely inexplicable to me why only dynamics are affected. So far, this
is just a ten page start on a string quartet, so I don't think the system
is stretched to its limits at all.
This behaviour shows up whether using the lilypond default system fonts, or
Linux Biolinum O that I use, or any other font.
What this means is that unless anybody ever sees this that I will have to
give up using Frescobaldi, a great pity.
If anybody has any clue how to debug this it would be great. I do not know
how to get the lilypond command for compiling out of Frescobaldi to examine.
.As said I need to know whether you use Frescobaldi from a release (downloaded or distribution) or from its Git repository.

Depending on that (also the result of frescobaldi -V) I can give you some code to debug the LilyPond invocation.

Urs
Post by Andrew Bernard
Andrew
Graham King
2018-11-12 21:15:29 UTC
Permalink
Post by Andrew Bernard
I do not know
how to get the lilypond command for compiling out of Frescobaldi to examine.
...but you might be able to get it out of the process table by using the Linux command "ps" with a suitable flag (see "man ps" on your distro). This needs to be done while Frescobaldi is executing lilypond, so you might need to run ps in a loop to catch it.

Something like:

while true ; do ps -C lilypond -f ; sleep 1 ; done

might work. Run it, then compile the music in frescobaldi, then interrupt the while-loop using Ctrl-C, and inspect the output.
Urs Liska
2018-11-12 21:25:08 UTC
Permalink
Post by Graham King
Post by Andrew Bernard
I do not know
how to get the lilypond command for compiling out of Frescobaldi to examine.
...but you might be able to get it out of the process table by using the Linux command "ps" with a suitable flag (see "man ps" on your distro). This needs to be done while Frescobaldi is executing lilypond, so you might need to run ps in a loop to catch it.
while true ; do ps -C lilypond -f ; sleep 1 ; done
might work. Run it, then compile the music in frescobaldi, then interrupt the while-loop using Ctrl-C, and inspect the output.
Thank you for the input, but - moving this to private discussion - I
gave him the lines of code to inject into Frescobaldi that print the
generated command line.

Didn't seem to help unfortunately. So far it really seems that LilyPond
behaves inconsistently in this case when run as a subprocess of Frescobaldi.

Urs
Post by Graham King
_______________________________________________
bug-lilypond mailing list
https://lists.gnu.org/mailman/listinfo/bug-lilypond
Kevin Barry
2018-11-12 22:37:01 UTC
Permalink
Post by Urs Liska
Didn't seem to help unfortunately. So far it really seems that LilyPond
behaves inconsistently in this case when run as a subprocess of Frescobaldi.
How bizarre. I wonder what difference there could possibly be that
would make files appear to have different content. Does this issue
occur in Frescobaldi if opening after a successful (i.e. dynamics
appear correctly) compile from the cli and without making any edits?
Does running sync before compilation make any difference? Do dynamics
ever disappear after they have successfully appeared once?
Andrew Bernard
2018-11-12 23:46:57 UTC
Permalink
Hi k\Kevin and All,

It ranks as one of the most bizarre bugs I have ever seen (and I speak as a
software developer of many decades). It's only with Frescobaldi. Command
line compilation is fine. It's only dynamic markings, which is puzzling -
whatever is going on? Running sync of course I tried, thinking the same as
you. but to no effect. Once the dynamics appear, then they continue to
appear.

A mystery of the cosmos. Perhaps dynamic markings have become shy or
recalcitrant. It's difficult to know how to debug this. Same behaviour in
printing Debian 9.6 and Ubuntu 18.10.

Andrew
Post by Kevin Barry
How bizarre. I wonder what difference there could possibly be that
would make files appear to have different content. Does this issue
occur in Frescobaldi if opening after a successful (i.e. dynamics
appear correctly) compile from the cli and without making any edits?
Does running sync before compilation make any difference? Do dynamics
ever disappear after they have successfully appeared once?
Carl Sorensen
2018-11-13 18:08:15 UTC
Permalink
Have you tried changing the lilypond call in Frescobaldi to a gdb lilypond call, so that you can pause the execution of lilypond and give Frescobaldi time to do whatever it might do -- and then continue lilypond from the debugger?

Have you tried changing the Frescobaldi options for displaying the pdf to get to a minimal Frescobaldi run that doesn't do much but generate the pdf?

This sounds like a truly bizarre bug.

Carl

On 11/12/18, 4:46 PM, "Andrew Bernard" <***@gmail.com> wrote:

Hi k\Kevin and All,

It ranks as one of the most bizarre bugs I have ever seen (and I speak as a
software developer of many decades). It's only with Frescobaldi. Command
line compilation is fine. It's only dynamic markings, which is puzzling -
whatever is going on? Running sync of course I tried, thinking the same as
you. but to no effect. Once the dynamics appear, then they continue to
appear.

A mystery of the cosmos. Perhaps dynamic markings have become shy or
recalcitrant. It's difficult to know how to debug this. Same behaviour in
printing Debian 9.6 and Ubuntu 18.10.

Andrew
Post by Kevin Barry
How bizarre. I wonder what difference there could possibly be that
would make files appear to have different content. Does this issue
occur in Frescobaldi if opening after a successful (i.e. dynamics
appear correctly) compile from the cli and without making any edits?
Does running sync before compilation make any difference? Do dynamics
ever disappear after they have successfully appeared once?
Andrew Bernard
2018-11-14 00:21:22 UTC
Permalink
Hi Carl,

Have not tried that idea.

The weird thing is that it's only dynamics that are affected. I thought it
might be some subtle font caching issue with the font I use, but I reverted
to lilypond default and the same occurs. Once the dynamic finally makes
itself visible, it stays.

This may remain forever an unsolved mystery. But it makes Frescobaldi
currently unusable for me, espcially as I am in the 'add dynamics' phase
that I do. I have several decades of UNIX software development experience,
and I have never seen anything resembling this. I promise I am not making
it up!

Andrew
Post by Carl Sorensen
Have you tried changing the lilypond call in Frescobaldi to a gdb lilypond
call, so that you can pause the execution of lilypond and give Frescobaldi
time to do whatever it might do -- and then continue lilypond from the
debugger?
Have you tried changing the Frescobaldi options for displaying the pdf to
get to a minimal Frescobaldi run that doesn't do much but generate the pdf?
This sounds like a truly bizarre bug.
Continue reading on narkive:
Loading...