One of the most common types of questions we've gotten on CoralNet has been: "What's going on with the classifier training in my source?"

Despite being the server admin, even I've often had trouble answering this question. I've usually had to dig around the database and server logs, sometimes I needed to add a little bit of guesswork, and sometimes I just couldn't give a complete answer. There wasn't enough well-structured bookkeeping about the processes running in CoralNet's vision backend, or in our infrastructure in general.

I've been working on that problem on-and-off during the past year or so, and it's time to put those efforts to the test:

A "job" in our parlance is a process or unit-of-work that's running in the background.

Each source now has a jobs dashboard like this, reachable through the blue "Jobs" button at the top right, and viewable to members with Edit or Admin permissions.

This gives information about not just training in your source, but also image classification and feature extraction (an image pre-processing step required before training or classification).

Also, the top line shows a summary of your source's status; it will either say what kinds of jobs are queueing or running, or it will say why there are no more jobs to run yet. This status is based on the result of the latest "Check source" job. If you're interested in previous source checks (or pending / in-progress source checks), you can use the provided checkbox to show those jobs in the table, too. These jobs are not in the table by default because, in many cases, the table may be cluttered with a lot of very similar source-check results.

Additionally, on the CoralNet admin side, we now have a site-wide dashboard to keep tabs on job statuses across CoralNet. This should make it easier to diagnose and detect many types of site issues. As we see how the jobs system performs on the live website, we'll certainly find things to tweak in the job queueing/timing logic, error handling logic, and details presented on the dashboards.

So we'll keep an eye out, and hopefully we'll steadily improve the jobs system. As the system gets more robust, it should also get easier to implement new controls related to jobs, such as the ability to request training on-demand!

Other points of note:

  • The 'Edit Metadata' page now asks for a search before showing the metadata grid. So if you have a large source with thousands of images, clicking 'Metadata' won't force you to load the metadata grid for all those images up-front; you have the opportunity to specify some filters before loading anything. We still have more improvements in mind for the metadata page, but this is a simple stop-gap measure that should make this page a little more bearable for some folks.

  • We recently had technical issues with our front page's Google Map. I investigated ways to resolve this, and ended up favoring a different map solution: OpenStreetMap tiles displayed with a plugin called Leaflet. The map imagery may look a little more plain now, but the map widget should be just as functional as before, and we'll probably continue to make a few tweaks to it.

  • We're aware that the overall site is still sometimes very slow to respond. This tends to be tricky to resolve because it only happens on-and-off, and often happens due to a combination of factors which can be tricky to pinpoint and replicate. But we'll do our best to keep chipping away at this.

There's still plenty to work on, and more news to come! Until next time.