Cell Profiler on cluster: batch processing problems


#1

Hi,
We have installed cellprofiler the cluster and it seems to run ok.
The problem appears to be that I am unable to make proper Batch_data.mat file.

The error I get is this:
CellProfiler-2.0_64/CellProfiler/cellprofiler/pipeline.py",
line 866, in load struct_as_record=True)
File “CellProfiler-2.0_64/lib/python2.7/site-packages/scipy/io/matlab/mio.py”,
line 175, in loadmat
matfile_dict = MR.get_variables(variable_names)
File “CellProfiler-2.0_64/lib/python2.7/site-packages/scipy/io/matlab/mio5.py”,
line 292, in get_variables res = self.read_var_array(hdr, process)

I have been following the instructions given here:
cellprofiler.org/CPmanual/He … ssing.html

Here is what I have done:

  1. I have a windows computer running CP, and a processing module that reads images from c://cp/project1/plate1/images

  2. I created a folder /home/me/cp/project1/plate1/images on the cluster and copied all the files there.

  3. I created an output folder: /home/me/cp/project1/plate1/output

  4. At the end of the pipeline I added CreateBatchFile module. In this I have done the following:
    a) I checked "Store batch files in default output folder"
    b) unchecked "are the cluster computers running windows"
    c) “Local root path”: "E:"
    d) “Cluster root path”: /home/me/cp/project1/

  5. I ran “Analyze images”

  6. I get "Encountered error while processing. Do you want to stop processing?"
    Error while processing CreateBatchFiles:
    [Errno 22] Invalid argument
    Traceback (most recent call last):
    File “cellprofiler\pipeline.pyc”, line 1238, in prepare_run

    File “scipy\io\matlab\mio5.pyc”, line 539, in write_bytes
    IOError

However, a non-zero byte Batch_data.mat was produced, so I proceeded it with it just for the heck of it.
I copied the Batch_data.mat file to /home/me/cp/project1/plate1/output
I typed in the cluster:

python CellProfiler.py -p /home/me/cp/project1/plate1/output/Batch_data.mat -c -r -b -f 1 -l 10

and I get the error on the very top of this post (not suprisingly a curropt file). Note, I ran this
to show that CellProfiler.py itself is running OK, but there appears to be a problem with the file

I would be grateful if someone can tell me how to get this going on the cluster.

Thanks
L


#2

OK, so I tried a solution without the mat file:

python CellProfiler.py --do-not-build --do-not-fetch --run-headless --run
–image-directory="$INPUTDIR" --output-directory="$OUTPUTDIR"
–pipeline="$PIPELINE"

and the program runs. However, I get the following message regarding legacy support

