Task #5787 (closed)
Opened 8 years ago
Closed 8 years ago
Bug: error on closing tmp file
| Reported by: | jamoore | Owned by: | |
|---|---|---|---|
| Priority: | minor | Milestone: | OMERO-Beta4.3 |
| Component: | Services | Version: | n.a. |
| Keywords: | n.a. | Cc: | cxallan, cblackburn |
| Resources: | n.a. | Referenced By: | n.a. |
| References: | n.a. | Remaining Time: | 0.0d |
| Sprint: | n.a. |
Description
11-06-06 11:10:58,548 INFO [ ome.io.nio.PixelsService] (3-thread-1) SUCCESS -- Pyramid created for pixels id:6034 2011-06-06 11:10:58,548 INFO [e.io.bioformats.OmeroPixelsPyramidWriter] (3-thread-1) close(/OMERO/Pixels/Dir-006/.6034_pyramid8316746933125247720.tmp) 2011-06-06 11:10:58,550 ERROR [ ome.io.nio.PixelsService] (3-thread-1) Error closing pixel pyramid. java.io.FileNotFoundException: Source '/OMERO/Pixels/Dir-006/.6034_pyramid8316746933125247720.tmp' does not exist
Chris mentioned Colin might have seen such a race condition before. Any information would be useful. (Cause of #5786)
Change History (3)
comment:1 Changed 8 years ago by cblackburn
comment:2 Changed 8 years ago by jmoore
In discussions with Chris, it looks like the cause here is the closeWriter was throwing an exception because the BfPyramidPixelBuffer had been created in a write context despite the fact that the pyramid already existed. Further, when it through the exception, the lock was not released. closeWriter should always release the lock, and the "write" flag should only be respected if the pyramid file does not yet exist.
comment:3 Changed 8 years ago by jmoore <josh@…>
- Remaining Time set to 0
- Resolution set to fixed
- Status changed from new to closed
(In [59afeac0142ea9204c44eed9ec2f8a170599d32f/ome.git] on branch develop) Fix ByPramidPixelBuffer ctor and closeWriter (Fix #5787)
I've not seen this race condition, what I saw was a problem viewing jp2 files.
Scenario:
Looking at the Pixels directory afterwards there was a lock and tmp files corresponding to the imported image.