Replies: 1 comment
-
I think someone has reported something like this before although I can't find the issue readily. A concurrency bug would be my first suspicion as well, but I've reviewed the code in JPEG2000KakaduImageReader and I don't see anything obvious. Maybe someone can check my work on that. Another possibility is a bug in Kakadu. It would be possible to initialize the decoding environment differently, i.e. not using a Kdu_thread_env and therefore not utilizing Kakadu's multi-threaded decoding abilities, and seeing if that would be an effective workaround. A further fallback could involve utilizing Kdu_stripe_decompressor instead of Kdu_region_decompressor, as the former is I think more widely used and maybe less buggy as a result. It might be useful to write a test that has JP2KIR processing a bunch of images in a bunch of threads and hope that it crashes, in order to produce some evidence to take to Kakadu support. |
Beta Was this translation helpful? Give feedback.
-
I realize this is probably more of a Kakadu question than a Cantaloupe question but there isn't much in the way of support for Kakadu so I'm taking a chance that someone here might have seen this before.
We are using Cantaloupe in a multitenant SaaS architecture with Kakadu handling image processing. We are seeing multiple errors a day where Kakadu throws a SIGSEGV fault. I have tried everything I can think of but I can't reproduce it on demand. It doesn't seem linked to a specific image; I can download the image and reupload it to a testing environment and it works fine. My guess is it's load related or threading related.
Judging by the stack trace, it looks like it's coming from JPEG2000KakaduImageReader.readRegion:
Has anyone seen this before?
Beta Was this translation helpful? Give feedback.
All reactions