Version: 2013-10-24T18:16:52 f6e3a5a / 20131024181652
Pipeline saved with CellProfiler version 11710
WARN: Ignoring non-Maven build directory: CellProfiler-2.0_64/CellProfiler/plugins
[INFO] Found 299 plugins.
[INFO] Created service: imagej.plugin.DefaultPluginService
[INFO] Created service: imagej.module.DefaultModuleService
[INFO] Created service: imagej.command.DefaultCommandService
[INFO] Created service: imagej.event.DefaultStatusService
[INFO] Created service: imagej.object.DefaultObjectService
[INFO] Created service: imagej.data.DefaultDatasetService
[INFO] Created service: imagej.io.DefaultIOService
[INFO] Created service: imagej.display.DefaultDisplayService
[INFO] Created service: imagej.console.DefaultConsoleService
[INFO] Created service: imagej.tool.DefaultToolService
[INFO] Created service: imagej.menu.DefaultMenuService
[INFO] Configuring platform: imagej.platform.DefaultPlatform
[INFO] Created service: imagej.platform.DefaultPlatformService
[INFO] Created service: imagej.event.DefaultEventHistory
[INFO] Created service: imagej.widget.DefaultWidgetService
[INFO] Created service: imagej.script.DefaultScriptService
[INFO] Created service: imagej.options.DefaultOptionsService
[INFO] Created service: imagej.io.DefaultRecentFileService
[INFO] Created service: imagej.data.measure.DefaultMeasurementService
[INFO] Created service: imagej.data.display.DefaultImageDisplayService
[INFO] Created service: imagej.ui.common.awt.AWTRenderingService
[INFO] Created service: imagej.data.display.DefaultOverlayService
[INFO] Created service: imagej.data.display.DefaultWindowService
[INFO] Created service: imagej.data.display.DefaultMouseService
[INFO] Created service: imagej.data.sampler.DefaultSamplerService
[INFO] Created service: imagej.data.measure.DefaultStatisticsService
[INFO] Created service: imagej.data.display.DefaultKeyboardService
[INFO] Discovered user interface: imagej.ui.swing.sdi.SwingUI
[INFO] Discovered user interface: imagej.ui.swing.mdi.SwingMdiUI
[INFO] Created service: imagej.ui.DefaultUIService
[INFO] Found 3 upload mechanisms.
[INFO] Created service: imagej.updater.core.DefaultUploaderService
[INFO] Created service: imagej.core.commands.restructure.SplitChannelsContextMonitor
[INFO] Created service: imagej.core.commands.typechange.TypeChangeService
[INFO] Created service: imagej.core.commands.axispos.AnimationService
[ERROR] Invalid service: imagej.legacy.DefaultLegacyService
[ERROR] java.lang.IllegalStateException: Legacy support not available in headless mode.
at imagej.legacy.DefaultLegacyService.(DefaultLegacyService.java:140)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
at java.lang.Class.newInstance0(Class.java:374)
at java.lang.Class.newInstance(Class.java:327)
at imagej.service.ServiceHelper.createService(ServiceHelper.java:182)
at imagej.service.ServiceHelper.createExactService(ServiceHelper.java:158)
at imagej.service.ServiceHelper.loadService(ServiceHelper.java:140)
at imagej.service.ServiceHelper.loadServices(ServiceHelper.java:115)
at imagej.ImageJ.(ImageJ.java:235)
at imagej.ImageJ.(ImageJ.java:171)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
at org.mozilla.javascript.MemberBox.newInstance(MemberBox.java:159)
at org.mozilla.javascript.NativeJavaClass.constructInternal(NativeJavaClass.java:266)
at org.mozilla.javascript.NativeJavaClass.constructSpecific(NativeJavaClass.java:205)
at org.mozilla.javascript.NativeJavaClass.construct(NativeJavaClass.java:166)
at org.mozilla.javascript.ScriptRuntime.newObject(ScriptRuntime.java:2349)
at org.mozilla.javascript.gen._java_python_bridge__1._c_anonymous_1(:2)
at org.mozilla.javascript.gen._java_python_bridge__1.call()
at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:394)
at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3091)
at org.mozilla.javascript.gen._java_python_bridge__1.call()
at org.mozilla.javascript.Context$1.run(Context.java:478)
at org.mozilla.javascript.Context.call(Context.java:489)
at org.mozilla.javascript.Context.call(Context.java:476)
at org.mozilla.javascript.JavaAdapter.callMethod(JavaAdapter.java:573)
at adapter1.call()
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
[INFO] Created service: imagej.ui.swing.SwingIconService
[INFO] Found 8 JHotDraw adapters.
[INFO] Created service: imagej.ui.swing.overlay.JHotDrawService
[INFO] Created service: imagej.ui.common.awt.AWTScreenCaptureService
[INFO] Created service: imagej.render.DummyRenderingService
[INFO] Created service: imagej.data.display.DummyScreenCaptureService
stopping worker thread 0
stopping worker thread 1
stopping worker thread 2
stopping worker thread 3
stopping worker thread 4
stopping worker thread 5
stopping worker thread 6
stopping worker thread 7
stopping worker thread 8
stopping worker thread 9
stopping worker thread 10
stopping worker thread 11
stopping worker thread 12
stopping worker thread 13
stopping worker thread 14
stopping worker thread 15
stopping worker thread 16
stopping worker thread 17
stopping worker thread 18
stopping worker thread 19
stopping worker thread 20
stopping worker thread 21
stopping worker thread 22
stopping worker thread 23
stopping worker thread 24
Exiting the JVM monitor thread


#3

My first-blush thought is whether you’ve tried opening the old, version 11710 pipeline in the new 20131024181652 CP interface, then tried File > Export > Pipeline… to save it in the new, upgraded version, and then try it headless again. There are some legacy conversions that require user intervention and in headless mode, you don’t have that opportunity. So it may easier to update the pipeline altogether.

