Skip to content
Snippets Groups Projects
Commit 78a375ce authored by jakubs's avatar jakubs
Browse files

SP-243 BIS-153 : Add new script type, and a reference to script from all

Enitty types

SVN: 26390
parent 03057727
No related branches found
No related tags found
No related merge requests found
Showing
with 3359 additions and 2 deletions
......@@ -24,7 +24,7 @@ package ch.systemsx.cisd.openbis.generic.server.dataaccess.db;
public final class DatabaseVersionHolder
{
/** Current version of the database. */
private static final String DATABASE_VERSION = "117"; // S138
private static final String DATABASE_VERSION = "118"; // S138
private DatabaseVersionHolder()
{
......
......@@ -29,6 +29,8 @@ public class BasicEntityType extends AbstractType
private DatabaseInstance databaseInstance;
private Script validationScript;
public BasicEntityType()
{
}
......@@ -48,6 +50,16 @@ public class BasicEntityType extends AbstractType
this.databaseInstance = databaseInstance;
}
public Script getValidationScript()
{
return validationScript;
}
public void setValidationScript(Script validationScript)
{
this.validationScript = validationScript;
}
@Override
public boolean equals(final Object obj)
{
......
......@@ -23,7 +23,8 @@ import java.io.Serializable;
*/
public enum ScriptType implements Serializable
{
DYNAMIC_PROPERTY("Dynamic Property Evaluator"), MANAGED_PROPERTY("Managed Property Handler");
DYNAMIC_PROPERTY("Dynamic Property Evaluator"), MANAGED_PROPERTY("Managed Property Handler"),
ENTITY_VALIDATION("Entity validator");
private final String description;
......
......@@ -256,6 +256,8 @@ public final class ColumnNames
public static final String SCRIPT_ID_COLUMN = "script_id";
public static final String VALIDATION_SCRIPT_ID_COLUMN = "validation_script_id";
public static final String MODIFICATION_TIMESTAMP_COLUMN = "modification_timestamp";
public static final String VALID_FROM_TIMESTAMP_COLUMN = "valid_from_timestamp";
......
......@@ -51,6 +51,8 @@ public abstract class EntityTypePE extends AbstractTypePE
private DatabaseInstancePE databaseInstance;
private ScriptPE validationScript;
@ManyToOne(fetch = FetchType.EAGER)
@NotNull(message = ValidationMessages.DATABASE_INSTANCE_NOT_NULL_MESSAGE)
@JoinColumn(name = ColumnNames.DATABASE_INSTANCE_COLUMN, updatable = false)
......@@ -64,6 +66,18 @@ public abstract class EntityTypePE extends AbstractTypePE
this.databaseInstance = databaseInstance;
}
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = ColumnNames.VALIDATION_SCRIPT_ID_COLUMN, updatable = true)
public ScriptPE getValidationScript()
{
return validationScript;
}
public void setValidationScript(final ScriptPE validationScript)
{
this.validationScript = validationScript;
}
/**
* Creates an {@link EntityPropertyPE} from given <var>entityKind</var>.
*/
......
----------------------------------------------------------------------------
-- Purpose: Insert an initial data set into the table DATABASE_INSTANCES
----------------------------------------------------------------------------
INSERT INTO database_instances(
id
, code
, uuid
, is_original_source)
VALUES ( nextval('DATABASE_INSTANCE_ID_SEQ')
, 'SYSTEM_DEFAULT'
, 'SYSTEM_DEFAULT'
, 'T');
----------------------------------------------------------------------
-- Purpose: Insert an initial data set into the table PERSONS
-----------------------------------------------------------------------
insert into persons
(id
,first_name
,last_name
,user_id
,email
,dbin_id)
values
(nextval('PERSON_ID_SEQ')
,''
,'System User'
,'system'
,''
,(select id from database_instances where code = 'SYSTEM_DEFAULT') );
-----------------------------------------------------------------------------------
-- Purpose: Create Controlled Vocabulary STORAGE_FORMAT
-----------------------------------------------------------------------------------
insert into controlled_vocabularies
( id
, code
, is_internal_namespace
, description
, pers_id_registerer
, is_managed_internally
, dbin_id)
values (nextval('CONTROLLED_VOCABULARY_ID_SEQ')
, 'STORAGE_FORMAT'
, true
, 'The on-disk storage format of a data set'
, (select id from persons where user_id ='system')
, true
, (select id from database_instances where code = 'SYSTEM_DEFAULT'));
-----------------------------------------------------------------------------------
-- Purpose: Create Controlled Vocabulary Terms for STORAGE_FORMAT
-----------------------------------------------------------------------------------
insert into controlled_vocabulary_terms
( id
, code
, covo_id
, pers_id_registerer
, ordinal )
values (nextval('CVTE_ID_SEQ')
, 'PROPRIETARY'
, (select id from controlled_vocabularies where code = 'STORAGE_FORMAT' and is_internal_namespace = true)
, (select id from persons where user_id ='system')
, 1);
insert into controlled_vocabulary_terms
( id
, code
, covo_id
, pers_id_registerer
, ordinal)
values (nextval('CVTE_ID_SEQ')
, 'BDS_DIRECTORY'
, (select id from controlled_vocabularies where code = 'STORAGE_FORMAT' and is_internal_namespace = true)
, (select id from persons where user_id ='system')
, 2);
------------------------------------------------------------------
-- Purpose: Insert an initial data set into the table DATA_TYPES
------------------------------------------------------------------
insert into data_types
(id
,code
,description)
values
(nextval('DATA_TYPE_ID_SEQ')
,'VARCHAR'
,'Short text'
);
insert into data_types
(id
,code
,description)
values
(nextval('DATA_TYPE_ID_SEQ')
,'MULTILINE_VARCHAR'
,'Long text'
);
insert into data_types
(id
,code
,description)
values
(nextval('DATA_TYPE_ID_SEQ')
,'INTEGER'
,'Integer number'
);
insert into data_types
(id
,code
,description)
values
(nextval('DATA_TYPE_ID_SEQ')
,'REAL'
,'Real number, i.e. an inexact, variable-precision numeric type'
);
insert into data_types
(id
,code
,description)
values
(nextval('DATA_TYPE_ID_SEQ')
,'BOOLEAN'
,'True or False'
);
insert into data_types
(id
,code
,description)
values
(nextval('DATA_TYPE_ID_SEQ')
,'TIMESTAMP'
,'Both date and time. Format: yyyy-mm-dd hh:mm:ss'
);
insert into data_types
(id
,code
,description)
values
(nextval('DATA_TYPE_ID_SEQ')
,'CONTROLLEDVOCABULARY'
,'Controlled Vocabulary'
);
insert into data_types
(id
,code
,description)
values
(nextval('DATA_TYPE_ID_SEQ')
,'MATERIAL'
,'Reference to a material'
);
insert into data_types
(id
,code
,description)
values
(nextval('DATA_TYPE_ID_SEQ')
,'HYPERLINK'
,'Address of a web page'
);
insert into data_types
(id
,code
,description)
values
(nextval('DATA_TYPE_ID_SEQ')
,'XML'
,'XML document'
);
----------------------------------------------------------------------
-- Purpose: Insert an initial data set into the table PROPERTY_TYPES
-----------------------------------------------------------------------
insert into property_types
(id
,code
,description
,label
,daty_id
,pers_id_registerer
,dbin_id)
values
(nextval('PROPERTY_TYPE_ID_SEQ')
,'DESCRIPTION'
,'A Description'
,'Description'
,(select id from data_types where code ='VARCHAR')
,(select id from persons where user_id ='system')
,(select id from database_instances where code = 'SYSTEM_DEFAULT')
);
--------------------------------------------------------------------------
-- Purpose: Insert an initial data set into the table DATA_SET_TYPES
--------------------------------------------------------------------------
insert into data_set_types
(id
,code
,description
,dbin_id)
values
(nextval('DATA_SET_TYPE_ID_SEQ')
,'UNKNOWN'
,'Unknown'
,(select id from database_instances where code = 'SYSTEM_DEFAULT')
);
-------------------------------------------------------------------------
-- Purpose: Insert an initial data set into the table FILE_FORMAT_TYPES
-------------------------------------------------------------------------
insert into file_format_types
(id
,code
,description
,dbin_id)
values
(nextval('FILE_FORMAT_TYPE_ID_SEQ')
,'HDF5'
,'Hierarchical Data Format File, version 5'
,(select id from database_instances where code = 'SYSTEM_DEFAULT')
);
insert into file_format_types
(id
,code
,description
,dbin_id)
values
(nextval('FILE_FORMAT_TYPE_ID_SEQ')
,'PROPRIETARY'
,'Proprietary Format File'
,(select id from database_instances where code = 'SYSTEM_DEFAULT')
);
insert into file_format_types
(id
,code
,description
,dbin_id)
values
(nextval('FILE_FORMAT_TYPE_ID_SEQ')
,'SRF'
,'Sequence Read Format File'
,(select id from database_instances where code = 'SYSTEM_DEFAULT')
);
insert into file_format_types
(id
,code
,description
,dbin_id)
values
(nextval('FILE_FORMAT_TYPE_ID_SEQ')
,'TIFF'
,'TIFF File'
,(select id from database_instances where code = 'SYSTEM_DEFAULT')
);
insert into file_format_types
(id
,code
,description
,dbin_id)
values
(nextval('FILE_FORMAT_TYPE_ID_SEQ')
,'TSV'
,'Tab Separated Values File'
,(select id from database_instances where code = 'SYSTEM_DEFAULT')
);
insert into file_format_types
(id
,code
,description
,dbin_id)
values
(nextval('FILE_FORMAT_TYPE_ID_SEQ')
,'XML'
,'XML File'
,(select id from database_instances where code = 'SYSTEM_DEFAULT')
);
---------------------------------------------------------------------
-- Purpose: Insert an initial data set into the table LOCATOR_TYPES
---------------------------------------------------------------------
insert into locator_types
(id
,code
,description)
values
(nextval('LOCATOR_TYPE_ID_SEQ')
,'RELATIVE_LOCATION'
,'Relative Location'
);
---------------------------------------------------------------------
-- Purpose: Insert an initial data into table RELATIONSHIP_TYPES
---------------------------------------------------------------------
insert into relationship_types
(id,
code,
label,
parent_label,
child_label,
description,
pers_id_registerer,
is_managed_internally,
is_internal_namespace,
dbin_id)
values
(
nextval('RELATIONSHIP_TYPE_ID_SEQ'),
'PARENT_CHILD',
'Parent - Child',
'Parent',
'Child',
'Parent - Child relationship',
(select id from persons where user_id ='system'),
'T',
'T',
(select id from database_instances where code = 'SYSTEM_DEFAULT')
);
insert into relationship_types
(id,
code,
label,
parent_label,
child_label,
description,
pers_id_registerer,
is_managed_internally,
is_internal_namespace,
dbin_id)
values
(
nextval('RELATIONSHIP_TYPE_ID_SEQ'),
'PLATE_CONTROL_LAYOUT',
'Plate - Control Layout',
'Plate',
'Control Layout',
'Plate - Control Layout relationship',
(select id from persons where user_id ='system'),
'T',
'T',
(select id from database_instances where code = 'SYSTEM_DEFAULT')
);
This diff is collapsed.
-- Creating domains
CREATE DOMAIN AUTHORIZATION_ROLE AS VARCHAR(40) CHECK (VALUE IN ('ADMIN', 'POWER_USER', 'USER', 'OBSERVER', 'ETL_SERVER'));
CREATE DOMAIN BOOLEAN_CHAR AS BOOLEAN DEFAULT FALSE;
CREATE DOMAIN BOOLEAN_CHAR_OR_UNKNOWN AS CHAR(1) DEFAULT 'U' CHECK (VALUE IN ('F', 'T', 'U'));
CREATE DOMAIN CODE AS VARCHAR(60);
CREATE DOMAIN COLUMN_LABEL AS VARCHAR(128);
CREATE DOMAIN DATA_STORE_SERVICE_KIND AS VARCHAR(40) CHECK (VALUE IN ('PROCESSING', 'QUERIES'));
CREATE DOMAIN DATA_STORE_SERVICE_REPORTING_PLUGIN_TYPE AS VARCHAR(40) CHECK (VALUE IN ('TABLE_MODEL', 'DSS_LINK', 'AGGREGATION_TABLE_MODEL'));
CREATE DOMAIN EVENT_TYPE AS VARCHAR(40) CHECK (VALUE IN ('DELETION', 'MOVEMENT'));
CREATE DOMAIN FILE AS BYTEA;
CREATE DOMAIN FILE_NAME AS VARCHAR(100);
CREATE DOMAIN TEXT_VALUE AS TEXT;
CREATE DOMAIN OBJECT_NAME AS VARCHAR(50);
CREATE DOMAIN REAL_VALUE AS REAL;
CREATE DOMAIN TECH_ID AS BIGINT;
CREATE DOMAIN TIME_STAMP AS TIMESTAMP WITH TIME ZONE;
CREATE DOMAIN TIME_STAMP_DFL AS TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT CURRENT_TIMESTAMP;
CREATE DOMAIN USER_ID AS VARCHAR(50);
CREATE DOMAIN TITLE_100 AS VARCHAR(100);
CREATE DOMAIN GRID_EXPRESSION AS VARCHAR(2000);
CREATE DOMAIN GRID_ID AS VARCHAR(200);
CREATE DOMAIN ORDINAL_INT AS BIGINT CHECK (VALUE > 0);
CREATE DOMAIN DESCRIPTION_2000 AS VARCHAR(2000);
CREATE DOMAIN ARCHIVING_STATUS AS VARCHAR(100) CHECK (VALUE IN ('LOCKED', 'AVAILABLE', 'ARCHIVED', 'ARCHIVE_PENDING', 'UNARCHIVE_PENDING', 'BACKUP_PENDING'));
CREATE DOMAIN QUERY_TYPE AS VARCHAR(40) CHECK (VALUE IN ('GENERIC', 'EXPERIMENT', 'SAMPLE', 'DATA_SET', 'MATERIAL'));
CREATE DOMAIN ENTITY_KIND AS VARCHAR(40) CHECK (VALUE IN ('SAMPLE', 'EXPERIMENT', 'DATA_SET', 'MATERIAL'));
CREATE DOMAIN SCRIPT_TYPE AS VARCHAR(40) CHECK (VALUE IN ('DYNAMIC_PROPERTY', 'MANAGED_PROPERTY', 'ENTITY_VALIDATION'));
CREATE DOMAIN IDENTIFIER AS VARCHAR(200);
CREATE DOMAIN DATA_SET_KIND AS VARCHAR(40) CHECK (VALUE IN ('PHYSICAL', 'LINK', 'CONTAINER'));
This diff is collapsed.
-- Granting SELECT privilege to group OPENBIS_READONLY
GRANT SELECT ON SEQUENCE attachment_content_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE attachment_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE code_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE controlled_vocabulary_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE core_plugin_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE cvte_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE data_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE data_set_property_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE data_set_relationship_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE data_set_type_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE data_store_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE DATA_STORE_SERVICES_ID_SEQ TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE data_type_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE database_instance_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE dstpt_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE etpt_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE event_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE experiment_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE experiment_property_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE experiment_type_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE file_format_type_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE space_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE deletion_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE locator_type_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE material_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE material_property_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE material_type_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE mtpt_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE perm_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE person_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE project_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE property_type_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE role_assignment_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE sample_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE sample_property_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE sample_type_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE stpt_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE authorization_group_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE filter_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE query_id_seq TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE POST_REGISTRATION_DATASET_QUEUE_ID_SEQ TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE ENTITY_OPERATIONS_LOG_ID_SEQ TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE EXPERIMENT_RELATIONSHIPS_HISTORY_ID_SEQ TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE SAMPLE_RELATIONSHIPS_HISTORY_ID_SEQ TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE DATA_SET_RELATIONSHIPS_HISTORY_ID_SEQ TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE PROJECT_RELATIONSHIPS_HISTORY_ID_SEQ TO GROUP OPENBIS_READONLY;
GRANT SELECT ON SEQUENCE EXTERNAL_DATA_MANAGEMENT_SYSTEM_ID_SEQ TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE attachment_contents TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE attachments TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE controlled_vocabularies TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE controlled_vocabulary_terms TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE core_plugins TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE data_all TO GROUP OPENBIS_READONLY;
GRANT SELECT ON data TO GROUP OPENBIS_READONLY;
GRANT SELECT ON data_deleted TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE data_set_properties TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE data_set_properties_history TO GROUP OPENBIS_READONLY;
GRANT SELECT ON data_set_relationships TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE data_set_relationships_all TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE data_set_type_property_types TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE data_set_types TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE data_stores TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE data_types TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE DATA_STORE_SERVICES TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE DATA_STORE_SERVICE_DATA_SET_TYPES TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE database_instances TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE database_version_logs TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE events TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE experiment_properties TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE experiment_properties_history TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE experiment_type_property_types TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE experiment_types TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE experiments_all TO GROUP OPENBIS_READONLY;
GRANT SELECT ON experiments TO GROUP OPENBIS_READONLY;
GRANT SELECT ON experiments_deleted TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE external_data TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE file_format_types TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE spaces TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE deletions TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE locator_types TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE material_properties TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE material_properties_history TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE material_type_property_types TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE material_types TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE materials TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE persons TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE projects TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE property_types TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE role_assignments TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE sample_properties TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE sample_properties_history TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE sample_type_property_types TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE sample_types TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE samples_all TO GROUP OPENBIS_READONLY;
GRANT SELECT ON samples TO GROUP OPENBIS_READONLY;
GRANT SELECT ON samples_deleted TO GROUP OPENBIS_READONLY;
GRANT SELECT ON sample_relationships TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE sample_relationships_all TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE authorization_groups TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE authorization_group_persons TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE filters TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE queries TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE scripts TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE POST_REGISTRATION_DATASET_QUEUE TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE ENTITY_OPERATIONS_LOG TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE EXPERIMENT_RELATIONSHIPS_HISTORY TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE SAMPLE_RELATIONSHIPS_HISTORY TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE DATA_SET_RELATIONSHIPS_HISTORY TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE PROJECT_RELATIONSHIPS_HISTORY TO GROUP OPENBIS_READONLY;
GRANT SELECT ON sample_history_view TO GROUP OPENBIS_READONLY;
GRANT SELECT ON data_set_history_view TO GROUP OPENBIS_READONLY;
GRANT SELECT ON experiment_history_view TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE EXTERNAL_DATA_MANAGEMENT_SYSTEMS TO GROUP OPENBIS_READONLY;
GRANT SELECT ON TABLE LINK_DATA TO GROUP OPENBIS_READONLY;
-- Migration from 117 to 118
--
-- Create a new script type - entity type validation
-- add new field validation_script_id to all entity type tables
--
ALTER DOMAIN SCRIPT_TYPE DROP CONSTRAINT script_type_check;
ALTER DOMAIN SCRIPT_TYPE ADD CHECK (VALUE IN ('DYNAMIC_PROPERTY', 'MANAGED_PROPERTY', 'ENTITY_VALIDATION'));
ALTER TABLE DATA_SET_TYPES ADD COLUMN VALIDATION_SCRIPT_ID TECH_ID;
ALTER TABLE DATA_SET_TYPES ADD CONSTRAINT DSTY_SCRIPT_FK FOREIGN KEY (VALIDATION_SCRIPT_ID) REFERENCES SCRIPTS(ID);
ALTER TABLE EXPERIMENT_TYPES ADD COLUMN VALIDATION_SCRIPT_ID TECH_ID;
ALTER TABLE EXPERIMENT_TYPES ADD CONSTRAINT EXTY_SCRIPT_FK FOREIGN KEY (VALIDATION_SCRIPT_ID) REFERENCES SCRIPTS(ID);
ALTER TABLE MATERIAL_TYPES ADD COLUMN VALIDATION_SCRIPT_ID TECH_ID;
ALTER TABLE MATERIAL_TYPES ADD CONSTRAINT MATY_SCRIPT_FK FOREIGN KEY (VALIDATION_SCRIPT_ID) REFERENCES SCRIPTS(ID);
ALTER TABLE SAMPLE_TYPES ADD COLUMN VALIDATION_SCRIPT_ID TECH_ID;
ALTER TABLE SAMPLE_TYPES ADD CONSTRAINT SATY_SCRIPT_FK FOREIGN KEY (VALIDATION_SCRIPT_ID) REFERENCES SCRIPTS(ID);
1 \\x636f646509555345522e6465736372697074696f6e0973747564795f4f626a6563740973747564795f6f626a6563745f547970650970726f6a6563740970726f63657373696e675f696e737472756374696f6e730963656c6c5f706c617465730a4558503509412073696d706c65206578706572696d656e7409564952555331095649525553095959093e2070726f63657373696e672d696e737472756374696f6e732e747874093e2063656c6c506c617465732e7478740a4558503609616e6f74686572206578706572696d656e7409564952555331095649525553096b6f6b6f09090a
2 \\x636f646509555345522e6465736372697074696f6e0973747564795f4f626a6563740973747564795f6f626a6563745f547970650970726f6a6563740970726f63657373696e675f696e737472756374696f6e730963656c6c5f706c617465730a4558503509412073696d706c65206578706572696d656e7409564952555331095649525553095959093e2070726f63657373696e672d696e737472756374696f6e732e747874093e2063656c6c506c617465732e7478740a4558503609616e6f74686572206578706572696d656e7409564952555331095649525553096b6f6b6f09090a
3 \\x636f646509555345522e6465736372697074696f6e0973747564795f4f626a6563740973747564795f6f626a6563745f547970650970726f6a6563740970726f63657373696e675f696e737472756374696f6e730963656c6c5f706c617465730a4558503509412073696d706c65206578706572696d656e7409564952555331095649525553095959093e2070726f63657373696e672d696e737472756374696f6e732e747874093e2063656c6c506c617465732e7478740a4558503609616e6f74686572206578706572696d656e7409564952555331095649525553096b6f6b6f09090a
4 \\x636f646509555345522e6465736372697074696f6e0973747564795f4f626a6563740973747564795f6f626a6563745f547970650970726f6a6563740970726f63657373696e675f696e737472756374696f6e730963656c6c5f706c617465730a4558503509412073696d706c65206578706572696d656e7409564952555331095649525553095959093e2070726f63657373696e672d696e737472756374696f6e732e747874093e2063656c6c506c617465732e7478740a4558503609616e6f74686572206578706572696d656e7409564952555331095649525553096b6f6b6f09090a
5 \\x636f646509555345522e6465736372697074696f6e0973747564795f4f626a6563740973747564795f6f626a6563745f547970650970726f6a6563740970726f63657373696e675f696e737472756374696f6e730963656c6c5f706c617465730a4558503509412073696d706c65206578706572696d656e7409564952555331095649525553095959093e2070726f63657373696e672d696e737472756374696f6e732e747874093e2063656c6c506c617465732e7478740a4558503609616e6f74686572206578706572696d656e7409564952555331095649525553096b6f6b6f09090a
6 \\x33564350310a33564350320a3356435033
7 \\x616c610a6d610a6b6f74610a610a6b6f740a6a6573740a6964696f7461
8 \\x33564350310a33564350320a3356435033
1 2 exampleExperiments.txt 2008-12-10 13:48:17.996703+01 1 2 1 \N \N \N \N
2 2 exampleExperiments.txt 2008-12-10 13:49:14.564025+01 2 2 2 \N \N \N \N
3 2 exampleExperiments.txt 2008-12-10 13:49:20.23603+01 3 2 3 \N \N \N \N
4 2 exampleExperiments.txt 2008-12-10 13:49:27.90141+01 4 2 4 \N \N \N \N
5 8 exampleExperiments.txt 2008-12-10 13:49:48.879301+01 1 2 5 \N \N \N \N
6 8 cellPlates.txt 2008-12-10 13:51:10.050748+01 1 2 6 \N \N \N \N
7 \N sampleHistory.txt 2009-06-09 17:00:00+02 1 2 7 987 \N \N \N
8 22 cellPlates.txt 2008-12-10 13:51:10.050748+01 1 2 8 \N \N \N \N
1 PLATE_GEOMETRY The geometry or dimensions of a plate 2008-11-05 09:18:00.622+01 1 t t 1 2009-03-23 15:34:44.462776+01 t \N
2 STORAGE_FORMAT The on-disk storage format of a data set 2008-11-05 09:18:00.622+01 1 t t 1 2009-03-23 15:34:44.462776+01 t \N
3 ORGANISM available-organism 2008-11-05 09:18:30.327+01 2 f f 1 2009-03-23 15:34:44.462776+01 t \N
4 GENDER \N 2008-11-05 09:18:30.421+01 2 f f 1 2009-03-23 15:34:44.462776+01 t \N
5 HUMAN Humans 2008-11-05 09:18:30.983+01 2 f f 1 2009-03-23 15:34:44.462776+01 t \N
1 96_WELLS_8X12 2008-11-05 09:18:00.622+01 1 1 \N \N 1 t
2 384_WELLS_16X24 2008-11-05 09:18:00.622+01 1 1 \N \N 2 t
3 1536_WELLS_32X48 2008-11-05 09:18:00.622+01 1 1 \N \N 3 t
4 PROPRIETARY 2008-11-05 09:18:00.622+01 2 1 \N \N 1 t
5 BDS_DIRECTORY 2008-11-05 09:18:00.622+01 2 1 \N \N 2 t
6 RAT 2008-11-05 09:18:30.327+01 3 2 \N \N 1 t
7 DOG 2008-11-05 09:18:30.327+01 3 2 \N \N 2 t
8 HUMAN 2008-11-05 09:18:30.327+01 3 2 \N \N 3 t
9 GORILLA 2008-11-05 09:18:30.327+01 3 2 \N \N 4 t
10 FLY 2008-11-05 09:18:30.327+01 3 2 \N \N 5 t
11 MALE 2008-11-05 09:18:30.421+01 4 2 \N \N 1 t
12 FEMALE 2008-11-05 09:18:30.421+01 4 2 \N \N 2 t
13 MAN 2008-11-05 09:18:30.983+01 5 2 \N \N 1 t
14 WOMAN 2008-11-05 09:18:30.983+01 5 2 \N \N 2 t
15 CHILD 2008-11-05 09:18:31.061+01 5 2 \N \N 3 t
2 20081105092158673-1 2 \N 2008-11-05 09:21:58.688+01 2008-11-05 09:21:58.798+01 f t 2009-03-23 15:34:44.462776+01 2 1 f 982 \N \N \N 1 \N
4 20081105092159188-3 2 \N 2008-11-05 09:21:59.203+01 2008-11-05 09:21:59.313+01 f t 2009-03-23 15:34:44.462776+01 2 1 t \N \N \N \N \N \N
5 20081105092159111-1 2 \N 2008-11-05 09:21:59.203+01 2009-02-09 12:20:21.646654+01 f t 2009-03-23 15:34:44.462776+01 18 1 f 1042 \N \N \N \N \N
6 20081105092159222-2 2 \N 2008-11-05 09:21:59.203+01 2009-02-09 12:21:11.479816+01 f t 2009-03-23 15:34:44.462776+01 19 1 f 1043 \N \N \N \N \N
7 20081105092159333-3 2 \N 2008-11-05 09:21:59.203+01 2009-02-09 12:21:47.815468+01 f t 2009-03-23 15:34:44.462776+01 20 1 f 1044 \N \N \N \N \N
8 20081105092259000-8 2 \N 2008-11-05 09:22:59.203+01 2008-11-05 09:22:59.313+01 f t 2009-03-23 15:34:44.462776+01 8 1 t \N \N \N \N \N \N
9 20081105092259000-9 2 \N 2008-11-05 09:22:59.203+01 2008-11-05 09:22:59.313+01 f t 2009-03-23 15:34:44.462776+01 8 1 t \N \N \N \N \N \N
10 20081105092259900-0 2 \N 2008-11-05 09:22:59.203+01 2008-11-05 09:22:59.313+01 f t 2009-03-23 15:34:44.462776+01 8 1 t \N \N \N \N \N \N
11 20081105092259900-1 2 \N 2008-11-05 09:22:59.203+01 2008-11-05 09:22:59.313+01 f t 2009-03-23 15:34:44.462776+01 8 1 t \N \N \N \N \N \N
12 20081105092359990-2 2 \N 2008-11-05 09:22:59.203+01 2008-11-05 09:22:59.313+01 f t 2009-03-23 15:34:44.462776+01 8 1 t \N \N \N \N \N \N
13 20110509092359990-10 4 \N 2011-05-09 10:22:59.203+02 2011-05-09 10:22:59.313+02 f t 2011-05-09 16:34:44.462776+02 8 1 t \N \N \N \N \N \N
14 20110509092359990-11 2 \N 2011-05-09 10:22:59.203+02 2011-05-09 10:22:59.313+02 f t 2011-05-09 16:34:44.462776+02 8 1 t \N \N 1 13 \N \N
15 20110509092359990-12 2 \N 2011-05-09 10:22:59.203+02 2011-05-09 10:22:59.313+02 f t 2011-05-09 16:34:44.462776+02 8 1 t \N \N 2 13 \N \N
17 20110805092359990-17 2 \N 2008-11-05 09:21:59.203+01 2009-02-09 12:21:47.815468+01 f t 2009-03-23 15:34:44.462776+01 20 1 f 1044 \N \N \N \N \N
18 20081105092259000-18 2 \N 2008-11-05 09:22:59.203+01 2008-11-05 09:22:59.313+01 f t 2009-03-23 15:34:44.462776+01 8 1 t \N \N \N \N \N \N
19 20081105092259000-19 4 \N 2008-11-05 09:22:59.203+01 2008-11-05 09:22:59.313+01 f t 2009-03-23 15:34:44.462776+01 8 1 t \N 2 \N \N \N \N
20 20081105092259000-20 2 \N 2008-11-05 09:22:59.203+01 2008-11-05 09:22:59.313+01 f t 2009-03-23 15:34:44.462776+01 8 1 t \N 2 \N \N \N \N
21 20081105092259000-21 2 \N 2008-11-05 09:22:59.203+01 2008-11-05 09:22:59.313+01 f t 2009-03-23 15:34:44.462776+01 8 1 t \N 2 \N \N \N \N
22 20120619092259000-22 2 \N 2008-11-05 09:22:59.203+01 2008-11-05 09:22:59.313+01 f t 2009-03-23 15:34:44.462776+01 23 1 t \N 2 \N \N \N \N
23 20120628092259000-23 5 \N 2008-11-05 09:22:59.203+01 2008-11-05 09:22:59.313+01 f t 2009-03-23 15:34:44.462776+01 23 1 t \N 2 \N \N \N \N
24 20120628092259000-24 5 \N 2008-11-05 09:22:59.203+01 2008-11-05 09:22:59.313+01 f t 2009-03-23 15:34:44.462776+01 23 1 t \N 2 \N \N \N \N
25 20120628092259000-25 5 \N 2008-11-05 09:22:59.203+01 2008-11-05 09:22:59.313+01 f t 2009-03-23 15:34:44.462776+01 23 1 t \N 2 \N \N \N \N
1 2 1 no comment \N \N 2 2009-04-24 14:45:06.348563+02 2009-04-24 14:45:07.085+02 1
2 4 1 no comment \N \N 2 2009-04-24 14:45:06.348563+02 2009-04-24 14:45:07.089+02 1
3 5 1 no comment \N \N 2 2009-04-24 14:45:06.348563+02 2009-04-24 14:45:07.09+02 1
4 6 1 no comment \N \N 2 2009-04-24 14:45:06.348563+02 2009-04-24 14:45:07.09+02 1
5 7 1 no comment \N \N 2 2009-04-24 14:45:06.348563+02 2009-04-24 14:45:07.091+02 1
6 8 1 no comment \N \N 2 2009-04-24 14:45:06.348563+02 2009-04-24 14:45:07.091+02 1
7 9 1 no comment \N \N 2 2009-04-24 14:45:06.348563+02 2009-04-24 14:45:07.091+02 1
8 10 1 no comment \N \N 2 2009-04-24 14:45:06.348563+02 2009-04-24 14:45:07.091+02 1
9 11 1 no comment \N \N 2 2009-04-24 14:45:06.348563+02 2009-04-24 14:45:07.091+02 1
10 12 1 no comment \N \N 2 2009-04-24 14:45:06.348563+02 2009-04-24 14:45:07.091+02 1
11 14 1 non-virtual comment \N \N 2 2009-04-24 14:45:06.348563+02 2009-04-24 14:45:07.091+02 1
12 15 1 non-virtual comment \N \N 2 2009-04-24 14:45:06.348563+02 2009-04-24 14:45:07.091+02 1
13 5 4 \N 12 \N 2 2009-09-15 08:45:48.059548+02 2009-09-15 08:45:48.639+02 1
14 5 3 \N \N 22 2 2009-09-15 08:45:48.059548+02 2009-09-15 08:45:48.64+02 1
15 5 2 \N \N 2498 2 2009-09-15 08:45:48.059548+02 2009-09-15 08:45:48.64+02 1
19 17 1 no comment \N \N 2 2009-04-24 14:45:06.348563+02 2009-04-24 14:45:07.091+02 1
20 18 1 no comment \N \N 2 2009-04-24 14:45:06.348563+02 2009-04-24 14:45:07.091+02 1
7 8 \N \N 2012-05-31 15:01:16.531617+02 2012-05-31 15:01:16.531617+02
5 9 \N \N 2012-05-31 15:01:16.531617+02 2012-05-31 15:01:16.531617+02
6 9 \N \N 2012-05-31 15:01:16.531617+02 2012-05-31 15:01:16.531617+02
7 9 \N \N 2012-05-31 15:01:16.531617+02 2012-05-31 15:01:16.531617+02
9 10 \N \N 2012-05-31 15:01:16.531617+02 2012-05-31 15:01:16.531617+02
9 11 \N \N 2012-05-31 15:01:16.531617+02 2012-05-31 15:01:16.531617+02
10 12 \N \N 2012-05-31 15:01:16.531617+02 2012-05-31 15:01:16.531617+02
11 12 \N \N 2012-05-31 15:01:16.531617+02 2012-05-31 15:01:16.531617+02
17 18 \N \N 2012-05-31 15:01:16.531617+02 2012-05-31 15:01:16.531617+02
2 4 1 \N 2012-05-31 15:01:16.531617+02 2012-05-31 15:01:16.531617+02
2 9 1 \N 2012-05-31 15:01:16.531617+02 2012-05-31 15:01:16.531617+02
19 20 \N \N 2012-05-31 15:01:16.531617+02 2012-05-31 15:01:16.531617+02
19 21 \N \N 2012-05-31 15:01:16.531617+02 2012-05-31 15:01:16.531617+02
1 2 14 t f 2 2009-04-24 14:45:06.348563+02 \N 1 \N t
2 2 26 f f 2 2009-09-15 08:44:10.351183+02 \N 2 \N t
3 2 25 f f 2 2009-09-15 08:44:16.365221+02 \N 3 \N t
4 2 13 f f 2 2009-09-15 08:44:36.342115+02 \N 4 \N t
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment