Project

General

Profile

Actions

Bug #323

closed

Strange Sinedon error, "sinedon.data.DataAccessError"

Added by Erica Jacovetty over 14 years ago. Updated over 14 years ago.

Status:
Closed
Priority:
High
Category:
Sinedon
Start date:
04/02/2010
Due date:
% Done:

100%

Estimated time:
Affected Version:
Appion/Leginon 2.0.1
Show in known bugs:
No
Workaround:

Description

Create full tomogram is not working. I submit the job and it gets stuck in loading, I get locked out of viewer/appion.

Actions #1

Updated by Anchi Cheng over 14 years ago

  • Category set to 7
  • Status changed from New to Assigned
  • Assignee changed from Anchi Cheng to Jim Pulokas
  • Priority changed from Normal to High

This turns out to be a sinedon error since myami change of using package.module instead of module.
The same command works with the old sinedon.

Testing Command:
tomomaker.py --session=10feb05c --bin=4 --alignerid=1 --projectid=256 --runname=full2 --thickness=20 --description="test recon" --commit

Traceback (most recent call last):
File "/home/acheng/myami/appion/bin/tomomaker.py", line 172, in ?
app = tomoMaker()
File "/home/acheng/myami/appion/appionlib/appionScript.py", line 85, in init
self.setupRunDirectory()
File "/home/acheng/myami/appion/appionlib/appionScript.py", line 281, in setupRunDirectory
self.setRunDir()
File "/home/acheng/myami/appion/bin/tomomaker.py", line 103, in setRunDir
self.setTiltSeries()
File "/home/acheng/myami/appion/bin/tomomaker.py", line 83, in setTiltSeries
self.tiltdatalist = apTomo.getTiltListFromAligner(self.params['alignerid'])
File "/home/acheng/myami/appion/appionlib/apTomo.py", line 67, in getTiltListFromAligner
q = appiondata.ApTiltsInAlignRunData(alignrun=alignerdata['alignrun'])
File "/home/acheng/myami/leginon/sinedon/data.py", line 488, in getitem
File "/home/acheng/myami/leginon/sinedon/data.py", line 477, in special_getitem
File "/home/acheng/myami/leginon/sinedon/data.py", line 254, in getData
File "/home/acheng/myami/leginon/sinedon/data.py", line 159, in getData
sinedon.data.DataAccessError: referenced data can not be found: DataReference[class: ApTomoAlignmentRunData, dmid: None, dbid: 1, referent: None]

Additional test:
1. printing alignerdata['alignrun'] from apTomo.py before it is called to be used at line 67 gave the same error.

2. I assigned ap256 to sinedon appiondata and run python command line as follows with no error:

>>> from appionlib import appiondata
>>> q = appiondata.ApTomoAlignerParamsData()
>>> alignerid=1
>>> alignerdata = q.direct_query(alignerid)
>>> alignerdata['alignrun']
***************************************************************

WARNING: DB field names containing "REF" should use full absolute python module names. "leginondata" should be "leginon.leginondata". Warning will become Exception in the future.

{session: DataReference[class: SessionData, dmid: None, dbid: 7334, referent: None], tiltseries: None, coarseLeginonParams: None, coarseImodParams: DataReference[class: ApImodXcorrParamsData, dmid: None, dbid: 1, referent: None], fineProtomoParams: None, bin: 1, name: align1, path: DataReference[class: ApPathData, dmid: None, dbid: 1, referent: None], description: test, hidden: None}

Actions #2

Updated by Neil Voss over 14 years ago

Anchi, I added a new function to apProject to help test this and it worked for me.

try:

from appionlib import apProject
from appionlib import apTomo
apProject.setDBfromProjectId(256)
apTomo.getTiltListFromAligner(1)

Results:
[{session: DataReference[class: SessionData, dmid: None, dbid: 7334, referent: None], tilt min: -60.0, tilt max: 60.0, tilt start: 0.0, tilt step: -2.0, number: 15}]

Are you sure this is a sinedon problem?

Actions #3

Updated by Neil Voss over 14 years ago

  • Project changed from Appion to Leginon
  • Category changed from 7 to Sinedon
Actions #4

Updated by Neil Voss over 14 years ago

Ah, nevermind. The above commands work in Fedora 12, but fail in CentOS:

Traceback (most recent call last):
  File "<stdin>", line 1, in ?
  File "/home/vossman/appion/appionlib/apTomo.py", line 65, in getTiltListFromAligner
    q = appiondata.ApTiltsInAlignRunData(alignrun=alignerdata['alignrun'])
  File "/home/vossman/myami/sinedon/data.py", line 488, in __getitem__
    return self.special_getitem(key, dereference=True)
  File "/home/vossman/myami/sinedon/data.py", line 477, in special_getitem
    value = value.getData(**kwargs)
  File "/home/vossman/myami/sinedon/data.py", line 254, in getData
    referent = datamanager.getData(self, **kwargs)
  File "/home/vossman/myami/sinedon/data.py", line 159, in getData
    raise DataAccessError('referenced data can not be found: %s' % (datareference,))
sinedon.data.DataAccessError: referenced data can not be found: DataReference[class: ApTomoAlignmentRunData, dmid: None, dbid: 1, referent: None]
Actions #5

Updated by Jim Pulokas over 14 years ago

I cannot reproduce this exception using my sandbox as PYTHONPATH. Since both Neil and Anchi have cases of it working and not working, can you both post your python path (print sys.path at the beginning of your script) both when it is working and not working. Maybe we can find a difference. In my case, I have not added anything else to PYTHONPATH except for the myami main directory (which includes a symlink to appionlib for completeness).

Actions #6

Updated by Anchi Cheng over 14 years ago

I think it is a pythonpath problem:

Here is mine on x64 machines that gave me the problem:
PYTHONPATH=/home/acheng/myami/64build:/home/acheng/myami:/home/acheng/myami/leginon:/home/acheng/myami/appion:/ami/sw/packages/EMAN64:/ami/sw/lib64/python2.4/site-packages:/ami/sw/packages/EMAN64/lib:

The error points to /home/acheng/myami/leginon/sinedon/data.py which does not exist since I didn't put any
soft link or folder called sinedon under leginon. The sinedon it should access is under /home/ahceng/myami directly.

I removed the /home/acheng/myami/leginon from my PYTHONPATH, then the script ran.

Maybe python got confused where sinedon is when called through other packages.

Actions #7

Updated by Anchi Cheng over 14 years ago

  • Status changed from Assigned to In Test
  • Assignee changed from Jim Pulokas to Erica Jacovetty
  • % Done changed from 0 to 100

The path must be wrong at the time. It is o.k. today (4/9) when I tried it on guppy. Please try it again now.

Actions #8

Updated by Neil Voss over 14 years ago

  • Target version set to Appion/Leginon 2.1.0
  • Affected Version set to Appion/Leginon 2.0.1
Actions #9

Updated by Neil Voss over 14 years ago

  • Target version changed from Appion/Leginon 2.1.0 to Appion/Leginon 2.0.2
Actions #10

Updated by Neil Voss over 14 years ago

  • Subject changed from Full Tomogram to Strange Sinedon error, "sinedon.data.DataAccessError"
Actions #11

Updated by Erica Jacovetty over 14 years ago

  • Status changed from In Test to Closed
  • Show in known bugs set to No

Tested today. Everything ran fine.

Actions

Also available in: Atom PDF