Regards,
-Mark


#4

Hi Mark,
Thank you for your help. I opened the pipeline in the new version; I got the Legacy warning and I was provided with 2 options. I chose option (1) which converts the pipeline to use the new input modules and I provided the folder where the images are located. The image file names are not shown in the “File list” (even though the image folder is specified correctly and contains the images). I click on the “Start Test Mode” anyways and I get a popup saying

"The pipeline cannot be started because of a configuration problem: The pipeline did not identify any image sets. Please correct problems in your input module settings and try again".

This is the error I get in my stderr:

Failed to prepare run for module NamesAndTypes
Traceback (most recent call last):
  File "/CellProfiler-2.0_64/CellProfiler/cellprofiler/pipeline.py", line 1983, in prepare_run
    if ((not module.prepare_run(workspace)) or
  File "/CellProfiler-2.0_64/CellProfiler/cellprofiler/modules/namesandtypes.py", line 383, in prepare_run
    ipd_columns = self.java_make_image_sets(workspace)
  File "/CellProfiler-2.0_64/CellProfiler/cellprofiler/modules/namesandtypes.py", line 581, in java_make_image_sets
    indexes = env.make_int_array(np.array(-1] * len(channels), int))
  File "javabridge.pyx", line 1470, in javabridge.JB_Env.make_int_array (javabridge.c:14779)
ValueError: Buffer dtype mismatch, expected 'numpy.int32_t' but got 'long'
Previously displayed uncaught exception:
Traceback (most recent call last):
  File "/CellProfiler-2.0_64/CellProfiler/cellprofiler/pipeline.py", line 1983, in prepare_run
    if ((not module.prepare_run(workspace)) or
  File "/CellProfiler-2.0_64/CellProfiler/cellprofiler/modules/namesandtypes.py", line 383, in prepare_run
    ipd_columns = self.java_make_image_sets(workspace)
  File "/CellProfiler-2.0_64/CellProfiler/cellprofiler/modules/namesandtypes.py", line 581, in java_make_image_sets
    indexes = env.make_int_array(np.array(-1] * len(channels), int))
  File "javabridge.pyx", line 1470, in javabridge.JB_Env.make_int_array (javabridge.c:14779)
ValueError: Buffer dtype mismatch, expected 'numpy.int32_t' but got 'long'

So I try to correct the input module setting. I am unable to find a plate to specify the folder or to check the existing folder. I am not sure if this is a bug in the software.
I also see bunch of h5py errors in stderr when I double click on the “File list” panel

    return self.top_group[object_name].keys()
  File "/CellProfiler-2.0_64/lib/python2.7/site-packages/h5py-1.3.1-py2.7-linux-x86_64.egg/h5py/highlevel.py", line 390, in __getitem__
    return self._get18(name)
  File "/CellProfiler-2.0_64/lib/python2.7/site-packages/h5py-1.3.1-py2.7-linux-x86_64.egg/h5py/highlevel.py", line 351, in _get18
    objinfo = h5o.get_info(self.id, name, lapl=self._lapl)
  File "h5o_body.pyx", line 165, in h5py.h5o.get_info (h5py/h5o.c:2228)
