Comment 4 for bug 1384674

Revision history for this message
Christoph Spiel (cspiel) wrote :

OK -- even at the danger of loosing focus let me
try to explain each your points.

> enblend-4.1.1-3.fc19.i686

        The latest release in the Stable
Branch is 4.1.3. We are already preparing 4.1.4.
OTOH, the Development Branch of course holds
much more goodies.

> The TMPDIR ought also be mentioned in the
> manpage, attaching a patch.

        THX for your patch! We have a pretty
similar one in rev188e286e471d, which I just
back-ported to the Stable Branch. It will show
up in 4.1.4.

> However, looking at the source code I am
> wondering if TMPDIR gets used at all - or is
> it dead code now?

(i) Enblend and Enfuse only refer to the
    environment variable `TMPDIR' if they were
    compiled with the ImageCache feature.
    Otherwise they store everything in core and
    thus don't need a reference to a scratch
    directory.

(ii) The ImageCache feature was withdrawn in
    4.2 because of the spurious problems it
    causes; see, e.g.
        https://bugs.launchpad.net/enblend/+bug/807439
    Moreover, the ImageCache is incompatible
    with OpenMP, our main parallelization
    technology. Therefore, current Development
    Branch does not use `TMPDIR', either.

(iii) The `mmap_view' branch
        http://hg.code.sf.net/p/enblend/code/rev/7a3964af671a
    uses a different "caching scheme" to offload
    image data from core to disk. It needs to
    know where to store the backing-files for
    the images and thus again refers to
    `TMPDIR'.

> In my case I had additional screw up as hugin
> discarded the preset TMPDIR and when setting
> the hugin tmpdir via gui somehow this setting
> has been reset on one occasion.

        This looks more like a Hugin issue to
me, although we can think about adding a
command-line option to set/override `TMPDIR'.

You could easily work around the problem by
wrapping the calls to Enblend and Enfuse in
shell scripts that override `TMPDIR'. I imagine
something like

    #! /bin/dash
    export TMPDIR=/work
    exec /usr/local/bin/enblend "$@"