aiida.backends.sqlalchemy.models package

Submodules

class aiida.backends.sqlalchemy.models.authinfo.DbAuthInfo(*args, **kwargs)[source]

Bases: sqlalchemy.ext.declarative.api.Model

__init__(*args, **kwargs)
__mapper__ = <Mapper at 0x7f84248ac3d0; DbAuthInfo>
__module__ = 'aiida.backends.sqlalchemy.models.authinfo'
__str__() <==> str(x)[source]
__table__ = Table('db_dbauthinfo', MetaData(bind=None), Column('id', Integer(), table=<db_dbauthinfo>, primary_key=True, nullable=False), Column('aiidauser_id', Integer(), ForeignKey('db_dbuser.id'), table=<db_dbauthinfo>), Column('dbcomputer_id', Integer(), ForeignKey('db_dbcomputer.id'), table=<db_dbauthinfo>), Column('metadata', JSONB(), table=<db_dbauthinfo>), Column('auth_params', JSONB(), table=<db_dbauthinfo>), Column('enabled', Boolean(), table=<db_dbauthinfo>), schema=None)
__table_args__ = (UniqueConstraint(Column('aiidauser_id', Integer(), ForeignKey('db_dbuser.id'), table=<db_dbauthinfo>), Column('dbcomputer_id', Integer(), ForeignKey('db_dbcomputer.id'), table=<db_dbauthinfo>)),)
__tablename__ = 'db_dbauthinfo'
_metadata
_sa_class_manager = {'_metadata': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424790110>, 'aiidauser': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424895ef0>, 'aiidauser_id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424790290>, 'auth_params': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424790410>, 'dbcomputer': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424790050>, 'dbcomputer_id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424790350>, 'enabled': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247904d0>, 'id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247901d0>}
aiidauser
aiidauser_id
auth_params
dbcomputer
dbcomputer_id
enabled
get_auth_params()[source]
get_transport()[source]

Given a computer and an aiida user (as entries of the DB) return a configured transport to connect to the computer.

get_workdir()[source]
id
set_auth_params(auth_params)[source]
class aiida.backends.sqlalchemy.models.base.Model[source]

Bases: object

__dict__ = dict_proxy({'__module__': 'aiida.backends.sqlalchemy.models.base', 'session': <aiida.backends.sqlalchemy.models.base._SessionProperty object>, '__dict__': <attribute '__dict__' of 'Model' objects>, 'query': <aiida.backends.sqlalchemy.models.base._QueryProperty object>, 'save': <function save>, '__weakref__': <attribute '__weakref__' of 'Model' objects>, '__doc__': None, 'delete': <function delete>})
__module__ = 'aiida.backends.sqlalchemy.models.base'
__weakref__

list of weak references to the object (if defined)

delete(commit=True)[source]
query = None
save(commit=True)[source]
session
class aiida.backends.sqlalchemy.models.base._AiidaQuery(*args, **kwargs)[source]

Bases: sqlalchemy.orm.query.Query

__init__(*args, **kwargs)[source]

Constructor

__iter__()[source]
__module__ = 'aiida.backends.sqlalchemy.models.base'
class aiida.backends.sqlalchemy.models.base._QueryProperty(query_class=<class 'sqlalchemy.orm.query.Query'>)[source]

Bases: object

__dict__ = dict_proxy({'__module__': 'aiida.backends.sqlalchemy.models.base', '__dict__': <attribute '__dict__' of '_QueryProperty' objects>, '__weakref__': <attribute '__weakref__' of '_QueryProperty' objects>, '__doc__': None, '__init__': <function __init__>, '__get__': <function __get__>})
__get__(obj, _type)[source]
__init__(query_class=<class 'sqlalchemy.orm.query.Query'>)[source]

x.__init__(…) initializes x; see help(type(x)) for signature

__module__ = 'aiida.backends.sqlalchemy.models.base'
__weakref__

list of weak references to the object (if defined)

class aiida.backends.sqlalchemy.models.base._SessionProperty[source]

Bases: object

__dict__ = dict_proxy({'__dict__': <attribute '__dict__' of '_SessionProperty' objects>, '__module__': 'aiida.backends.sqlalchemy.models.base', '__weakref__': <attribute '__weakref__' of '_SessionProperty' objects>, '__doc__': None, '__get__': <function __get__>})
__get__(obj, _type)[source]
__module__ = 'aiida.backends.sqlalchemy.models.base'
__weakref__

list of weak references to the object (if defined)

class aiida.backends.sqlalchemy.models.comment.DbComment(**kwargs)[source]

Bases: sqlalchemy.ext.declarative.api.Model

__init__(**kwargs)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

__mapper__ = <Mapper at 0x7f842480db10; DbComment>
__module__ = 'aiida.backends.sqlalchemy.models.comment'
__str__() <==> str(x)[source]
__table__ = Table('db_dbcomment', MetaData(bind=None), Column('id', Integer(), table=<db_dbcomment>, primary_key=True, nullable=False), Column('uuid', UUID(as_uuid=True), table=<db_dbcomment>, default=ColumnDefault(<function <lambda>>)), Column('dbnode_id', Integer(), ForeignKey('db_dbnode.id'), table=<db_dbcomment>), Column('ctime', DateTime(timezone=True), table=<db_dbcomment>, default=ColumnDefault(<function <lambda>>)), Column('mtime', DateTime(timezone=True), table=<db_dbcomment>, default=ColumnDefault(<function <lambda>>)), Column('user_id', Integer(), ForeignKey('db_dbuser.id'), table=<db_dbcomment>), Column('content', Text(), table=<db_dbcomment>), schema=None)
__tablename__ = 'db_dbcomment'
_sa_class_manager = {'content': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424790f50>, 'ctime': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424790d10>, 'dbnode': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424790890>, 'dbnode_id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424790c50>, 'id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424790ad0>, 'mtime': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424790dd0>, 'user': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424790a10>, 'user_id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424790e90>, 'uuid': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424790b90>}
content
ctime
dbnode
dbnode_id
id
mtime
user
user_id
uuid
class aiida.backends.sqlalchemy.models.computer.DbComputer(*args, **kwargs)[source]

Bases: sqlalchemy.ext.declarative.api.Model

__init__(*args, **kwargs)
__mapper__ = <Mapper at 0x7f8424798550; DbComputer>
__module__ = 'aiida.backends.sqlalchemy.models.computer'
__str__() <==> str(x)[source]
__table__ = Table('db_dbcomputer', MetaData(bind=None), Column('id', Integer(), table=<db_dbcomputer>, primary_key=True, nullable=False), Column('uuid', UUID(as_uuid=True), table=<db_dbcomputer>, default=ColumnDefault(<function <lambda>>)), Column('name', String(length=255), table=<db_dbcomputer>, nullable=False), Column('hostname', String(length=255), table=<db_dbcomputer>), Column('description', Text(), table=<db_dbcomputer>), Column('enabled', Boolean(), table=<db_dbcomputer>), Column('transport_type', String(length=255), table=<db_dbcomputer>), Column('scheduler_type', String(length=255), table=<db_dbcomputer>), Column('transport_params', JSONB(), table=<db_dbcomputer>), Column('metadata', JSONB(), table=<db_dbcomputer>), schema=None)
__tablename__ = 'db_dbcomputer'
_metadata
_sa_class_manager = {'_metadata': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247bc230>, 'authinfos': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84269735f0>, 'dbnodes': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84269558f0>, 'description': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247bc6b0>, 'enabled': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247bc770>, 'hostname': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247bc5f0>, 'id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247bc3b0>, 'name': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247bc530>, 'scheduler_type': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247bc8f0>, 'transport_params': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247bc9b0>, 'transport_type': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247bc830>, 'uuid': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247bc470>}
authinfos
dbnodes
description
enabled
get_aiida_class()[source]
classmethod get_dbcomputer(computer)[source]

Return a DbComputer from its name (or from another Computer or DbComputer instance)

get_shebang()[source]
get_workdir()[source]
hostname
id
name
pk
scheduler_type
transport_params
transport_type
uuid
class aiida.backends.sqlalchemy.models.group.DbGroup(**kwargs)[source]

Bases: sqlalchemy.ext.declarative.api.Model

__init__(**kwargs)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

__mapper__ = <Mapper at 0x7f84247ab810; DbGroup>
__module__ = 'aiida.backends.sqlalchemy.models.group'
__str__() <==> str(x)[source]
__table__ = Table('db_dbgroup', MetaData(bind=None), Column('id', Integer(), table=<db_dbgroup>, primary_key=True, nullable=False), Column('uuid', UUID(as_uuid=True), table=<db_dbgroup>, default=ColumnDefault(<function <lambda>>)), Column('name', String(length=255), table=<db_dbgroup>), Column('type', String(length=255), table=<db_dbgroup>, default=ColumnDefault('')), Column('time', DateTime(timezone=True), table=<db_dbgroup>, default=ColumnDefault(<function <lambda>>)), Column('description', Text(), table=<db_dbgroup>), Column('user_id', Integer(), ForeignKey('db_dbuser.id'), table=<db_dbgroup>), schema=None)
__table_args__ = (UniqueConstraint(Column('name', String(length=255), table=<db_dbgroup>), Column('type', String(length=255), table=<db_dbgroup>, default=ColumnDefault(''))),)
__tablename__ = 'db_dbgroup'
_sa_class_manager = {'dbnodes': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247bce90>, 'description': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247b2350>, 'id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247bcf50>, 'name': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247b2110>, 'time': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247b2290>, 'type': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247b21d0>, 'user': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247bcd10>, 'user_id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247b2410>, 'uuid': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247b2050>}
dbnodes
description
get_aiida_class()[source]
id
name
pk
time
type
user
user_id
uuid
class aiida.backends.sqlalchemy.models.lock.DbLock(**kwargs)[source]

Bases: sqlalchemy.ext.declarative.api.Model

__init__(**kwargs)
__mapper__ = <Mapper at 0x7f84247abf50; DbLock>
__module__ = 'aiida.backends.sqlalchemy.models.lock'
__table__ = Table('db_dblock', MetaData(bind=None), Column('key', String(length=255), table=<db_dblock>, primary_key=True, nullable=False), Column('creation', DateTime(timezone=True), table=<db_dblock>, default=ColumnDefault(<function <lambda>>)), Column('timeout', Integer(), table=<db_dblock>), Column('owner', String(length=255), table=<db_dblock>), schema=None)
__tablename__ = 'db_dblock'
_sa_class_manager = {'creation': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247b2890>, 'key': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247b2710>, 'owner': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247b2a10>, 'timeout': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247b2950>}
creation
key
owner
timeout
class aiida.backends.sqlalchemy.models.log.DbLog(time, loggername='', levelname='', objname='', objpk=None, message=None, metadata=None)[source]

Bases: sqlalchemy.ext.declarative.api.Model

__init__(time, loggername='', levelname='', objname='', objpk=None, message=None, metadata=None)
__mapper__ = <Mapper at 0x7f84247b8710; DbLog>
__module__ = 'aiida.backends.sqlalchemy.models.log'
__str__() <==> str(x)[source]
__table__ = Table('db_dblog', MetaData(bind=None), Column('id', Integer(), table=<db_dblog>, primary_key=True, nullable=False), Column('time', DateTime(timezone=True), table=<db_dblog>, default=ColumnDefault(<function <lambda>>)), Column('loggername', String(length=255), table=<db_dblog>), Column('levelname', String(length=255), table=<db_dblog>), Column('objname', String(length=255), table=<db_dblog>), Column('objpk', Integer(), table=<db_dblog>), Column('message', Text(), table=<db_dblog>), Column('metadata', JSONB(), table=<db_dblog>), schema=None)
__tablename__ = 'db_dblog'
_metadata
_sa_class_manager = {'_metadata': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247b2d10>, 'id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247b2e90>, 'levelname': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247ca110>, 'loggername': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247ca050>, 'message': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247ca350>, 'objname': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247ca1d0>, 'objpk': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247ca290>, 'time': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247b2f50>}
id
levelname
loggername
message
objname
objpk
time
class aiida.backends.sqlalchemy.models.node.DbCalcState(**kwargs)[source]

Bases: sqlalchemy.ext.declarative.api.Model

__init__(**kwargs)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

__mapper__ = <Mapper at 0x7f8424714b50; DbCalcState>
__module__ = 'aiida.backends.sqlalchemy.models.node'
__table__ = Table('db_dbcalcstate', MetaData(bind=None), Column('id', Integer(), table=<db_dbcalcstate>, primary_key=True, nullable=False), Column('dbnode_id', Integer(), ForeignKey('db_dbnode.id'), table=<db_dbcalcstate>), Column('state', ChoiceType(length=255), table=<db_dbcalcstate>), Column('time', DateTime(timezone=True), table=<db_dbcalcstate>, default=ColumnDefault(<function <lambda>>)), schema=None)
__table_args__ = (UniqueConstraint(Column('dbnode_id', Integer(), ForeignKey('db_dbnode.id'), table=<db_dbcalcstate>), Column('state', ChoiceType(length=255), table=<db_dbcalcstate>)),)
__tablename__ = 'db_dbcalcstate'
_sa_class_manager = {'dbnode': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424720230>, 'dbnode_id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247204d0>, 'id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424720410>, 'state': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424720590>, 'time': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424720650>}
dbnode
dbnode_id
id
state
time

Bases: sqlalchemy.ext.declarative.api.Model

__init__(**kwargs)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

__mapper__ = <Mapper at 0x7f8424737790; DbLink>
__module__ = 'aiida.backends.sqlalchemy.models.node'
__str__() <==> str(x)[source]
__table__ = Table('db_dblink', MetaData(bind=None), Column('id', Integer(), table=<db_dblink>, primary_key=True, nullable=False), Column('input_id', Integer(), ForeignKey('db_dbnode.id'), table=<db_dblink>), Column('output_id', Integer(), ForeignKey('db_dbnode.id'), table=<db_dblink>), Column('label', String(length=255), table=<db_dblink>, nullable=False), Column('type', String(length=255), table=<db_dblink>), schema=None)
__table_args__ = ()
__tablename__ = 'db_dblink'
_sa_class_manager = {'id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842473a7d0>, 'input': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842473a590>, 'input_id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842473a890>, 'label': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842473aa10>, 'output': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842473a710>, 'output_id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842473a950>, 'type': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842473aad0>}
id
input
input_id
label
output
output_id
type
class aiida.backends.sqlalchemy.models.node.DbNode(*args, **kwargs)[source]

Bases: sqlalchemy.ext.declarative.api.Model

__init__(*args, **kwargs)
__mapper__ = <Mapper at 0x7f8424727ad0; DbNode>
__module__ = 'aiida.backends.sqlalchemy.models.node'
__str__() <==> str(x)[source]
__table__ = Table('db_dbnode', MetaData(bind=None), Column('id', Integer(), table=<db_dbnode>, primary_key=True, nullable=False), Column('uuid', UUID(as_uuid=True), table=<db_dbnode>, default=ColumnDefault(<function <lambda>>)), Column('type', String(length=255), table=<db_dbnode>), Column('label', String(length=255), table=<db_dbnode>, default=ColumnDefault('')), Column('description', Text(), table=<db_dbnode>, default=ColumnDefault('')), Column('ctime', DateTime(timezone=True), table=<db_dbnode>, default=ColumnDefault(<function <lambda>>)), Column('mtime', DateTime(timezone=True), table=<db_dbnode>, default=ColumnDefault(<function <lambda>>)), Column('nodeversion', Integer(), table=<db_dbnode>, default=ColumnDefault(1)), Column('public', Boolean(), table=<db_dbnode>, default=ColumnDefault(False)), Column('attributes', JSONB(), table=<db_dbnode>), Column('extras', JSONB(), table=<db_dbnode>), Column('dbcomputer_id', Integer(), ForeignKey('db_dbcomputer.id'), table=<db_dbnode>), Column('user_id', Integer(), ForeignKey('db_dbuser.id'), table=<db_dbnode>, nullable=False), schema=None)
__tablename__ = 'db_dbnode'
static _del_attr(key)[source]
_sa_class_manager = {'attributes': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842473a1d0>, 'ctime': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424720e90>, 'dbcomments': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8426acc050>, 'dbcomputer': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424720830>, 'dbcomputer_id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842473a350>, 'dbgroups': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84269ffad0>, 'dbstates': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8426acc3b0>, 'description': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424720dd0>, 'extras': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842473a290>, 'id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424720ad0>, 'inputs_q': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8426a46ef0>, 'label': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424720d10>, 'mtime': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424720f50>, 'nodeversion': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842473a050>, 'outputs_q': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424720a10>, 'public': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842473a110>, 'type': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424720c50>, 'user': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424720950>, 'user_id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842473a410>, 'uuid': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424720b90>, 'workflow_step': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84269b0770>}
static _set_attr(key, value)[source]
aiida_query = <aiida.backends.sqlalchemy.models.base._AiidaQuery object>
attributes
computer_name = <sqlalchemy.sql.elements.Label object>
ctime
dbcomments
dbcomputer
dbcomputer_id
dbgroups
dbstates
del_attr(key)[source]
del_extra(key)[source]
description
extras
get_aiida_class()[source]

Return the corresponding aiida instance of class aiida.orm.Node or a appropriate subclass.

get_simple_name(invalid_result=None)[source]

Return a string with the last part of the type name.

If the type is empty, use ‘Node’. If the type is invalid, return the content of the input variable invalid_result.

Parameters:invalid_result – The value to be returned if the node type is not recognized.
id
inputs
inputs_q
label
mtime
nodeversion
outputs
outputs_q
pk
public
reset_extras(new_extras)[source]
set_attr(key, value)[source]
set_extra(key, value)[source]
state = <sqlalchemy.sql.elements.Label object>
type
user
user_email = <sqlalchemy.sql.elements.Label object>
user_id
uuid
workflow_step
class aiida.backends.sqlalchemy.models.settings.DbSetting(**kwargs)[source]

Bases: sqlalchemy.ext.declarative.api.Model

__init__(**kwargs)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

__mapper__ = <Mapper at 0x7f84269e4610; DbSetting>
__module__ = 'aiida.backends.sqlalchemy.models.settings'
__str__() <==> str(x)[source]
__table__ = Table('db_dbsetting', MetaData(bind=None), Column('id', Integer(), table=<db_dbsetting>, primary_key=True, nullable=False), Column('key', String(length=255), table=<db_dbsetting>, nullable=False), Column('val', JSONB(), table=<db_dbsetting>, default=ColumnDefault({})), Column('description', String(length=255), table=<db_dbsetting>, nullable=False, default=ColumnDefault('')), Column('time', DateTime(timezone=True), table=<db_dbsetting>, default=ColumnDefault(<UTC>)), schema=None)
__table_args__ = (UniqueConstraint(Column('key', String(length=255), table=<db_dbsetting>, nullable=False)),)
__tablename__ = 'db_dbsetting'
_sa_class_manager = {'description': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8426ad0890>, 'id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8426ad0050>, 'key': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8426ad0530>, 'time': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8426ad0770>, 'val': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8426ad0290>}
classmethod del_value(key, only_children=False, subspecifier_value=None)[source]
description
get_description()[source]

This can be called on a given row and will get the corresponding description.

getvalue()[source]

This can be called on a given row and will get the corresponding value.

id
key
classmethod set_value(key, value, with_transaction=True, subspecifier_value=None, other_attribs={}, stop_if_existing=False)[source]
time
val
class aiida.backends.sqlalchemy.models.user.DbUser(email, first_name='', last_name='', institution='', **kwargs)[source]

Bases: sqlalchemy.ext.declarative.api.Model

__init__(email, first_name='', last_name='', institution='', **kwargs)
__mapper__ = <Mapper at 0x7f842471ed10; DbUser>
__module__ = 'aiida.backends.sqlalchemy.models.user'
__str__() <==> str(x)[source]
__table__ = Table('db_dbuser', MetaData(bind=None), Column('id', Integer(), table=<db_dbuser>, primary_key=True, nullable=False), Column('email', String(length=254), table=<db_dbuser>), Column('password', String(length=128), table=<db_dbuser>), Column('is_superuser', Boolean(), table=<db_dbuser>, nullable=False, default=ColumnDefault(False)), Column('first_name', String(length=254), table=<db_dbuser>), Column('last_name', String(length=254), table=<db_dbuser>), Column('institution', String(length=254), table=<db_dbuser>), Column('is_staff', Boolean(), table=<db_dbuser>, default=ColumnDefault(False)), Column('is_active', Boolean(), table=<db_dbuser>, default=ColumnDefault(False)), Column('last_login', DateTime(timezone=True), table=<db_dbuser>, default=ColumnDefault(<function <lambda>>)), Column('date_joined', DateTime(timezone=True), table=<db_dbuser>, default=ColumnDefault(<function <lambda>>)), schema=None)
__tablename__ = 'db_dbuser'
_sa_class_manager = {'authinfos': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8426973110>, 'date_joined': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247cae90>, 'dbgroups': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84269ff0b0>, 'dbnodes': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84269f6290>, 'email': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247ca710>, 'first_name': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247cacb0>, 'id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247cab90>, 'institution': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247ca770>, 'is_active': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247caa70>, 'is_staff': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247cac50>, 'is_superuser': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247ca590>, 'last_login': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247ca3b0>, 'last_name': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247ca6b0>, 'password': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84247cad70>}
authinfos
date_joined
dbgroups
dbnodes
email
first_name
get_aiida_class()[source]
get_full_name()[source]
get_short_name()[source]
id
institution
is_active
is_staff
is_superuser
last_login
last_name
password
aiida.backends.sqlalchemy.models.utils.get_value_of_sub_field(key, original_get_value)[source]

Get the value that corresponds to sub-fields of dictionaries stored in a JSON. For example, if there is a dictionary {‘b’: ‘c’} stored as value of the key ‘a’ value ‘a’ :param key: The key that can be simple, a string, or complex, a set of keys separated by the separator value. :param original_get_value: The function that should be called to get the original value (which can be a dictionary too). :return: The value that correspond to the complex (or not) key. :raise NotExistent: If the key doesn’t correspond to a value

aiida.backends.sqlalchemy.models.utils.validate_key(key)[source]

Validate the key string to check if it is valid (e.g., if it does not contain the separator symbol.).

Returns:None if the key is valid
Raises:ValidationError – if the key is not valid
class aiida.backends.sqlalchemy.models.workflow.DbWorkflow(*args, **kwargs)[source]

Bases: sqlalchemy.ext.declarative.api.Model

__init__(*args, **kwargs)
__mapper__ = <Mapper at 0x7f8424698890; DbWorkflow>
__module__ = 'aiida.backends.sqlalchemy.models.workflow'
__str__() <==> str(x)[source]
__table__ = Table('db_dbworkflow', MetaData(bind=None), Column('id', Integer(), table=<db_dbworkflow>, primary_key=True, nullable=False), Column('uuid', UUID(as_uuid=True), table=<db_dbworkflow>, default=ColumnDefault(<function <lambda>>)), Column('ctime', DateTime(timezone=True), table=<db_dbworkflow>, default=ColumnDefault(<function <lambda>>)), Column('mtime', DateTime(timezone=True), table=<db_dbworkflow>, default=ColumnDefault(<function <lambda>>)), Column('user_id', Integer(), ForeignKey('db_dbuser.id'), table=<db_dbworkflow>), Column('label', String(length=255), table=<db_dbworkflow>), Column('description', Text(), table=<db_dbworkflow>), Column('nodeversion', Integer(), table=<db_dbworkflow>), Column('lastsyncedversion', Integer(), table=<db_dbworkflow>), Column('state', ChoiceType(length=255), table=<db_dbworkflow>, default=ColumnDefault(u'INITIALIZED')), Column('report', Text(), table=<db_dbworkflow>), Column('module', Text(), table=<db_dbworkflow>), Column('module_class', Text(), table=<db_dbworkflow>), Column('script_path', Text(), table=<db_dbworkflow>), Column('script_md5', String(length=255), table=<db_dbworkflow>), schema=None)
__tablename__ = 'db_dbworkflow'
_get_or_create_data(name, data_type)[source]
_get_or_create_step(name, user)[source]
_sa_class_manager = {'ctime': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842474d590>, 'data': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842474db90>, 'description': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842474d110>, 'id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842474d950>, 'label': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842474d050>, 'lastsyncedversion': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842474d350>, 'module': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842474d710>, 'module_class': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842474d7d0>, 'mtime': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842474dcb0>, 'nodeversion': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842474d1d0>, 'parent_workflow_step': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84269b0b30>, 'report': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842474d530>, 'script_md5': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842474dbf0>, 'script_path': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842474dad0>, 'state': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842474d470>, 'steps': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84269b0a70>, 'user': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842474d8f0>, 'user_id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842474ddd0>, 'uuid': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842474def0>}
add_attribute(name, value)[source]
add_attributes(_dict)[source]
add_data(dict, d_type)[source]
add_parameter(name, value)[source]
add_parameters(_dict, force=False)[source]
add_result(name, value)[source]
add_results(_dict)[source]
aiida_query = <aiida.backends.sqlalchemy.models.base._AiidaQuery object>
append_to_report(_text)[source]
clear_report()[source]
ctime
data
description
finish()[source]
get_aiida_class()[source]

Return the corresponding aiida instance of class aiida.worflow

get_attribute(name)[source]
get_attributes()[source]
get_calculations()[source]
get_data(d_type)[source]
get_parameter(name)[source]
get_parameters()[source]
get_result(name)[source]
get_results()[source]
get_sub_workflows()[source]
id
is_subworkflow()[source]

Return True if this is a subworkflow, False if it is a root workflow, launched by the user.

label
lastsyncedversion
module
module_class
mtime
nodeversion
parent_workflow_step
pk
report
script_md5
script_path
set_script_md5(md5)[source]
set_state(state)[source]
state
steps
user
user_id
uuid
class aiida.backends.sqlalchemy.models.workflow.DbWorkflowData(**kwargs)[source]

Bases: sqlalchemy.ext.declarative.api.Model

__init__(**kwargs)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

__mapper__ = <Mapper at 0x7f84246ab3d0; DbWorkflowData>
__module__ = 'aiida.backends.sqlalchemy.models.workflow'
__str__() <==> str(x)[source]
__table__ = Table('db_dbworkflowdata', MetaData(bind=None), Column('id', Integer(), table=<db_dbworkflowdata>, primary_key=True, nullable=False), Column('parent_id', Integer(), ForeignKey('db_dbworkflow.id'), table=<db_dbworkflowdata>), Column('name', String(length=255), table=<db_dbworkflowdata>), Column('time', DateTime(timezone=True), table=<db_dbworkflowdata>, default=ColumnDefault(<function <lambda>>)), Column('data_type', String(length=255), table=<db_dbworkflowdata>, default=ColumnDefault(u'PARAMETER')), Column('value_type', String(length=255), table=<db_dbworkflowdata>, default=ColumnDefault(u'NONE')), Column('json_value', Text(), table=<db_dbworkflowdata>), Column('aiida_obj_id', Integer(), ForeignKey('db_dbnode.id'), table=<db_dbworkflowdata>), schema=None)
__table_args__ = (UniqueConstraint(Column('parent_id', Integer(), ForeignKey('db_dbworkflow.id'), table=<db_dbworkflowdata>), Column('name', String(length=255), table=<db_dbworkflowdata>), Column('data_type', String(length=255), table=<db_dbworkflowdata>, default=ColumnDefault(u'PARAMETER'))),)
__tablename__ = 'db_dbworkflowdata'
_sa_class_manager = {'aiida_obj': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842474de30>, 'aiida_obj_id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84246945f0>, 'data_type': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84246943b0>, 'id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f842474d830>, 'json_value': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424694530>, 'name': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424694230>, 'parent': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8426b43770>, 'parent_id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424694170>, 'time': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84246942f0>, 'value_type': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424694470>}
aiida_obj
aiida_obj_id
data_type
get_or_create(**kwargs)[source]
get_value()[source]
id
json_value
name
parent
parent_id
set_value(arg)[source]
time
value_type
class aiida.backends.sqlalchemy.models.workflow.DbWorkflowStep(**kwargs)[source]

Bases: sqlalchemy.ext.declarative.api.Model

__init__(**kwargs)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

__mapper__ = <Mapper at 0x7f84246bb890; DbWorkflowStep>
__module__ = 'aiida.backends.sqlalchemy.models.workflow'
__str__() <==> str(x)[source]
__table__ = Table('db_dbworkflowstep', MetaData(bind=None), Column('id', Integer(), table=<db_dbworkflowstep>, primary_key=True, nullable=False), Column('parent_id', Integer(), ForeignKey('db_dbworkflow.id'), table=<db_dbworkflowstep>), Column('user_id', Integer(), ForeignKey('db_dbuser.id'), table=<db_dbworkflowstep>), Column('name', String(length=255), table=<db_dbworkflowstep>), Column('time', DateTime(timezone=True), table=<db_dbworkflowstep>, default=ColumnDefault(<function <lambda>>)), Column('nextcall', String(length=255), table=<db_dbworkflowstep>, default=ColumnDefault('none')), Column('state', ChoiceType(length=255), table=<db_dbworkflowstep>, default=ColumnDefault(u'CREATED')), schema=None)
__table_args__ = (UniqueConstraint(Column('parent_id', Integer(), ForeignKey('db_dbworkflow.id'), table=<db_dbworkflowstep>), Column('name', String(length=255), table=<db_dbworkflowstep>)),)
__tablename__ = 'db_dbworkflowstep'
_sa_class_manager = {'calculations': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424694a70>, 'id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424694bf0>, 'name': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424694e30>, 'nextcall': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424694fb0>, 'parent': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424694830>, 'parent_id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424694cb0>, 'state': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84246c90b0>, 'sub_workflows': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424694b30>, 'time': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424694ef0>, 'user': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f84246949b0>, 'user_id': <sqlalchemy.orm.attributes.InstrumentedAttribute object at 0x7f8424694d70>}
add_calculation(step_calculation)[source]
add_sub_workflow(sub_wf)[source]
calculations
finish()[source]
get_calculations(state=None)[source]
get_sub_workflows()[source]
id
is_finished()[source]
name
nextcall
parent
parent_id
reinitialize()[source]
remove_calculations()[source]
remove_sub_workflows()[source]
set_nextcall(_nextcall)[source]
set_state(_state)[source]
state
sub_workflows
time
user
user_id