Item thumbnails not displaying

Hi all,

I recently setup Omega Classic on my website and the install went seemingly smoothly, however, when I add a new item with an image unfortunately it will not display thumbnails. I do not see a thumbnail preview in the Dashboard or on the live site.

I have checked a few obvious things but am slightly stumped. Path to ImageMagick looks good and the test through the Dashboard UI returns a correct path.

Any help and troubleshooting very greatly appreciated!

Craig

Edit 1: checked hosting provider/server and it is running ImageMagick version 6.3.3.

Edit 2: Trying to run Derivative Images plugin causes a generic error.

When you say “generic error” do you mean the “Omeka has encountered an error” page? If so, please turn on complex error messages

Hi mebrett, thank you for your reply! Yes it was a generic error when using the derivative plugin. If I turn the plugin off and simply add an item, which results in no thumbnails, I get the following error in log:

2020-01-29T08:45:07-05:00 WARN (4): Error output from ImageMagick:

libgomp: Thread creation failed: Resource temporarily unavailable

2020-01-29T08:45:07-05:00 ERR (3): ImageMagick failed with status code 1.

Is this something to do with my hosting not having ImageMagick setup sufficiently, or perhaps something I can fix my end?

That’s the relevant error, there’s some issue with the ImageMagick install on this server, so you probably need to check with your host. This is probably a situation where your host has limited the resources available to your site… ImageMagick might need to be configured to, for example, not try to use multiple threads.

Thank you, here’s what my host had to say:

We have ImageMagick binaries, but it is not complied to PHP so IMAGICK will not work. So, you will not be able to use IMAGICK as PHP built-in class. You will have to use the alternative ‘convert’ utility:

location=’/usr/local/bin/convert’;
$command=’-thumbnail 150′;
$name=’Sunset.’;
$extfrm=’jpg’;
$extto=’png’;
$output=”{$name}{$extto}”;
$convert=$location . ‘ ‘ .$command . ‘ ‘ . $name . $extfrm . ‘ ‘ . $name . $extto;
exec ($convert);
print “<img src=” . $output . “>”;

I am out of my depth and not sure where I would add this. Am I now out of luck with my current host or is there somewhere to apply the above that will make Omeka work as intended?

I’m pretty sure that response isn’t really relevant… from your description of filling in the path to ImageMagick (/usr/local/bin I assume) and hitting the “Test” button, you’re already using the “convert” utility the host is talking about.

Try this, edit your omeka .htaccess file and add the following line at the very top:

SetEnv MAGICK_THREAD_LIMIT 1

That may resolve this problem.

Yes, it’s /usr/local/bin and returns “The ImageMagick directory path works.”

Just tried adding that to the .htaccess file and it hasn’t helped unfortunately.

If I try to run Derivate Images plugin, the logged error produced is:

2020-01-29T17:54:49+00:00 ERR (3): exception ‘RuntimeException’ with message ‘The configured PHP path () is invalid.’ in /hermes/bosnaweb19a/b699/glo.chizzle/wsa150/application/libraries/Omeka/Job/Process/Dispatcher.php:114
Stack trace:
#0 /hermes/bosnaweb19a/b699/glo.chizzle/wsa150/application/libraries/Omeka/Job/Process/Dispatcher.php(93): Omeka_Job_Process_Dispatcher::_checkCliPath(’’)
#1 /hermes/bosnaweb19a/b699/glo.chizzle/wsa150/application/libraries/Omeka/Job/Process/Dispatcher.php(28): Omeka_Job_Process_Dispatcher::getPHPCliPath()
#2 /hermes/bosnaweb19a/b699/glo.chizzle/wsa150/application/libraries/Omeka/Job/Dispatcher/Adapter/BackgroundProcess.php(31): Omeka_Job_Process_Dispatcher::startProcess(‘Omeka_Job_Proce…’, Object(User), Array)
#3 /hermes/bosnaweb19a/b699/glo.chizzle/wsa150/application/libraries/Omeka/Job/Dispatcher/Default.php(151): Omeka_Job_Dispatcher_Adapter_BackgroundProcess->send(’{“className”:"D…’, Array)
#4 /hermes/bosnaweb19a/b699/glo.chizzle/wsa150/plugins/DerivativeImages/controllers/IndexController.php(23): Omeka_Job_Dispatcher_Default->sendLongRunning(‘DerivativeImage…’, Array)
#5 /hermes/bosnaweb19a/b699/glo.chizzle/wsa150/application/libraries/Zend/Controller/Action.php(516): DerivativeImages_IndexController->indexAction()
#6 /hermes/bosnaweb19a/b699/glo.chizzle/wsa150/application/libraries/Zend/Controller/Dispatcher/Standard.php(308): Zend_Controller_Action->dispatch(‘indexAction’)
#7 /hermes/bosnaweb19a/b699/glo.chizzle/wsa150/application/libraries/Zend/Controller/Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http))
#8 /hermes/bosnaweb19a/b699/glo.chizzle/wsa150/application/libraries/Zend/Application/Bootstrap/Bootstrap.php(105): Zend_Controller_Front->dispatch()
#9 /hermes/bosnaweb19a/b699/glo.chizzle/wsa150/application/libraries/Zend/Application.php(384): Zend_Application_Bootstrap_Bootstrap->run()
#10 /hermes/bosnaweb19a/b699/glo.chizzle/wsa150/application/libraries/Omeka/Application.php(73): Zend_Application->run()
#11 /hermes/bosnaweb19a/b699/glo.chizzle/wsa150/admin/index.php(28): Omeka_Application->run()
#12 {main}

I don’t suppose this helps narrow the issue down at all, does it?

Your problem with the Derivative Images plugin isn’t related. There, the issue is just that you don’t have your site set up to run background jobs.

Anyway, I wouldn’t really worry about that at this point: Derivative Images is for replacing all the thumbnails you have with new ones… if you can’t make thumbnails in the first place, Derivative Images isn’t going to help you at all.

Your options are pretty much to work with your host on working around their restrictions (the “thread limit” I suggested was a response to the error message you posted, which was about an issue with ImageMagick making threads: perhaps they have another option for limiting that, or can lift or ease the restriction), or finding a new host.

Thank you for all the help! I tried updating the config to path directly to PhP but it produced the same error. I’ll look into one of your recommended hosts who offer one-click install, I think!

Thank you again.