ilastik/volumina

"next time frame" shortcut deregistering bug in 1.2.2rc4 on windows

chaubold opened this issue · 4 comments

At the workshop yesterday I've seen an error message pop up on windows that should've been fixed by 0ec32fe.

@FynnBe: could you please check the latest binary whether ilastik/ilastik#1527 also pops up for you, and if it does, is there a way to see the git history of volumina in the windows binary? Alternatively you could see whether the changes of the commit are present in the code. The reason I'm asking is that I'm wondering whether @ukoethe might accidentally not have updated all of ilastik-meta's submodules for the latest binary.
Thanks!

I have not been able to reproduce it so far (only tried the denk_raw.h5 data though), but I encountered a different error for these axis transformations:
tzyxc (1, 200, 402, 202, 1)
-> xtzyc
-> xytzc
-> ctzyx

but not for:
-> ztyxc
-> ztxyc
-> czyxt
-> txyzc (is this the case you were expecting an error?)

ERROR 2017-06-22 11:20:26,073 excepthooks 9468 13024 Unhandled exception in thread: 'Worker #3'
ERROR 2017-06-22 11:20:26,075 excepthooks 9468 13024 Traceback (most recent call last):
  File "C:\Program Files\ilastik\ilastik-meta\volumina\volumina\tiling.py", line 768, in _fetch_tile_layer
    img = ims_req.wait()
  File "C:\Program Files\ilastik\ilastik-meta\volumina\volumina\pixelpipeline\imagesources.py", line 158, in wait
    return self.toImage()
  File "C:\Program Files\ilastik\ilastik-meta\volumina\volumina\pixelpipeline\imagesources.py", line 164, in toImage
    self._arrayreq.wait()
  File "C:\Program Files\ilastik\ilastik-meta\volumina\volumina\pixelpipeline\slicesources.py", line 43, in wait
    return self._sp(self._ar.wait())
  File "C:\Program Files\ilastik\ilastik-meta\volumina\volumina\pixelpipeline\datasources.py", line 464, in wait
    rawData = self._rawRequest.wait()
  File "C:\Program Files\ilastik\ilastik-meta\volumina\volumina\pixelpipeline\datasources.py", line 201, in wrapper
    return func(*args, **kwargs)
  File "C:\Program Files\ilastik\ilastik-meta\volumina\volumina\pixelpipeline\datasources.py", line 225, in wait
    a = self._req.wait()
  File "C:\Program Files\ilastik\ilastik-meta\lazyflow\lazyflow\request\request.py", line 487, in wait
    return self._wait(timeout)
  File "C:\Program Files\ilastik\ilastik-meta\lazyflow\lazyflow\request\request.py", line 513, in _wait
    self._wait_within_request( current_request )
  File "C:\Program Files\ilastik\ilastik-meta\lazyflow\lazyflow\request\request.py", line 312, in _execute
    self._result = self.fn()
  File "C:\Program Files\ilastik\ilastik-meta\lazyflow\lazyflow\slot.py", line 861, in __call__
    destination = self.slot.stype.allocateDestination(self.roi)
  File "C:\Program Files\ilastik\ilastik-meta\lazyflow\lazyflow\stype.py", line 109, in allocateDestination
    storage = numpy.ndarray(shape, dtype=self.slot.meta.dtype)
ValueError: negative dimensions are not allowed

Oh sorry I guess I should've been more specific about the error: it is supposed to show up only if you open some data that is not 5D and thus never had a time dimension. Could you try with a 2D image please?

And for the problem you are seeing: I noticed that as well during our bug fixing day and solved it by presenting an error to the user if x or y are 1 (see ilastik/ilastik#1528). That fix was unfortunately only merged after we created the 1.2.2rc4 binary.

So, the fix from ilastik/ilastik#1527 is in, my assumption about a missing submodule update is wrong. Unfortunately that means, there is some other way we can run into a situation where we try to unregister a non-existing shortcut. I'll try to reproduce it.