KeyError: "Name doesn't exist (Symbol table: Object not found)"
Previously displayed uncaught exception:
Traceback (most recent call last):
  File "/CellProfiler-2.0_64/CellProfiler/cellprofiler/pipeline.py", line 1983, in prepare_run
    if ((not module.prepare_run(workspace)) or
  File "/CellProfiler-2.0_64/CellProfiler/cellprofiler/modules/groups.py", line 399, in prepare_run
    result = self.get_groupings(workspace)
  File "/CellProfiler-2.0_64/CellProfiler/cellprofiler/modules/groups.py", line 355, in get_groupings
    if key not in m.get_feature_names(cpmeas.IMAGE):
  File "/CellProfiler-2.0_64/CellProfiler/cellprofiler/measurements.py", line 801, in get_feature_names
    return [name for name in self.hdf5_dict.second_level_names(object_name) if name not in ('ImageNumber', 'ObjectNumber')]
  File "/CellProfiler-2.0_64/CellProfiler/cellprofiler/utilities/hdf5_dict.py", line 617, in second_level_names
    return self.top_group[object_name].keys()
  File "/CellProfiler-2.0_64/lib/python2.7/site-packages/h5py-1.3.1-py2.7-linux-x86_64.egg/h5py/highlevel.py", line 390, in __getitem__
    return self._get18(name)
  File "/CellProfiler-2.0_64/lib/python2.7/site-packages/h5py-1.3.1-py2.7-linux-x86_64.egg/h5py/highlevel.py", line 351, in _get18

Please help
Thanks
Lee

[quote=“mbray”]

My first-blush thought is whether you’ve tried opening the old, version 11710 pipeline in the new 20131024181652 CP interface, then tried File > Export > Pipeline… to save it in the new, upgraded version, and then try it headless again. There are some legacy conversions that require user intervention and in headless mode, you don’t have that opportunity. So it may easier to update the pipeline altogether.

Regards,
-Mark[/quote]


#5

When converting the legacy pipeline, the Default Input folder references (if any) are changed in the pipeline to the folder you specify but the files therein are not automatically loaded into the Images module. The conversion dialog makes a brief mention that you still have to drag/drop them yourself. Give that a try and see if that helps.

Regards,
-Mark


#6

Hi Mark,
It the GUI is running on the cluster and I am not able to drag and drop images.
To remove the complication of not knowing my way around the 2.1 version, I installed the 2.0 (bug fix version) on the cluster.
Now
Cell profiler runs but has a problem with the SaveImages stage.

Version: 2013-11-04T16:10:59 5982f5e / 20131104161059
Pipeline saved with CellProfiler version 20131104161059
Times reported are CPU times for each module, not wall-clock time
1 [Thread-0] WARN loci.formats.in.BaseTiffReader  - unknown creation date format: 2013-10-20T11:55:43.521Z
308 [Thread-0] WARN loci.formats.in.BaseTiffReader  - unknown creation date format: 2013-10-20T11:55:45.224Z
Mon Nov  4 14:21:34 2013: Image # 51, module LoadImages # 1: 2.95 sec
559 [Thread-0] WARN loci.formats.in.BaseTiffReader  - unknown creation date format: 2013-10-20T11:55:43.521Z
Mon Nov  4 14:21:36 2013: Image # 51, module IdentifyPrimaryObjects # 2: 5.37 sec
8078 [Thread-0] WARN loci.formats.in.BaseTiffReader  - unknown creation date format: 2013-10-20T11:55:45.224Z
Mon Nov  4 14:21:43 2013: Image # 51, module Crop # 3: 0.54 sec
Mon Nov  4 14:21:43 2013: Image # 51, module IdentifyPrimaryObjects # 4: 2.64 sec
Mon Nov  4 14:21:46 2013: Image # 51, module MeasureObjectSizeShape # 5: 0.08 sec
Mon Nov  4 14:21:46 2013: Image # 51, module FilterObjects # 6: 0.10 sec
Mon Nov  4 14:21:46 2013: Image # 51, module RelateObjects # 7: 0.05 sec
Mon Nov  4 14:21:46 2013: Image # 51, module MeasureObjectIntensity # 8: 0.22 sec
Mon Nov  4 14:21:47 2013: Image # 51, module MeasureObjectIntensity # 9: 0.34 sec
Mon Nov  4 14:21:47 2013: Image # 51, module MeasureObjectSizeShape # 10: 3.31 sec
Mon Nov  4 14:21:51 2013: Image # 51, module RescaleIntensity # 11: 0.02 sec
Mon Nov  4 14:21:51 2013: Image # 51, module OverlayOutlines # 12: 1.40 sec
Error detected during run of module SaveImages
Traceback (most recent call last):
  File "/CellProfiler-2_0_bugfix/CellProfiler/cellprofiler/pipeline.py", line 1747, in run_with_yield
    module.run(workspace)
  File "/CellProfiler-2_0_bugfix/CellProfiler/cellprofiler/modules/saveimages.py", line 459, in run
    should_save = self.run_image(workspace)
  File "/CellProfiler-2_0_bugfix/CellProfiler/cellprofiler/modules/saveimages.py", line 503, in run_image
    self.save_image(workspace)
  File "/CellProfiler-2_0_bugfix/CellProfiler/cellprofiler/modules/saveimages.py", line 686, in save_image
    self.do_save_image(workspace, filename, pixels, pixel_type)
  File "/CellProfiler-2_0_bugfix/CellProfiler/cellprofiler/modules/saveimages.py", line 609, in do_save_image
    channel_names = channel_names)
  File "/CellProfiler-2_0_bugfix/CellProfiler/bioformats/formatwriter.py", line 96, in write_image
    xml = omexml.to_xml()
  File "/CellProfiler-2_0_bugfix/CellProfiler/bioformats/omexml.py", line 323, in to_xml
    return str(self)
  File "/CellProfiler-2_0_bugfix/CellProfiler/bioformats/omexml.py", line 312, in __str__
    ElementTree.register_namespace("ome", NS_OME)
