Skip to content

is_reference(server_retrieval=True): Problems with the correct role

There is a problem in the function when a check is performed by an entity with a different role than the one on the server.

see advanced user tools pipline error:

if not prop.is_reference(server_retrieval=True):
  File "/usr/local/lib/python3.7/dist-packages/caosdb/common/models.py", line 1554, in is_reference
    tmp_prop.retrieve()
  File "/usr/local/lib/python3.7/dist-packages/caosdb/common/models.py", line 1104, in retrieve
    unique=unique, raise_exception_on_error=raise_exception_on_error, flags=flags)
  File "/usr/local/lib/python3.7/dist-packages/caosdb/common/models.py", line 3170, in retrieve
    raise_exception_on_error=raise_exception_on_error)
  File "/usr/local/lib/python3.7/dist-packages/caosdb/common/models.py", line 2777, in _sync
    strategy(entity, e_sync.pop())
  File "/usr/local/lib/python3.7/dist-packages/caosdb/common/models.py", line 2360, in _basic_sync
    e_remote.role, e_local.role))
ValueError: The resulting entity had a different role (RecordType) than the local one (Property). This probably means, that the entity was intialized with a wrong class by this client or it has changed in the past and this client did't know about it yet.
result value is 1
Edited by Alexander Kreft
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information