AttributeError: 'module' object has no attribute 'register_namespace'
Mon Nov  4 14:21:52 2013: Image # 51, module SaveImages # 13: 0.20 sec
stopping worker thread  0

This problem is discussed here http://stackoverflow.com/questions/10757702/python-2-7-type-object-elementtree-has-no-attribute-register-namespace

Thanks
Lee

[quote=“mbray”]

When converting the legacy pipeline, the Default Input folder references (if any) are changed in the pipeline to the folder you specify but the files therein are not automatically loaded into the Images module. The conversion dialog makes a brief mention that you still have to drag/drop them yourself. Give that a try and see if that helps.

Regards,
-Mark[/quote]


#7

I’m sure I understand this sentence. Can you clarify? Are you saying the drag/drop in the Images module for the Unix version of 2.1 is not working?

[quote=“lesande”]To remove the complication of not knowing my way around the 2.1 version, I installed the 2.0 (bug fix version) on the cluster.
Now Cell profiler runs but has a problem with the SaveImages stage. [/quote]

OK, in this case, it might be more helpful to post your 2.0 bugfix pipeline plus a couple of example images so we can test things.

Regards,
-Mark


#8

Hi Mark,

Sorry, I was unclear.

I meant to say that I am in a cluster environment where I am unable to use the drag and drop feature. But David suggested an alternative (using the LoadData module) that has worked.

I wrote a CP 2.1 pipeline from scratch and it outputs fine. So I am going to stick with that for now.
Thanks
L

[quote=“mbray”]

I’m sure I understand this sentence. Can you clarify? Are you saying the drag/drop in the Images module for the Unix version of 2.1 is not working?

[quote=“lesande”]To remove the complication of not knowing my way around the 2.1 version, I installed the 2.0 (bug fix version) on the cluster.
Now Cell profiler runs but has a problem with the SaveImages stage. [/quote]

OK, in this case, it might be more helpful to post your 2.0 bugfix pipeline plus a couple of example images so we can test things.

Regards,
-Mark[/quote]


Help with LoadData module
#9

OK, good to hear!
-Mark


#10

I had similar issue with .cpi project created with GUI. It is a fresh and minimalistic pipeline. CP: Version: 2014-07-22T13:09:26 f6e3a5a / 20140722130926 System: Cent OS 6

In the zip you can find pipeline and call script.

Problem:
[ERROR] Invalid service: imagej.legacy.DefaultLegacyService
[ERROR] java.lang.IllegalStateException: Legacy support not available in headless mode.

Question: am I calling the non-gui version correctly? I think some of my confusion comes from new way of loading files in CP 2.1 and some differences between platforms. In the pipeline I attached I saved a project. In os x when I save a project it is called .cpproj (contrary to export pipeline .cppipe). When I use Linux when I save project I get .cpi file (and .cp when I use export pipeline). Then I use command line, which has -p parameter: I tried it both with pipeline and project file (in both cases I get the error below). Which one would you recommend to use?

Thank you in advance for any tips and answers.

Here is how I call it:

#!/bin/bash
OUTPUTDIR=/cluster/work/scr1/sstoma/test_pipe/tmp
INPUTDIR=/cluster/work/scr1/sstoma/test_pipe/data
PIPELINE=/cluster/work/scr1/sstoma/test_pipe/01.cpi
TEMP=/cluster/work/scr1/sstoma/test_pipe/tmp
/cluster/apps/cellprofiler/2.1/x86_64/bin/python /cluster/apps/cellprofiler/2.1/x86_64/CellProfiler/CellProfiler.py --temporary-directory="$TEMP" --do-not-build --do-not-fetch --run-headless --run --image-directory="$INPUTDIR" --output-directory="$OUTPUTDIR" --pipeline="$PIPELINE"

Here is the output:

[sstoma@brutus3 test_pipe]$ ./
cp_test_batch  data/          _out/          tmp/           
[sstoma@brutus3 test_pipe]$ ./cp_test_batch 
Version: 2014-07-22T13:09:26 f6e3a5a / 20140722130926
Picked up _JAVA_OPTIONS: -XX:ParallelGCThreads=1
Picked up _JAVA_OPTIONS: -XX:ParallelGCThreads=1
Picked up _JAVA_OPTIONS: -XX:ParallelGCThreads=1
Picked up _JAVA_OPTIONS: -XX:ParallelGCThreads=1
Picked up _JAVA_OPTIONS: -XX:ParallelGCThreads=1
Picked up _JAVA_OPTIONS: -XX:ParallelGCThreads=1
Pipeline saved with CellProfiler version 20140722130926
[INFO] Found 299 plugins.
[INFO] Created service: imagej.plugin.DefaultPluginService
[INFO] Created service: imagej.module.DefaultModuleService
[INFO] Created service: imagej.command.DefaultCommandService
[INFO] Created service: imagej.event.DefaultStatusService
[INFO] Created service: imagej.object.DefaultObjectService
[INFO] Created service: imagej.data.DefaultDatasetService
[INFO] Created service: imagej.io.DefaultIOService
[INFO] Created service: imagej.display.DefaultDisplayService
[INFO] Created service: imagej.console.DefaultConsoleService
[INFO] Created service: imagej.tool.DefaultToolService
[INFO] Created service: imagej.menu.DefaultMenuService
[INFO] Configuring platform: imagej.platform.DefaultPlatform
[INFO] Created service: imagej.platform.DefaultPlatformService
[INFO] Created service: imagej.event.DefaultEventHistory
[INFO] Created service: imagej.widget.DefaultWidgetService
[INFO] Created service: imagej.script.DefaultScriptService
[INFO] Created service: imagej.options.DefaultOptionsService
[INFO] Created service: imagej.io.DefaultRecentFileService
[INFO] Created service: imagej.data.measure.DefaultMeasurementService
[INFO] Created service: imagej.data.display.DefaultImageDisplayService
[INFO] Created service: imagej.ui.common.awt.AWTRenderingService
[INFO] Created service: imagej.data.display.DefaultOverlayService
[INFO] Created service: imagej.data.display.DefaultWindowService
[INFO] Created service: imagej.data.display.DefaultMouseService
[INFO] Created service: imagej.data.sampler.DefaultSamplerService
[INFO] Created service: imagej.data.measure.DefaultStatisticsService
[INFO] Created service: imagej.data.display.DefaultKeyboardService
[INFO] Discovered user interface: imagej.ui.swing.sdi.SwingUI
[INFO] Discovered user interface: imagej.ui.swing.mdi.SwingMdiUI
[INFO] Created service: imagej.ui.DefaultUIService
[INFO] Found 3 upload mechanisms.
[INFO] Created service: imagej.updater.core.DefaultUploaderService
[INFO] Created service: imagej.core.commands.restructure.SplitChannelsContextMonitor
[INFO] Created service: imagej.core.commands.typechange.TypeChangeService
[INFO] Created service: imagej.core.commands.axispos.AnimationService
[ERROR] Invalid service: imagej.legacy.DefaultLegacyService
[ERROR] java.lang.IllegalStateException: Legacy support not available in headless mode.
	at imagej.legacy.DefaultLegacyService.<init>(DefaultLegacyService.java:140)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
	at java.lang.Class.newInstance0(Class.java:372)
	at java.lang.Class.newInstance(Class.java:325)
	at imagej.service.ServiceHelper.createService(ServiceHelper.java:182)
	at imagej.service.ServiceHelper.createExactService(ServiceHelper.java:158)
	at imagej.service.ServiceHelper.loadService(ServiceHelper.java:140)
	at imagej.service.ServiceHelper.loadServices(ServiceHelper.java:115)
	at imagej.ImageJ.<init>(ImageJ.java:235)
	at imagej.ImageJ.<init>(ImageJ.java:171)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
	at org.mozilla.javascript.MemberBox.newInstance(MemberBox.java:159)
	at org.mozilla.javascript.NativeJavaClass.constructInternal(NativeJavaClass.java:266)
	at org.mozilla.javascript.NativeJavaClass.constructSpecific(NativeJavaClass.java:205)
	at org.mozilla.javascript.NativeJavaClass.construct(NativeJavaClass.java:166)
	at org.mozilla.javascript.ScriptRuntime.newObject(ScriptRuntime.java:2349)
	at org.mozilla.javascript.gen._java_python_bridge__1._c_anonymous_1(<java-python-bridge>:2)
	at org.mozilla.javascript.gen._java_python_bridge__1.call(<java-python-bridge>)
	at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:394)
	at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3091)
	at org.mozilla.javascript.gen._java_python_bridge__1.call(<java-python-bridge>)
	at org.mozilla.javascript.Context$1.run(Context.java:478)
	at org.mozilla.javascript.Context.call(Context.java:489)
	at org.mozilla.javascript.Context.call(Context.java:476)
	at org.mozilla.javascript.JavaAdapter.callMethod(JavaAdapter.java:573)
	at adapter1.call(<adapter>)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
	at java.util.concurrent.FutureTask.run(FutureTask.java:166)
[INFO] Created service: imagej.ui.swing.SwingIconService
[INFO] Found 8 JHotDraw adapters.
[INFO] Created service: imagej.ui.swing.overlay.JHotDrawService
[INFO] Created service: imagej.ui.common.awt.AWTScreenCaptureService
[INFO] Created service: imagej.render.DummyRenderingService
[INFO] Created service: imagej.data.display.DummyScreenCaptureService
stopping worker thread  0
stopping worker thread  1
stopping worker thread  2
stopping worker thread  3
stopping worker thread  4
stopping worker thread  5
stopping worker thread  6
stopping worker thread  7
stopping worker thread  8
stopping worker thread  9
stopping worker thread  10
stopping worker thread  11
stopping worker thread  12
stopping worker thread  13
stopping worker thread  14
stopping worker thread  15
stopping worker thread  16
stopping worker thread  17
stopping worker thread  18
stopping worker thread  19
stopping worker thread  20
stopping worker thread  21
stopping worker thread  22
stopping worker thread  23
stopping worker thread  24
stopping worker thread  25
stopping worker thread  26
stopping worker thread  27
stopping worker thread  28
stopping worker thread  29
stopping worker thread  30
stopping worker thread  31
stopping worker thread  32
stopping worker thread  33
stopping worker thread  34
stopping worker thread  35
stopping worker thread  36
stopping worker thread  37
stopping worker thread  38
stopping worker thread  39
stopping worker thread  40
stopping worker thread  41
stopping worker thread  42
stopping worker thread  43
stopping worker thread  44
stopping worker thread  45
stopping worker thread  46
stopping worker thread  47
stopping worker thread  48
Exiting the JVM monitor thread

14-07-29-cp_batch_tests.zip (6.6 KB)


#11

Hi Szymon,

The .cpi extension is from our **very **early testing with the project file format; it has since been superseded by the .cpproj extension and associated changes to the file structure. So I would recommend updating your Linux build, either from source or from the Linux distribution: cellprofiler.org/linux.shtml.

Also, the -p switch should work for pipelines and project files, with caveats; see github.com/CellProfiler/CellPro … ssues/1147.
-Mark


#12

Dear Mark,

I am using very recent version of CP. Please check the screen. It saves projects as .cpi

But… Maybe my GUI is displayed via some old and forgotten library (I use CP on OS X - I have no idea how GUI should look on linux). Maybe the use of this GUI is the source of my problems. Does the screenshots I attach allow you to tell me something about the correctness of libraries I used during build (I know this is not very precise question, but still I try to get some intuition).

Thanks a lot!