add114da1e653777d721d7536cb2ffb09524cb18
[so.git] /
1 -- MySQL Workbench Synchronization <<<1
2 -- Generated: April 2017
3 -- MariaDB-upgrade-1707.40_drop1_to_1707.41_drop1.sql
4
5 -- Turn off validation and alter schema <<<1
6 BEGIN;
7
8 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
9 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
10 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';
11
12 ALTER SCHEMA `mso_catalog`  DEFAULT CHARACTER SET latin1  DEFAULT COLLATE latin1_swedish_ci ;
13 -- >>>1
14
15 -- FOREIGN KEYS <<<1
16 ALTER TABLE `mso_catalog`.`heat_template`  --                                      K <<<2
17 DROP FOREIGN KEY `FK_ek5sot1q07taorbdmkvnveu98`;
18
19 ALTER TABLE `mso_catalog`.`heat_template_params`  --                               K <<<2
20 DROP FOREIGN KEY `FK_8sxvm215cw3tjfh3wni2y3myx`;
21
22 ALTER TABLE `mso_catalog`.`service_recipe`  --                                     K <<<2
23 DROP FOREIGN KEY `FK_kv13yx013qtqkn94d5gkwbu3s`;
24
25 ALTER TABLE `mso_catalog`.`network_resource_customization`  --                     K <<<2
26 DROP FOREIGN KEY `fk_network_resource_customization__network_resource__id`;
27 -- >>>1
28
29 UPDATE mso_catalog.heat_environment -- 7 UUID()                                    * <<<1
30 SET
31         description = CONCAT(description, '1707MIGRATED'),
32         asdc_uuid = (SELECT UUID())
33 WHERE
34         asdc_uuid LIKE "MAN%" OR asdc_uuid is NULL OR asdc_uuid = '';
35
36 -- DEBUGGING E2E <<<1
37 -- ERROR 1062 (23000) at line 40: Duplicate entry '53a70d06-f598-4375-9c3c-fcca1dea3f51' for key 'PRIMARY'
38 DELETE FROM `mso_catalog`.`heat_environment` where `ASDC_UUID` IN ('53a70d06-f598-4375-9c3c-fcca1dea3f51', 'adc9f8d5-e9d2-4180-994d-cbd59d6eb405');
39 -- >>>1
40
41 -- heat_environment -                                                              * <<<1
42 CREATE TABLE `mso_catalog`.`hetemp` ( -- <<<2
43         `id` int(11),
44         `ARTIFACT_UUID` VARCHAR(200)
45    ) ENGINE = InnoDB DEFAULT CHARACTER SET = latin1;
46
47 INSERT INTO mso_catalog.hetemp SELECT id, asdc_uuid artifact_uuid FROM mso_catalog.heat_environment; -- <<<2
48
49 ALTER TABLE `mso_catalog`.`heat_environment`  -- <<<2
50 DROP COLUMN `ASDC_LABEL`,
51 DROP COLUMN `ASDC_RESOURCE_NAME`,
52 DROP COLUMN `id`,
53 CHANGE COLUMN `ASDC_UUID` `ARTIFACT_UUID` VARCHAR(200) NOT NULL FIRST,
54 CHANGE COLUMN `ARTIFACT_CHECKSUM` `ARTIFACT_CHECKSUM` VARCHAR(200) NOT NULL DEFAULT 'MANUAL RECORD' AFTER `BODY`,
55 CHANGE COLUMN `ENVIRONMENT` `BODY` LONGTEXT NOT NULL ,
56 DROP PRIMARY KEY,
57 ADD PRIMARY KEY (`ARTIFACT_UUID`),
58 DROP INDEX `UK_a4jkta7hgpa99brceaxasnfqp` ;
59 -- >>>1
60
61 UPDATE mso_catalog.heat_files -- 7 UUID()                                          * <<<1
62 SET
63         description = CONCAT(description, '1707MIGRATED'),
64         asdc_uuid = (SELECT UUID())
65 WHERE
66         asdc_uuid LIKE "MAN%" OR asdc_uuid is NULL OR asdc_uuid = '';
67
68 ALTER TABLE `mso_catalog`.`heat_files`  --                                         ^ <<<1
69 MODIFY `id` INT,
70 DROP COLUMN `ASDC_RESOURCE_NAME`,
71 DROP COLUMN `ASDC_LABEL`,
72 DROP COLUMN `VNF_RESOURCE_ID`,
73 CHANGE COLUMN `ASDC_UUID` `ARTIFACT_UUID` VARCHAR(200) NOT NULL FIRST,
74 CHANGE COLUMN `FILE_NAME` `NAME` VARCHAR(200) NOT NULL AFTER `ARTIFACT_UUID`,
75 CHANGE COLUMN `VERSION` `VERSION` VARCHAR(20) NOT NULL AFTER `NAME`,
76 CHANGE COLUMN `ARTIFACT_CHECKSUM` `ARTIFACT_CHECKSUM` VARCHAR(200) NOT NULL DEFAULT 'MANUAL RECORD' AFTER `BODY`,
77 CHANGE COLUMN `FILE_BODY` `BODY` LONGTEXT NOT NULL ,
78 DROP PRIMARY KEY,
79 ADD PRIMARY KEY (`ARTIFACT_UUID`),
80 DROP INDEX `UK_m23vfqc1tdvj7d6f0jjo4cl7e` ;
81
82 CREATE TABLE IF NOT EXISTS `mso_catalog`.`temp_network_heat_template_lookup` ( --  V <<<1
83   `NETWORK_RESOURCE_MODEL_NAME` VARCHAR(200) NOT NULL,
84   `HEAT_TEMPLATE_ARTIFACT_UUID` VARCHAR(200) NOT NULL,
85   `AIC_VERSION_MIN` VARCHAR(20) NOT NULL,
86   `AIC_VERSION_MAX` VARCHAR(20) NULL DEFAULT NULL,
87   PRIMARY KEY (`NETWORK_RESOURCE_MODEL_NAME`),
88   INDEX `fk_temp_network_heat_template_lookup__heat_template1_idx` (`HEAT_TEMPLATE_ARTIFACT_UUID` ASC)
89 ) ENGINE = InnoDB DEFAULT CHARACTER SET = latin1;
90
91 UPDATE mso_catalog.heat_template -- 7 UUID()                                       V <<<1
92 SET
93         description = CONCAT(description, '1707MIGRATED'),
94         asdc_uuid = (SELECT UUID())
95 WHERE
96         asdc_uuid LIKE "MAN%" OR asdc_uuid is NULL OR asdc_uuid = ''; 
97
98 -- delete where network_resource_model_name is CONTRAIL_EXTERNAL or CONTRAIL_SHARED. Q spec 5/25
99 INSERT INTO mso_catalog.temp_network_heat_template_lookup ( -- 3sc                 * b4 heat_template network_resource <<<1
100         network_resource_model_name,
101         heat_template_artifact_uuid,
102         aic_version_min,
103         aic_version_max
104 )
105         SELECT 
106                 a.network_type,
107                 b.asdc_uuid,
108                 a.aic_version_min,
109                 a.aic_version_max
110         FROM
111                 mso_catalog.network_resource a,
112                 mso_catalog.heat_template b
113         WHERE
114                 a.template_id = b.id
115                 AND a.network_type NOT IN ('CONTRAIL_EXTERNAL', 'CONTRAIL_SHARED');
116
117 ALTER TABLE `mso_catalog`.`heat_template`  --                                      ^ <<<1
118 MODIFY `id` INT,
119 DROP COLUMN `ASDC_LABEL`,
120 DROP COLUMN `CHILD_TEMPLATE_ID`,
121 DROP COLUMN `TEMPLATE_PATH`,
122 DROP COLUMN `ASDC_RESOURCE_NAME`,
123 CHANGE COLUMN `ASDC_UUID` `ARTIFACT_UUID` VARCHAR(200) NOT NULL FIRST,
124 CHANGE COLUMN `DESCRIPTION` `DESCRIPTION` VARCHAR(1200) NULL DEFAULT NULL AFTER `VERSION`,
125 CHANGE COLUMN `ARTIFACT_CHECKSUM` `ARTIFACT_CHECKSUM` VARCHAR(200) NOT NULL DEFAULT 'MANUAL RECORD' AFTER `TIMEOUT_MINUTES`,
126 CHANGE COLUMN `TEMPLATE_NAME` `NAME` VARCHAR(200) NOT NULL ,
127 CHANGE COLUMN `TEMPLATE_BODY` `BODY` LONGTEXT NOT NULL ,
128 DROP PRIMARY KEY,
129 ADD PRIMARY KEY (`ARTIFACT_UUID`),
130 DROP INDEX `FK_ek5sot1q07taorbdmkvnveu98` ,
131 DROP INDEX `UK_k1tq7vblss8ykiwhiltnkg6no` ;
132
133 ALTER TABLE `mso_catalog`.`temp_network_heat_template_lookup`  -- after alter heat_template            ^ <<<1
134   ADD CONSTRAINT `fk_temp_network_heat_template_lookup__heat_template1`
135     FOREIGN KEY (`HEAT_TEMPLATE_ARTIFACT_UUID`)
136     REFERENCES `mso_catalog`.`heat_template` (`ARTIFACT_UUID`)
137     ON DELETE RESTRICT
138     ON UPDATE CASCADE;
139 -- >>>1
140
141 -- heat_nested_template AFTER heat_template                                        * <<<1
142 CREATE TABLE `mso_catalog`.`hnttemp` ( -- <<<2
143   `PARENT_HEAT_TEMPLATE_UUID` VARCHAR(200) NOT NULL ,
144   `CHILD_HEAT_TEMPLATE_UUID` VARCHAR(200) NOT NULL,
145   `PROVIDER_RESOURCE_FILE` varchar(100) DEFAULT NULL
146    )    
147 ENGINE = InnoDB
148 DEFAULT CHARACTER SET = latin1;
149         
150 INSERT INTO mso_catalog.hnttemp ( -- <<<2
151     PARENT_HEAT_TEMPLATE_UUID,
152     CHILD_HEAT_TEMPLATE_UUID,
153     PROVIDER_RESOURCE_FILE
154 )       
155     SELECT
156         ht1.artifact_uuid PARENT_HEAT_TEMPLATE_UUID,
157         ht2.artifact_uuid CHILD_HEAT_TEMPLATE_UUID,
158         a.PROVIDER_RESOURCE_FILE
159         FROM 
160         (SELECT * FROM mso_catalog.heat_nested_template) AS a
161         JOIN (SELECT * FROM mso_catalog.heat_template) AS ht1 ON a.parent_template_id = ht1.id
162         JOIN (SELECT * FROM mso_catalog.heat_template) AS ht2 ON a.child_template_id = ht2.id;
163
164 DELETE FROM mso_catalog.heat_nested_template; -- <<<2
165
166 ALTER TABLE `mso_catalog`.`heat_nested_template`  -- <<<2
167 CHANGE COLUMN `PARENT_TEMPLATE_ID` `PARENT_HEAT_TEMPLATE_UUID` VARCHAR(200) NOT NULL ,
168 CHANGE COLUMN `CHILD_TEMPLATE_ID` `CHILD_HEAT_TEMPLATE_UUID` VARCHAR(200) NOT NULL ,
169 ADD INDEX `fk_heat_nested_template__heat_template2_idx` (`CHILD_HEAT_TEMPLATE_UUID` ASC);
170
171 INSERT INTO mso_catalog.heat_nested_template SELECT * FROM mso_catalog.hnttemp; -- <<<2
172
173 DROP TABLE IF EXISTS mso_catalog.hnttemp; -- <<<2
174
175 -- heat_template_params  AFTER heat_template                                       ^ <<<1
176 CREATE TABLE IF NOT EXISTS `mso_catalog`.`htptemp` ( -- <<<2
177   `PARAM_NAME` varchar(100) NOT NULL,
178   `IS_REQUIRED` bit(1) NOT NULL,
179   `PARAM_TYPE` varchar(20) DEFAULT NULL,
180   `PARAM_ALIAS` varchar(45) DEFAULT NULL,
181   `HEAT_TEMPLATE_ARTIFACT_UUID` VARCHAR(200) NOT NULL
182 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
183
184 INSERT INTO mso_catalog.htptemp ( -- <<<2
185   PARAM_NAME,
186   IS_REQUIRED,
187   PARAM_TYPE,
188   PARAM_ALIAS,
189   HEAT_TEMPLATE_ARTIFACT_UUID
190 )
191         SELECT
192                 a.PARAM_NAME,
193                 a.IS_REQUIRED,
194                 a.PARAM_TYPE,
195                 a.PARAM_ALIAS,
196                 ht1.artifact_uuid HEAT_TEMPLATE_ARTIFACT_UUID
197                 FROM
198                 (SELECT * FROM mso_catalog.heat_template_params) AS a
199                 JOIN (SELECT * FROM mso_catalog.heat_template) AS ht1 ON a.heat_template_id = ht1.id;
200
201 DELETE FROM mso_catalog.heat_template_params; -- <<<2
202
203 ALTER TABLE `mso_catalog`.`heat_template_params`  -- <<<2
204 DROP COLUMN `id`,
205 CHANGE COLUMN `HEAT_TEMPLATE_ID` `HEAT_TEMPLATE_ARTIFACT_UUID` VARCHAR(200) NOT NULL ,
206 DROP PRIMARY KEY,
207 ADD PRIMARY KEY (`HEAT_TEMPLATE_ARTIFACT_UUID`, `PARAM_NAME`),
208 DROP INDEX `UK_pj3cwbmewecf0joqv2mvmbvw3` ;
209
210 INSERT INTO mso_catalog.heat_template_params ( -- <<<2
211   PARAM_NAME,
212   IS_REQUIRED,
213   PARAM_TYPE,
214   PARAM_ALIAS,
215   HEAT_TEMPLATE_ARTIFACT_UUID
216 )
217         SELECT
218                 a.PARAM_NAME,
219                 a.IS_REQUIRED,
220                 a.PARAM_TYPE,
221                 a.PARAM_ALIAS,
222                 a.HEAT_TEMPLATE_ARTIFACT_UUID
223                 FROM mso_catalog.htptemp a;
224
225 DROP TABLE IF EXISTS mso_catalog.htptemp; -- <<<2
226
227 -- >>>1
228
229 ALTER TABLE `mso_catalog`.`network_recipe`  -- <<<1
230 CHANGE COLUMN `NETWORK_TYPE` `MODEL_NAME` VARCHAR(20) NOT NULL ;
231
232 -- 1, 2 UPDATE SERVICE Before SERVICE                                              * <<<1
233 UPDATE `mso_catalog`.`service_recipe`
234 JOIN (
235         SELECT 
236                 MAX(CAST((COALESCE(NULLIF(version_str, ''), '1.0')) AS DECIMAL(5,2))),
237                 id,
238                 service_name
239         FROM mso_catalog.service
240         WHERE service_name = "WAN Bonding" 
241 ) a 
242 ON a.service_name = "WAN Bonding"
243 SET
244         `service_id` = a.id, 
245         `action` = CASE
246                 WHEN action = 'Layer3AddBonding' then 'createInstance'
247                 WHEN action = 'Layer3DeleteBonding' then 'deleteInstance'
248         END
249 WHERE
250         `action` IN ('Layer3AddBonding', 'Layer3DeleteBonding');
251
252 UPDATE mso_catalog.service -- 2 <<<2
253 SET
254         service_name_version_id = (SELECT UUID()),
255         description = CONCAT(description, '1707MIGRATED')
256 WHERE
257         service_name_version_id LIKE "MAN%" OR service_name_version_id is NULL OR service_name_version_id = '';
258
259 UPDATE mso_catalog.service
260 SET
261         model_invariant_uuid = (SELECT UUID()),
262         description = CONCAT(description, '1707MIGRATED')
263 WHERE
264         model_invariant_uuid LIKE 'MAN%' OR model_invariant_uuid is NULL OR model_invariant_uuid = '';
265
266 -- service - from temporary table servtemp                                         ^ <<<1
267 CREATE TABLE `mso_catalog`.`servtemp` ( -- <<<2
268         `id` int(11),
269         `MODEL_NAME` varchar(40) DEFAULT NULL,
270         `MODEL_VERSION` varchar(20) NOT NULL,
271         `DESCRIPTION` varchar(1200) DEFAULT NULL,
272         `CREATION_TIMESTAMP` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
273         `MODEL_UUID` varchar(50) NOT NULL DEFAULT 'MANUAL_RECORD',
274         `MODEL_INVARIANT_UUID` varchar(200) NOT NULL DEFAULT 'MANUAL_RECORD'
275    ) ENGINE = InnoDB DEFAULT CHARACTER SET = latin1;
276
277 INSERT INTO mso_catalog.servtemp ( -- <<<2
278   id,
279   MODEL_NAME,
280   MODEL_VERSION,
281   DESCRIPTION,
282   CREATION_TIMESTAMP,
283   MODEL_UUID,
284   MODEL_INVARIANT_UUID
285 )
286         SELECT
287           id,
288           SERVICE_NAME,
289           VERSION_STR,
290           DESCRIPTION,
291           CREATION_TIMESTAMP,
292           SERVICE_NAME_VERSION_ID,
293           MODEL_INVARIANT_UUID
294         FROM mso_catalog.service 
295         WHERE SERVICE_NAME NOT IN ('Layer3AddBonding', 'Layer3DeleteBonding');
296         
297 DELETE FROM mso_catalog.service; -- <<<2
298
299 ALTER  TABLE `mso_catalog`.`service_to_allotted_resources` -- <<<2
300         DROP FOREIGN KEY `fk_service_to_allotted_resources__service__service_name_ver_id`;
301
302 ALTER  TABLE `mso_catalog`.`service_to_networks` -- <<<2
303         DROP FOREIGN KEY `fk_service_to_networks__service__service_name_version_id`;
304
305 ALTER TABLE `mso_catalog`.`service`  --                                            ^ <<<2
306 MODIFY `id` INT,
307 DROP COLUMN `SERVICE_ID`,
308 DROP COLUMN `HTTP_METHOD`,
309 DROP COLUMN `SERVICE_NAME_VERSION_ID`,
310 ADD COLUMN `MODEL_UUID` VARCHAR(200) NOT NULL FIRST,
311 CHANGE COLUMN `MODEL_INVARIANT_UUID` `MODEL_INVARIANT_UUID` VARCHAR(200) NOT NULL AFTER `MODEL_NAME`,
312 CHANGE COLUMN `SERVICE_NAME` `MODEL_NAME` VARCHAR(200) NOT NULL ,
313 CHANGE COLUMN `VERSION_STR` `MODEL_VERSION` VARCHAR(20) NOT NULL ,
314 ADD COLUMN `TOSCA_CSAR_ARTIFACT_UUID` VARCHAR(200) NULL DEFAULT NULL AFTER `CREATION_TIMESTAMP`,
315 DROP PRIMARY KEY,
316 ADD PRIMARY KEY (`MODEL_UUID`),
317 ADD INDEX `fk_service__tosca_csar1_idx` (`TOSCA_CSAR_ARTIFACT_UUID` ASC),
318 DROP INDEX `UK_service_name__service_name_version_id` ;
319
320 INSERT INTO mso_catalog.service (
321         id, CREATION_TIMESTAMP, DESCRIPTION, MODEL_INVARIANT_UUID, MODEL_NAME, MODEL_UUID, MODEL_VERSION
322 )
323 SELECT 
324         id, CREATION_TIMESTAMP, DESCRIPTION, MODEL_INVARIANT_UUID, MODEL_NAME, MODEL_UUID, MODEL_VERSION
325 FROM mso_catalog.servtemp; -- >>>2 
326
327 DROP TABLE IF EXISTS mso_catalog.servtemp; -- <<<2
328
329 -- service_recipe - from temporary table srtemp - AFTER service                    ^ <<<1
330 CREATE TABLE `mso_catalog`.`srtemp` ( -- <<<2
331   `id` int(11) NOT NULL ,
332   `SERVICE_MODEL_UUID` VARCHAR(200) NOT NULL,
333   `ACTION` varchar(40) NOT NULL,
334   `VERSION_STR` varchar(20) DEFAULT NULL,
335   `DESCRIPTION` varchar(1200) DEFAULT NULL,
336   `ORCHESTRATION_URI` varchar(256) NOT NULL,
337   `SERVICE_PARAM_XSD` varchar(2048) DEFAULT NULL,
338   `RECIPE_TIMEOUT` int(11) DEFAULT NULL,
339   `SERVICE_TIMEOUT_INTERIM` int(11) DEFAULT NULL,
340   `CREATION_TIMESTAMP` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP
341    )
342 ENGINE = InnoDB
343 DEFAULT CHARACTER SET = latin1;
344
345 -- ST-CreationTimestamp <<<2
346 -- ERROR 1292 (22007) at line 331: Incorrect datetime value: '0000-00-00 00:00:00' for column 'CREATION_TIMESTAMP' at row 1
347 UPDATE `mso_catalog`.`service_recipe` set CREATION_TIMESTAMP = now() where cast(`CREATION_TIMESTAMP` as char(20)) = '0000-00-00 00:00:00';
348 -- >>>2
349
350 INSERT INTO mso_catalog.srtemp ( -- <<<2
351   id,
352   SERVICE_MODEL_UUID,
353   ACTION,
354   VERSION_STR,
355   DESCRIPTION,
356   ORCHESTRATION_URI,
357   SERVICE_PARAM_XSD,
358   RECIPE_TIMEOUT,
359   SERVICE_TIMEOUT_INTERIM,
360   CREATION_TIMESTAMP
361 )
362         SELECT
363                 a.id,
364                 ht1.MODEL_UUID SERVICE_MODEL_UUID,
365                 a.ACTION,
366                 a.VERSION_STR,
367                 a.DESCRIPTION,
368                 a.ORCHESTRATION_URI,
369                 a.SERVICE_PARAM_XSD,
370                 a.RECIPE_TIMEOUT,
371                 a.SERVICE_TIMEOUT_INTERIM,
372                 a.CREATION_TIMESTAMP
373                 FROM mso_catalog.service_recipe a
374                 JOIN mso_catalog.service AS ht1 ON a.service_id = ht1.id;
375
376 DELETE FROM mso_catalog.service_recipe; -- <<<2
377
378 ALTER TABLE `mso_catalog`.`service_recipe`  -- <<<2
379 CHANGE COLUMN `SERVICE_ID` `SERVICE_MODEL_UUID` VARCHAR(200) NOT NULL AFTER `CREATION_TIMESTAMP`,
380 ADD INDEX `fk_service_recipe__service1_idx` (`SERVICE_MODEL_UUID` ASC);
381
382 INSERT INTO mso_catalog.service_recipe ( -- <<<2
383   id,
384   SERVICE_MODEL_UUID,
385   ACTION,
386   VERSION_STR,
387   DESCRIPTION,
388   ORCHESTRATION_URI,
389   SERVICE_PARAM_XSD,
390   RECIPE_TIMEOUT,
391   SERVICE_TIMEOUT_INTERIM,
392   CREATION_TIMESTAMP
393 )
394 SELECT 
395   id,
396   SERVICE_MODEL_UUID,
397   ACTION,
398   VERSION_STR,
399   DESCRIPTION,
400   ORCHESTRATION_URI,
401   SERVICE_PARAM_XSD,
402   RECIPE_TIMEOUT,
403   SERVICE_TIMEOUT_INTERIM,
404   CREATION_TIMESTAMP
405  FROM mso_catalog.srtemp;
406
407 DROP TABLE IF EXISTS mso_catalog.srtemp; -- <<<2
408
409 -- >>>1
410
411 DELETE FROM mso_catalog.vnf_components_recipe WHERE vnf_component_type = 'VOLUME_GROUP' and vnf_type != '*'; -- Q spec 5/25 <<<1
412 -- >>>1
413
414 DELETE FROM mso_catalog.vnf_resource WHERE id IN (2,3,4); -- 3                     * <<<1
415
416 UPDATE mso_catalog.vnf_resource -- 4                                               * <<<1
417 SET
418         model_name = model_customization_name,
419         asdc_uuid = '09cb25b0-f2f6-40ed-96bc-71ad43e42fc8',
420         model_invariant_uuid = '9fdda511-ffe3-4117-b3cc-cff9c1fc3fff'
421 WHERE
422         id=5;
423
424 UPDATE mso_catalog.vnf_resource -- 6 set model_name                                * <<<1
425 SET
426         model_name = vnf_type
427 WHERE
428         service_model_invariant_uuid IS NULL OR model_invariant_uuid = '';
429
430 UPDATE mso_catalog.vnf_resource -- 7 UUID() asdc_uuid                              * <<<1
431 SET
432         asdc_uuid = (SELECT UUID()),
433         description = CONCAT(description, '1707MIGRATED')
434 WHERE
435         asdc_uuid LIKE "MAN%" OR asdc_uuid is NULL OR asdc_uuid = '';
436
437 UPDATE mso_catalog.vnf_resource -- 8 UUID() model_customization_uuid               * <<<1
438 SET
439         description = CONCAT(description, '1707MIGRATED'),
440         model_customization_uuid = (SELECT UUID())
441 WHERE
442         model_customization_uuid LIKE "MAN%" OR model_customization_uuid is NULL OR model_customization_uuid = ''; 
443
444 -- >>>1
445 UPDATE mso_catalog.vnf_resource -- NOT IN SPEC                                     * <<<1
446 SET
447         model_customization_name = CONCAT('1707MIGRATED_', model_name)
448 WHERE
449         model_customization_name is NULL OR model_customization_name = ''; 
450
451 -- 5 aka 8d delete each asdc_uuid except highest ASDC_SERVICE_MODEL_VERSION vnf_resource and cascade vf_module * <<<1
452 CREATE TABLE mso_catalog.req5temp (`vnfs` INT(11) NOT NULL, `vfs` INT(11));
453
454 -- delete VR and cascade VMs what have null/empty VR.service_model_invariant_uuid where vnf_name is NOT "BrocadeVce"
455 INSERT INTO mso_catalog.req5temp (vnfs, vfs) -- <<<2
456         SELECT a.id, m.id
457                 FROM    mso_catalog.vnf_resource a
458                 LEFT JOIN mso_catalog.vf_module m ON a.id = m.vnf_resource_id
459                 WHERE (a.vnf_name != "BrocadeVce" OR a.vnf_name IS NULL) 
460                         AND (a.service_model_invariant_uuid is NULL OR a.service_model_invariant_uuid = '');
461
462 DELETE FROM mso_catalog.vnf_resource WHERE id = ANY(SELECT vnfs FROM mso_catalog.req5temp);
463 DELETE FROM mso_catalog.vf_module WHERE id = ANY(SELECT vfs FROM mso_catalog.req5temp);
464
465 DELETE FROM mso_catalog.req5temp; -- <<<2
466
467 INSERT INTO mso_catalog.req5temp (vnfs, vfs) -- <<<2
468         SELECT a.id, m.id
469                 FROM mso_catalog.vnf_resource a
470                 LEFT JOIN mso_catalog.vf_module m ON a.id = m.vnf_resource_id
471                 JOIN (
472                         SELECT
473                                 MAX(CAST((COALESCE(NULLIF(asdc_service_model_version, ''), '1.0')) AS DECIMAL(5,2))) AS v,
474                                 asdc_uuid
475                         FROM mso_catalog.vnf_resource
476                         GROUP BY asdc_uuid
477                         ) b
478                 ON
479                         a.asdc_uuid = b.asdc_uuid AND
480                         CAST((COALESCE(NULLIF(a.asdc_service_model_version, ''), '1.0')) AS DECIMAL(5,2)) != b.v;
481 -- >>>1 
482
483 UPDATE mso_catalog.vf_module --    7 UUID() asdc_uuid                              * <<<1
484 SET
485         asdc_uuid = (SELECT UUID()),
486         description = CONCAT(description, '1707MIGRATED')
487 WHERE
488         asdc_uuid LIKE "MAN%" OR asdc_uuid is NULL OR asdc_uuid = '';
489
490 UPDATE mso_catalog.vf_module --    8 UUID() model_customization_uuid               * <<<1
491 SET
492         description = CONCAT(description, '1707MIGRATED'),
493         model_customization_uuid = (SELECT UUID())
494 WHERE
495         model_customization_uuid LIKE "MAN%" OR model_customization_uuid is NULL OR model_customization_uuid = '';
496
497 --  VMC vf_module_customization                                                                           * <<<1
498 CREATE TABLE IF NOT EXISTS `mso_catalog`.`vf_module_customization` ( --            V <<<2
499   `MODEL_CUSTOMIZATION_UUID` VARCHAR(200) NOT NULL,
500   `LABEL` VARCHAR(200) NULL DEFAULT NULL,
501   `INITIAL_COUNT` INT(11) NULL DEFAULT 0,
502   `MIN_INSTANCES` INT(11) NULL DEFAULT 0,
503   `MAX_INSTANCES` INT(11) NULL DEFAULT NULL,
504   `AVAILABILITY_ZONE_COUNT` INT(11) NULL DEFAULT NULL,
505   `HEAT_ENVIRONMENT_ARTIFACT_UUID` VARCHAR(200) NULL DEFAULT NULL,
506   `VOL_ENVIRONMENT_ARTIFACT_UUID` VARCHAR(200) NULL DEFAULT NULL,
507   `CREATION_TIMESTAMP` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
508   `VF_MODULE_MODEL_UUID` VARCHAR(200) NOT NULL,
509   PRIMARY KEY (`MODEL_CUSTOMIZATION_UUID`),
510   INDEX `fk_vf_module_customization__vf_module1_idx` (`VF_MODULE_MODEL_UUID` ASC),
511   INDEX `fk_vf_module_customization__heat_env__heat_environment1_idx` (`HEAT_ENVIRONMENT_ARTIFACT_UUID` ASC),
512   INDEX `fk_vf_module_customization__vol_env__heat_environment2_idx` (`VOL_ENVIRONMENT_ARTIFACT_UUID` ASC),
513   CONSTRAINT `fk_vf_module_customization__heat_env__heat_environment1`
514     FOREIGN KEY (`HEAT_ENVIRONMENT_ARTIFACT_UUID`)
515     REFERENCES `mso_catalog`.`heat_environment` (`ARTIFACT_UUID`)
516     ON DELETE CASCADE
517     ON UPDATE CASCADE,
518   CONSTRAINT `fk_vf_module_customization__vol_env__heat_environment2`
519     FOREIGN KEY (`VOL_ENVIRONMENT_ARTIFACT_UUID`)
520     REFERENCES `mso_catalog`.`heat_environment` (`ARTIFACT_UUID`)
521     ON DELETE CASCADE
522     ON UPDATE CASCADE
523 ) ENGINE = InnoDB DEFAULT CHARACTER SET = latin1;
524
525 CREATE TABLE mso_catalog.vfduptemp (`id` INT(11) NOT NULL); -- <<<2
526
527 INSERT INTO mso_catalog.vfduptemp (id) -- <<<2
528 SELECT a.id
529 FROM mso_catalog.vf_module a
530 JOIN (
531                 SELECT
532                         MAX(CAST((COALESCE(NULLIF(asdc_service_model_version, ''), '1.0')) AS DECIMAL(5,2))) AS ver,
533                         model_customization_uuid mcu,
534                         id vid
535                 FROM mso_catalog.vf_module
536                 GROUP BY model_customization_uuid
537                 ) b
538 ON
539                 a.model_customization_uuid = mcu
540                 AND CAST((COALESCE(NULLIF(a.asdc_service_model_version, ''), '1.0')) AS DECIMAL(5,2)) != b.ver
541 ORDER BY a.model_customization_uuid;
542
543 INSERT INTO mso_catalog.vf_module_customization ( -- <<<2
544                 model_customization_uuid, -- <<<3
545                 label,
546                 initial_count,
547                 min_instances,
548                 max_instances,
549                 heat_environment_artifact_uuid,
550                 vol_environment_artifact_uuid,
551                 vf_module_model_uuid -- >>>3
552 )
553 SELECT 
554                 a.model_customization_uuid,
555                 a.label,
556                 a.initial_count,
557                 a.min_instances,
558                 a.max_instances,
559                 ht1.artifact_uuid,
560                 ht2.artifact_uuid,
561                 a.asdc_uuid
562 FROM mso_catalog.vf_module a
563 LEFT JOIN mso_catalog.hetemp AS ht1 ON a.environment_id = ht1.id
564 LEFT JOIN mso_catalog.hetemp AS ht2 ON a.vol_environment_id = ht2.id
565 WHERE NOT EXISTS (
566                 SELECT 1 FROM mso_catalog.vfduptemp vdt
567                 WHERE
568                 a.id = vdt.id
569 );
570
571 DROP TABLE IF EXISTS mso_catalog.vfduptemp; -- <<<2
572
573 DROP TABLE IF EXISTS mso_catalog.hetemp; -- <<<2
574
575 -- >>>1
576
577 -- AR ALLOTTED_RESOURCE <<<1
578 CREATE TABLE IF NOT EXISTS `mso_catalog`.`allotted_resource` ( --                  V <<<2
579   `MODEL_UUID` VARCHAR(200) NOT NULL,
580   `MODEL_INVARIANT_UUID` VARCHAR(200) NOT NULL,
581   `MODEL_VERSION` VARCHAR(20) NOT NULL,
582   `MODEL_NAME` VARCHAR(200) NOT NULL,
583   `TOSCA_NODE_TYPE` VARCHAR(200) NULL DEFAULT NULL,
584   `SUBCATEGORY` VARCHAR(200) NULL DEFAULT NULL,
585   `DESCRIPTION` VARCHAR(1200) NULL DEFAULT NULL,
586   `CREATION_TIMESTAMP` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
587   PRIMARY KEY (`MODEL_UUID`))
588 ENGINE = InnoDB
589 DEFAULT CHARACTER SET = latin1;
590
591  INSERT INTO `mso_catalog`.`allotted_resource`  ( -- 2sc                            * <<<2
592                 model_uuid,
593                 model_invariant_uuid,
594                 model_version,
595                 model_name,
596                 description
597  )
598         SELECT DISTINCT
599                 model_uuid,
600                 model_invariant_uuid,
601                 model_version,
602                 model_name,
603                 description
604         FROM
605                 mso_catalog.allotted_resource_customization;
606 -- >>>1
607
608 ALTER TABLE `mso_catalog`.`allotted_resource_customization`  --                    ^ <<<1
609 DROP COLUMN `DESCRIPTION`,
610 DROP COLUMN `MODEL_NAME`,
611 DROP COLUMN `MODEL_VERSION`,
612 DROP COLUMN `MODEL_INVARIANT_UUID`,
613 CHANGE COLUMN `MODEL_UUID` `AR_MODEL_UUID` VARCHAR(200) NOT NULL, -- ARC
614 CHANGE COLUMN `MODEL_INSTANCE_NAME` `MODEL_INSTANCE_NAME` VARCHAR(200) NOT NULL AFTER `MODEL_CUSTOMIZATION_UUID`,
615 ADD COLUMN `PROVIDING_SERVICE_MODEL_INVARIANT_UUID` VARCHAR(200) NULL DEFAULT NULL AFTER `MODEL_INSTANCE_NAME`,
616 ADD COLUMN `TARGET_NETWORK_ROLE` VARCHAR(200) NULL DEFAULT NULL AFTER `PROVIDING_SERVICE_MODEL_INVARIANT_UUID`,
617 ADD COLUMN `NF_TYPE` VARCHAR(200) NULL DEFAULT NULL AFTER `TARGET_NETWORK_ROLE`,
618 ADD COLUMN `NF_ROLE` VARCHAR(200) NULL DEFAULT NULL AFTER `NF_TYPE`,
619 ADD COLUMN `NF_FUNCTION` VARCHAR(200) NULL DEFAULT NULL AFTER `NF_ROLE`,
620 ADD COLUMN `NF_NAMING_CODE` VARCHAR(200) NULL DEFAULT NULL AFTER `NF_FUNCTION`,
621 ADD COLUMN `MIN_INSTANCES` INT(11) NULL DEFAULT NULL AFTER `NF_NAMING_CODE`,
622 ADD COLUMN `MAX_INSTANCES` INT(11) NULL DEFAULT NULL AFTER `MIN_INSTANCES`,
623 ADD INDEX `fk_allotted_resource_customization__allotted_resource1_idx` (`AR_MODEL_UUID` ASC);
624 -- >>>1
625
626 -- VRC  vnf_resource_customization <<<1
627 -- vnftemp table <<<2
628 CREATE TABLE `mso_catalog`.`vnftemp` AS
629         SELECT model_customization_uuid, service_model_invariant_uuid, asdc_service_model_version
630         FROM `mso_catalog`.`vnf_resource`;
631
632 DROP TABLE IF EXISTS `mso_catalog`.`vnf_resource_customization`; -- <<<2
633
634 CREATE TABLE `mso_catalog`.`vnf_resource_customization` ( -- <<<2
635   `MODEL_CUSTOMIZATION_UUID` VARCHAR(200) NOT NULL,
636   `MODEL_INSTANCE_NAME` VARCHAR(200) NOT NULL,
637   `MIN_INSTANCES` INT(11) NULL DEFAULT NULL,
638   `MAX_INSTANCES` INT(11) NULL DEFAULT NULL,
639   `AVAILABILITY_ZONE_MAX_COUNT` INT(11) NULL DEFAULT NULL,
640   `NF_TYPE` VARCHAR(200) NULL DEFAULT NULL,
641   `NF_ROLE` VARCHAR(200) NULL DEFAULT NULL,
642   `NF_FUNCTION` VARCHAR(200) NULL DEFAULT NULL,
643   `NF_NAMING_CODE` VARCHAR(200) NULL DEFAULT NULL,
644   `CREATION_TIMESTAMP` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
645   `VNF_RESOURCE_MODEL_UUID` VARCHAR(200) NOT NULL,
646   PRIMARY KEY (`MODEL_CUSTOMIZATION_UUID`),
647   INDEX `fk_vnf_resource_customization__vnf_resource1_idx` (`VNF_RESOURCE_MODEL_UUID` ASC)
648 ) ENGINE = InnoDB DEFAULT CHARACTER SET = latin1;
649
650 INSERT INTO mso_catalog.vnf_resource_customization ( -- <<<2
651         model_customization_uuid,
652         model_instance_name,
653         vnf_resource_model_uuid
654 )
655         SELECT DISTINCT
656                 a.model_customization_uuid,
657                 ht1.model_customization_name,
658                 ht1.asdc_uuid
659         FROM mso_catalog.vnftemp a
660         JOIN mso_catalog.vnf_resource AS ht1 ON
661                 a.model_customization_uuid = ht1.model_customization_uuid AND
662                 a.asdc_service_model_version = ht1.asdc_service_model_version;
663 -- >>>1
664
665 -- network_resource_customization                                                  * <<<1
666 CREATE TABLE `mso_catalog`.`nrctemp` ( -- <<<2
667   `MODEL_UUID` varchar(200) NOT NULL,
668   `MODEL_NAME` varchar(200) NOT NULL,
669   `MODEL_INVARIANT_UUID` varchar(200) NOT NULL,
670   `NETWORK_RESOURCE_ID` int(11) NOT NULL,
671   `MODEL_CUSTOMIZATION_UUID` VARCHAR(200) NOT NULL,
672   `MODEL_INSTANCE_NAME` VARCHAR(200) NOT NULL,
673   `NETWORK_TECHNOLOGY` VARCHAR(45) NULL,
674   `NETWORK_TYPE` VARCHAR(45) NULL,
675   `NETWORK_ROLE` VARCHAR(200) NULL,
676   `NETWORK_SCOPE` VARCHAR(45) NULL,
677   `MODEL_VERSION` VARCHAR(20) NULL,
678   `CREATION_TIMESTAMP` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
679   `NETWORK_RESOURCE_MODEL_UUID` VARCHAR(200) NOT NULL
680 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
681
682 INSERT INTO mso_catalog.nrctemp ( -- <<<2
683         model_customization_uuid,
684         model_uuid,
685         model_invariant_uuid,
686         model_instance_name,
687         model_name,
688         network_resource_id,
689         model_version,
690         creation_timestamp,
691         network_resource_model_uuid
692 )
693         SELECT 
694                 model_customization_uuid,
695                 model_uuid,
696                 model_invariant_uuid,
697                 model_instance_name,
698                 model_name,
699                 network_resource_id,
700                 model_version,
701                 creation_timestamp,
702                 model_uuid
703         FROM mso_catalog.network_resource_customization;
704
705 DELETE FROM mso_catalog.network_resource_customization; -- <<<2
706
707 ALTER TABLE `mso_catalog`.`network_resource_customization`  -- <<<2
708 DROP COLUMN `NETWORK_RESOURCE_ID`,
709 DROP COLUMN `MODEL_VERSION`,
710 DROP COLUMN `MODEL_INVARIANT_UUID`,
711 DROP COLUMN `MODEL_NAME`,
712 DROP COLUMN `MODEL_UUID`,
713 ADD COLUMN `NETWORK_TECHNOLOGY` VARCHAR(45) NULL DEFAULT NULL AFTER `MODEL_INSTANCE_NAME`,
714 ADD COLUMN `NETWORK_TYPE` VARCHAR(45) NULL DEFAULT NULL AFTER `NETWORK_TECHNOLOGY`,
715 ADD COLUMN `NETWORK_ROLE` VARCHAR(200) NULL DEFAULT NULL AFTER `NETWORK_TYPE`,
716 ADD COLUMN `NETWORK_SCOPE` VARCHAR(45) NULL DEFAULT NULL AFTER `NETWORK_ROLE`,
717 ADD COLUMN `NETWORK_RESOURCE_MODEL_UUID` VARCHAR(200) NOT NULL AFTER `CREATION_TIMESTAMP`,
718 DROP PRIMARY KEY,
719 ADD PRIMARY KEY (`MODEL_CUSTOMIZATION_UUID`),
720 ADD INDEX `fk_network_resource_customization__network_resource1_idx` (`NETWORK_RESOURCE_MODEL_UUID` ASC),
721 DROP INDEX `fk_network_resource_customization__network_resource_id_idx`;
722 -- >>>2
723
724 INSERT INTO mso_catalog.network_resource_customization ( -- <<<2
725         model_customization_uuid,
726         model_instance_name,
727         creation_timestamp,
728         network_resource_model_uuid,
729         network_type
730 )
731         SELECT 
732                 a.model_customization_uuid,
733                 a.model_instance_name,
734                 a.creation_timestamp,
735                 a.model_uuid,
736                 a.network_type
737         FROM mso_catalog.nrctemp a;
738
739 -- DROP temp table later, after network_resource uses it <<<2
740
741 -- >>>1
742
743 -- network_resource                                                                * <<<1
744 CREATE TABLE `mso_catalog`.`nrtemp` ( -- <<<2
745   `MODEL_NAME` VARCHAR(200) NOT NULL,
746   `ORCHESTRATION_MODE` varchar(20) DEFAULT NULL,
747   `DESCRIPTION` varchar(1200) DEFAULT NULL,
748   `NEUTRON_NETWORK_TYPE` varchar(20) DEFAULT NULL,
749   `CREATION_TIMESTAMP` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
750   `MODEL_VERSION` VARCHAR(20) NULL DEFAULT NULL,
751   `AIC_VERSION_MIN` varchar(20) NOT NULL,
752   `AIC_VERSION_MAX` varchar(20) DEFAULT NULL,
753   `MODEL_INVARIANT_UUID` VARCHAR(200) NULL DEFAULT NULL,
754   `TOSCA_NODE_TYPE` VARCHAR(200) NULL DEFAULT NULL,
755   `TEMPLATE_ID` VARCHAR(200)
756    )
757 ENGINE = InnoDB
758 DEFAULT CHARACTER SET = latin1;
759
760 -- E2E-CreationTimestamp <<<2
761 -- ERROR 1292 (22007) at line 675: Incorrect datetime value: '0000-00-00 00:00:00' for column 'CREATION_TIMESTAMP' at row 1
762 UPDATE `mso_catalog`.`network_resource` set CREATION_TIMESTAMP = now() where cast(`CREATION_TIMESTAMP` as char(20)) = '0000-00-00 00:00:00';
763 -- >>>2
764
765 INSERT INTO mso_catalog.nrtemp ( -- <<<2
766   MODEL_NAME,
767   ORCHESTRATION_MODE,
768   DESCRIPTION,
769   NEUTRON_NETWORK_TYPE,
770   CREATION_TIMESTAMP,
771   MODEL_VERSION,
772   AIC_VERSION_MIN,
773   AIC_VERSION_MAX,
774   TEMPLATE_ID
775 )
776         SELECT
777                 NETWORK_TYPE,
778                 ORCHESTRATION_MODE,
779                 DESCRIPTION,
780                 NEUTRON_NETWORK_TYPE,
781                 CREATION_TIMESTAMP,
782                 VERSION_STR,
783                 AIC_VERSION_MIN,
784                 AIC_VERSION_MAX,
785                 TEMPLATE_ID
786         FROM mso_catalog.network_resource;
787
788 DELETE FROM mso_catalog.network_resource; -- <<<2
789
790 ALTER TABLE `mso_catalog`.`network_resource`  -- <<<2
791 DROP COLUMN `id`,
792 CHANGE COLUMN `VERSION_STR` `MODEL_VERSION` VARCHAR(20) NULL DEFAULT NULL,
793 CHANGE COLUMN `TEMPLATE_ID` `HEAT_TEMPLATE_ARTIFACT_UUID` VARCHAR(200) NOT NULL,
794 CHANGE COLUMN `NETWORK_TYPE` `MODEL_NAME` VARCHAR(200) NOT NULL,
795 CHANGE COLUMN `NEUTRON_NETWORK_TYPE` `NEUTRON_NETWORK_TYPE` VARCHAR(20) NULL DEFAULT NULL,
796 CHANGE COLUMN `ORCHESTRATION_MODE` `ORCHESTRATION_MODE` VARCHAR(20) NULL DEFAULT 'HEAT' AFTER `AIC_VERSION_MAX`,
797 CHANGE COLUMN `CREATION_TIMESTAMP` `CREATION_TIMESTAMP` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP AFTER `ORCHESTRATION_MODE`,
798 ADD COLUMN `MODEL_UUID` VARCHAR(200) NOT NULL FIRST,
799 ADD COLUMN `MODEL_INVARIANT_UUID` VARCHAR(200) NULL DEFAULT NULL AFTER `MODEL_NAME`,
800 ADD COLUMN `TOSCA_NODE_TYPE` VARCHAR(200) NULL DEFAULT NULL AFTER `MODEL_VERSION`,
801 DROP PRIMARY KEY,
802 ADD PRIMARY KEY (`MODEL_UUID`),
803 ADD INDEX `fk_network_resource__temp_network_heat_template_lookup1_idx` (`MODEL_NAME` ASC),
804 ADD INDEX `fk_network_resource__heat_template1_idx` (`HEAT_TEMPLATE_ARTIFACT_UUID` ASC),
805 DROP INDEX `UK_e5vlpk2xorqk7ogtg6wgw2eo6` ;
806
807 INSERT INTO mso_catalog.network_resource ( -- <<<2
808   model_name,
809   orchestration_mode,
810   description,
811   heat_template_artifact_uuid,
812   neutron_network_type,
813   creation_timestamp,
814   model_version,
815   aic_version_min,
816   aic_version_max,
817   model_uuid,
818   model_invariant_uuid
819 )
820         SELECT DISTINCT
821                 ht2.model_name,
822                 a.ORCHESTRATION_MODE,
823                 a.DESCRIPTION,
824                 ht1.ARTIFACT_UUID,
825                 a.NEUTRON_NETWORK_TYPE,
826                 a.CREATION_TIMESTAMP,
827                 ht2.model_version,
828                 a.AIC_VERSION_MIN,
829                 a.AIC_VERSION_MAX,
830                 ht2.model_uuid,
831                 ht2.model_invariant_uuid
832         FROM mso_catalog.nrtemp a
833                 JOIN mso_catalog.heat_template ht1 ON a.template_id = ht1.id
834                 JOIN mso_catalog.nrctemp ht2 ON a.model_name = ht2.model_name
835                 GROUP BY a.model_name;
836
837 DROP TABLE IF EXISTS mso_catalog.nrtemp; -- <<<2
838
839 DROP TABLE IF EXISTS mso_catalog.nrctemp; -- <<<2
840
841 -- >>>1
842
843 -- VRC2VMC vnf_res_custom_to_vf_module_custom <<<1
844 CREATE TABLE IF NOT EXISTS `mso_catalog`.`vnf_res_custom_to_vf_module_custom` ( -- <<<2
845   `VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID` VARCHAR(200) NOT NULL,
846   `VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID` VARCHAR(200) NOT NULL,
847   `CREATION_TIMESTAMP` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
848   PRIMARY KEY (`VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID`, `VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID`),
849   INDEX `fk_vnf_res_custom_to_vf_module_custom__vf_module_customizat_idx` (`VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID` ASC),
850   CONSTRAINT `fk_vnf_res_custom_to_vf_module_custom__vf_module_customization1`
851     FOREIGN KEY (`VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID`)
852     REFERENCES `mso_catalog`.`vf_module_customization` (`MODEL_CUSTOMIZATION_UUID`)
853     ON DELETE CASCADE
854     ON UPDATE CASCADE,
855   CONSTRAINT `fk_vnf_res_custom_to_vf_module_custom__vnf_resource_customiza1`
856     FOREIGN KEY (`VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID`)
857     REFERENCES `mso_catalog`.`vnf_resource_customization` (`MODEL_CUSTOMIZATION_UUID`)
858     ON DELETE CASCADE
859     ON UPDATE CASCADE)
860 ENGINE = InnoDB
861 DEFAULT CHARACTER SET = latin1;
862
863 INSERT INTO mso_catalog.vnf_res_custom_to_vf_module_custom ( -- 6sc aka 8c         <<<2
864         vnf_resource_cust_model_customization_uuid,
865         vf_module_cust_model_customization_uuid,
866         creation_timestamp
867 )
868         SELECT DISTINCT
869                 a.model_customization_uuid,
870                 b.model_customization_uuid,
871                 now()
872         FROM
873                 mso_catalog.vnf_resource a,
874                 mso_catalog.vf_module b
875         WHERE a.id = b.vnf_resource_id;
876 -- >>>1
877
878 -- VR vnf_resource After vrc2vmc and vrc                                              ^ <<<1
879 -- ERROR 1292 (22007) : Incorrect datetime value: '0000-00-00 00:00:00' for column 'CREATION_TIMESTAMP' <<<2
880 UPDATE `mso_catalog`.`vnf_resource` set CREATION_TIMESTAMP = now() where cast(`CREATION_TIMESTAMP` as char(20)) = '0000-00-00 00:00:00';
881
882 ALTER TABLE `mso_catalog`.`vnf_resource`  -- after vrc2vmc and vrc                 ^ <<<2
883 MODIFY `id` INT,
884 DROP COLUMN `MODEL_CUSTOMIZATION_UUID`,
885 DROP COLUMN `SERVICE_MODEL_INVARIANT_UUID`,
886 DROP COLUMN `MODEL_CUSTOMIZATION_NAME`,
887 DROP COLUMN `VNF_TYPE`,
888 DROP COLUMN `ASDC_SERVICE_MODEL_VERSION`,
889 DROP COLUMN `ENVIRONMENT_ID`,
890 DROP COLUMN `VERSION`,
891 DROP COLUMN `VNF_NAME`,
892 CHANGE COLUMN `DESCRIPTION` `DESCRIPTION` VARCHAR(1200) NULL DEFAULT NULL,
893 CHANGE COLUMN `ORCHESTRATION_MODE` `ORCHESTRATION_MODE` VARCHAR(20) NOT NULL DEFAULT 'HEAT',
894 CHANGE COLUMN `AIC_VERSION_MIN` `AIC_VERSION_MIN` VARCHAR(20) NULL DEFAULT NULL,
895 CHANGE COLUMN `AIC_VERSION_MAX` `AIC_VERSION_MAX` VARCHAR(20) NULL DEFAULT NULL,
896 CHANGE COLUMN `CREATION_TIMESTAMP` `CREATION_TIMESTAMP` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
897 CHANGE COLUMN `ASDC_UUID` `MODEL_UUID` VARCHAR(200) NOT NULL ,
898 ADD COLUMN `TOSCA_NODE_TYPE` VARCHAR(200) NULL DEFAULT NULL,
899 ADD COLUMN `HEAT_TEMPLATE_ARTIFACT_UUID` VARCHAR(200) NULL DEFAULT NULL,
900 DROP PRIMARY KEY,
901 ADD INDEX `fk_vnf_resource__heat_template1_idx` (`HEAT_TEMPLATE_ARTIFACT_UUID` ASC),
902 DROP INDEX `UK_model_customization_uuid__asdc_service_model_version`,
903 DROP INDEX `UK_k10a0w7h4t0lnbynd3inkg67k`;
904
905 UPDATE mso_catalog.vnf_resource a --                                              * <<<2
906         LEFT JOIN mso_catalog.heat_template ht1 ON a.template_id = ht1.id
907 SET
908         heat_template_artifact_uuid = ht1.artifact_uuid;
909
910 -- Eliminate duplicates <<<2
911 CREATE TABLE `mso_catalog`.`vrtemp` AS
912
913 SELECT vr.* FROM `mso_catalog`.`vnf_resource` vr
914 WHERE vr.id NOT IN (SELECT vnfs FROM mso_catalog.req5temp)
915 GROUP BY MODEL_UUID;
916
917 DROP TABLE `mso_catalog`.`vnf_resource`;  
918 RENAME TABLE `mso_catalog`.`vrtemp` TO `mso_catalog`.`vnf_resource`;  
919 -- >>>1
920
921 -- VF vf_module  after VRC2VMC and VMC                                                ^ <<<1
922 CREATE TABLE IF NOT EXISTS `mso_catalog`.`vftemp` ( -- <<<2
923   `id` int(11) NOT NULL,
924   `MODEL_UUID` VARCHAR(200) NOT NULL,
925   `MODEL_INVARIANT_UUID` VARCHAR(200) NULL DEFAULT NULL,
926   `MODEL_VERSION` VARCHAR(20) NOT NULL,
927   `MODEL_NAME` VARCHAR(200) NOT NULL,
928   `DESCRIPTION` VARCHAR(1200) NULL DEFAULT NULL,
929   `IS_BASE` INT(11) NOT NULL,
930   `HEAT_TEMPLATE_ARTIFACT_UUID` VARCHAR(200),
931   `VOL_HEAT_TEMPLATE_ARTIFACT_UUID` VARCHAR(200) NULL DEFAULT NULL,
932   `CREATION_TIMESTAMP` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
933   `VNF_RESOURCE_MODEL_UUID` VARCHAR(200)
934    ) ENGINE = InnoDB DEFAULT CHARACTER SET = latin1;
935
936 INSERT INTO mso_catalog.vftemp ( -- <<<2
937         id, -- <<<3
938         model_uuid,
939         is_base,
940         model_name,
941         model_version,
942         creation_timestamp,
943         description,
944         heat_template_artifact_uuid,
945         vol_heat_template_artifact_uuid,
946         vnf_resource_model_uuid,
947         model_invariant_uuid -- >>>3
948 )
949         SELECT
950                 a.id, -- <<<3
951                 a.asdc_uuid,
952                 a.is_base,
953                 a.model_name,
954                 a.model_version,
955                 a.creation_timestamp,
956                 a.description,
957                 ht1.artifact_uuid heat_template_artifact_uuid,
958                 ht2.artifact_uuid vol_heat_template_artifact_uuid,
959                 vr1.model_uuid vnf_resource_model_uuid,
960                 a.model_invariant_uuid -- >>>3
961                 FROM
962                 (SELECT * FROM mso_catalog.vf_module) AS a
963                 LEFT JOIN (SELECT * FROM mso_catalog.heat_template) AS ht1 ON a.template_id = ht1.id
964                 LEFT JOIN (SELECT * FROM mso_catalog.heat_template) AS ht2 ON a.vol_template_id = ht2.id
965                 JOIN (SELECT * FROM mso_catalog.vnf_resource) AS vr1 ON a.vnf_resource_id = vr1.id;
966
967 DELETE FROM mso_catalog.vf_module; -- <<<2
968
969 ALTER TABLE `mso_catalog`.`vf_module`  -- after vftemp vrc2vmc and vmc <<<2
970 DROP COLUMN `LABEL`,
971 DROP COLUMN `INITIAL_COUNT`,
972 DROP COLUMN `MAX_INSTANCES`,
973 DROP COLUMN `MIN_INSTANCES`,
974 DROP COLUMN `MODEL_CUSTOMIZATION_UUID`,
975 DROP COLUMN `TYPE`,
976 DROP COLUMN `ASDC_SERVICE_MODEL_VERSION`,
977 DROP COLUMN `ENVIRONMENT_ID`,
978 DROP COLUMN `VNF_RESOURCE_ID`,
979 DROP COLUMN `VOL_ENVIRONMENT_ID`,
980 CHANGE COLUMN `id` `id` INT(11),
981 CHANGE COLUMN `MODEL_INVARIANT_UUID` `MODEL_INVARIANT_UUID` VARCHAR(200) NULL DEFAULT NULL AFTER `MODEL_UUID`,
982 CHANGE COLUMN `MODEL_VERSION` `MODEL_VERSION` VARCHAR(20) NOT NULL AFTER `MODEL_INVARIANT_UUID`,
983 CHANGE COLUMN `IS_BASE` `IS_BASE` INT(11) NOT NULL AFTER `DESCRIPTION`,
984 CHANGE COLUMN `TEMPLATE_ID` `HEAT_TEMPLATE_ARTIFACT_UUID` VARCHAR(200) NULL DEFAULT NULL AFTER `IS_BASE`,
985 CHANGE COLUMN `CREATION_TIMESTAMP` `CREATION_TIMESTAMP` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP AFTER `VOL_HEAT_TEMPLATE_ARTIFACT_UUID`,
986 CHANGE COLUMN `ASDC_UUID` `MODEL_UUID` VARCHAR(200) NOT NULL ,
987 CHANGE COLUMN `DESCRIPTION` `DESCRIPTION` VARCHAR(1200) NULL DEFAULT NULL ,
988 CHANGE COLUMN `VOL_TEMPLATE_ID` `VOL_HEAT_TEMPLATE_ARTIFACT_UUID` VARCHAR(200) NULL DEFAULT NULL ,
989 ADD COLUMN `VNF_RESOURCE_MODEL_UUID` VARCHAR(200) NOT NULL AFTER `CREATION_TIMESTAMP`,
990 DROP PRIMARY KEY,
991 ADD INDEX `fk_vf_module__vnf_resource1_idx` (`VNF_RESOURCE_MODEL_UUID` ASC),
992 ADD INDEX `fk_vf_module__heat_template_art_uuid__heat_template1_idx` (`HEAT_TEMPLATE_ARTIFACT_UUID` ASC),
993 ADD INDEX `fk_vf_module__vol_heat_template_art_uuid__heat_template2_idx` (`VOL_HEAT_TEMPLATE_ARTIFACT_UUID` ASC),
994 DROP INDEX `UK_model_customization_uuid__asdc_service_model_version` ,
995 DROP INDEX `UK_o3bvdqspginaxlp4gxqohd44l` ;
996
997 INSERT INTO mso_catalog.vf_module ( -- <<<2
998         id, -- <<<3
999         model_uuid,
1000         is_base,
1001         model_name,
1002         model_version,
1003         creation_timestamp,
1004         description,
1005         heat_template_artifact_uuid,
1006         vol_heat_template_artifact_uuid,
1007         vnf_resource_model_uuid,
1008         model_invariant_uuid -- >>>3
1009 )
1010         SELECT
1011                 id, -- <<<3
1012                 model_uuid,
1013                 is_base,
1014                 model_name,
1015                 model_version,
1016                 creation_timestamp,
1017                 description,
1018                 heat_template_artifact_uuid,
1019                 vol_heat_template_artifact_uuid,
1020                 vnf_resource_model_uuid,
1021                 model_invariant_uuid -- >>>3
1022         FROM
1023                 mso_catalog.vftemp;
1024
1025 -- DROP vftemp later <<<2
1026
1027 -- >>>1
1028
1029 -- vnf_components_recipe   AFTER vf_module                                         ^ <<<1
1030 CREATE TABLE `mso_catalog`.`vcrtemp` ( -- <<<2
1031   `id` int(11) NOT NULL,
1032   `VNF_TYPE` varchar(200) DEFAULT NULL,
1033   `VNF_COMPONENT_TYPE` varchar(45) NOT NULL,
1034   `ACTION` varchar(20) NOT NULL,
1035   `SERVICE_TYPE` varchar(45) DEFAULT NULL,
1036   `VERSION` varchar(20) DEFAULT NULL,
1037   `DESCRIPTION` varchar(1200) DEFAULT NULL,
1038   `ORCHESTRATION_URI` varchar(256) NOT NULL,
1039   `VNF_COMPONENT_PARAM_XSD` varchar(2048) DEFAULT NULL,
1040   `RECIPE_TIMEOUT` int(11) DEFAULT NULL,
1041   `CREATION_TIMESTAMP` datetime DEFAULT CURRENT_TIMESTAMP,
1042   `VF_MODULE_MODEL_UUID` VARCHAR(200) NULL DEFAULT NULL
1043    ) ENGINE = InnoDB DEFAULT CHARACTER SET = latin1;
1044
1045 INSERT INTO mso_catalog.vcrtemp ( -- <<<2
1046   id, -- <<<3
1047   VNF_TYPE,
1048   VNF_COMPONENT_TYPE,
1049   ACTION,
1050   SERVICE_TYPE,
1051   VERSION,
1052   DESCRIPTION,
1053   ORCHESTRATION_URI,
1054   VNF_COMPONENT_PARAM_XSD,
1055   RECIPE_TIMEOUT,
1056   CREATION_TIMESTAMP,
1057   VF_MODULE_MODEL_UUID -- >>>3
1058 )
1059         SELECT
1060                 a.id, -- <<<3
1061                 a.VNF_TYPE,
1062                 a.VNF_COMPONENT_TYPE,
1063                 a.ACTION,
1064                 a.SERVICE_TYPE,
1065                 a.VERSION,
1066                 a.DESCRIPTION,
1067                 a.ORCHESTRATION_URI,
1068                 a.VNF_COMPONENT_PARAM_XSD,
1069                 a.RECIPE_TIMEOUT,
1070                 a.CREATION_TIMESTAMP,
1071                 COALESCE(ht1.model_uuid, a.vf_module_id)  VF_MODULE_MODEL_UUID -- >>>3
1072                 FROM mso_catalog.vnf_components_recipe a
1073                 LEFT JOIN mso_catalog.vftemp ht1 ON a.vf_module_id = CONVERT(ht1.id, CHAR(100));
1074
1075 -- DROP vftemp later <<<2
1076
1077 DELETE FROM mso_catalog.vnf_components_recipe; -- <<<2
1078
1079 ALTER TABLE `mso_catalog`.`vnf_components_recipe`  -- <<<2
1080 CHANGE COLUMN `VF_MODULE_ID` `VF_MODULE_MODEL_UUID` VARCHAR(200) NULL DEFAULT NULL;
1081
1082 INSERT INTO mso_catalog.vnf_components_recipe SELECT * FROM mso_catalog.vcrtemp; -- <<<2
1083
1084 DROP TABLE IF EXISTS mso_catalog.vcrtemp; -- <<<2
1085
1086 -- >>>1
1087
1088 -- vf_module_to_heat_files  AFTER vf_module heat_files                             ^ <<<1
1089 CREATE TABLE `mso_catalog`.`vmthftemp` ( -- <<<2
1090         VF_MODULE_MODEL_UUID VARCHAR(200) NOT NULL,
1091         HEAT_FILES_ARTIFACT_UUID VARCHAR(200) NOT NULL
1092 ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
1093
1094 INSERT INTO mso_catalog.vmthftemp ( -- <<<2
1095     VF_MODULE_MODEL_UUID,
1096     HEAT_FILES_ARTIFACT_UUID
1097 )
1098         SELECT DISTINCT
1099                 ht1.model_uuid,
1100                 ht2.artifact_uuid
1101                 FROM mso_catalog.vf_module_to_heat_files a
1102                 JOIN mso_catalog.vftemp ht1 ON a.vf_module_id = CONVERT(ht1.id, CHAR(100))
1103                 JOIN  mso_catalog.heat_files ht2 ON a.HEAT_FILES_ID = ht2.id;
1104
1105 DROP TABLE IF EXISTS mso_catalog.vftemp; -- <<<2
1106
1107 DELETE FROM mso_catalog.vf_module_to_heat_files; -- <<<2
1108
1109 ALTER TABLE `mso_catalog`.`vf_module_to_heat_files`  -- <<<2
1110 CHANGE COLUMN `VF_MODULE_ID` `VF_MODULE_MODEL_UUID` VARCHAR(200) NOT NULL ,
1111 CHANGE COLUMN `HEAT_FILES_ID` `HEAT_FILES_ARTIFACT_UUID` VARCHAR(200) NOT NULL ,
1112 ADD INDEX `fk_vf_module_to_heat_files__heat_files__artifact_uuid1_idx` (`HEAT_FILES_ARTIFACT_UUID` ASC);
1113
1114 INSERT INTO mso_catalog.vf_module_to_heat_files SELECT * FROM mso_catalog.vmthftemp; -- <<<2
1115
1116 DROP TABLE IF EXISTS mso_catalog.vmthftemp; -- <<<2
1117
1118 -- >>>1
1119
1120 -- S2RC service_to_resource_customizations` <<<1
1121 CREATE TABLE IF NOT EXISTS `mso_catalog`.`service_to_resource_customizations` ( -- V <<<2
1122   `SERVICE_MODEL_UUID` VARCHAR(200) NOT NULL,
1123   `RESOURCE_MODEL_CUSTOMIZATION_UUID` VARCHAR(200) NOT NULL,
1124   `MODEL_TYPE` VARCHAR(20) NOT NULL,
1125   `CREATION_TIMESTAMP` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
1126   INDEX `fk_service_to_resource_cust__service_model_uuid_idx` (`SERVICE_MODEL_UUID` ASC),
1127   PRIMARY KEY (`SERVICE_MODEL_UUID`, `RESOURCE_MODEL_CUSTOMIZATION_UUID`, `MODEL_TYPE`),
1128   INDEX `fk_service_to_resource_cust__resource_model_customiz_uuid_idx` (`RESOURCE_MODEL_CUSTOMIZATION_UUID` ASC),
1129   CONSTRAINT `fk_service_to_resource_cust__service__model_uuid0`
1130     FOREIGN KEY (`SERVICE_MODEL_UUID`)
1131     REFERENCES `mso_catalog`.`service` (`MODEL_UUID`)
1132     ON DELETE CASCADE
1133     ON UPDATE CASCADE
1134         ) ENGINE = InnoDB DEFAULT CHARACTER SET = latin1;
1135
1136 INSERT INTO mso_catalog.service_to_resource_customizations ( -- 4sc                * <<<2
1137         service_model_uuid,
1138         resource_model_customization_uuid,
1139         model_type
1140 )
1141         SELECT 
1142                 a.service_model_uuid,
1143                 a.network_model_customization_uuid,
1144                 "network"
1145         FROM
1146                 mso_catalog.service_to_networks a;
1147
1148 INSERT INTO mso_catalog.service_to_resource_customizations ( -- 5sc                * <<<2
1149         service_model_uuid,
1150         resource_model_customization_uuid,
1151         model_type
1152 )
1153         SELECT 
1154                 a.service_model_uuid,
1155                 a.ar_model_customization_uuid,
1156                 "allottedResource"
1157         FROM
1158                 mso_catalog.service_to_allotted_resources a;
1159
1160 INSERT INTO mso_catalog.service_to_resource_customizations ( -- 8a                 * <<<2
1161     service_model_uuid,
1162     resource_model_customization_uuid,
1163     model_type
1164 )
1165     SELECT  
1166         ht1.model_uuid,
1167         a.model_customization_uuid,
1168         "vnf"
1169     FROM mso_catalog.vnftemp a
1170         JOIN mso_catalog.service AS ht1 ON
1171                 a.service_model_invariant_uuid = ht1.model_invariant_uuid AND
1172                 a.asdc_service_model_version = ht1.model_version;
1173
1174 ALTER TABLE `mso_catalog`.`service`  --                                            * <<<2
1175 DROP COLUMN `SERVICE_VERSION`;
1176
1177 DROP TABLE IF EXISTS mso_catalog.vnftemp; -- <<<2
1178
1179 -- >>>1
1180
1181 CREATE TABLE IF NOT EXISTS `mso_catalog`.`tosca_csar` ( --                         C <<<1
1182   `ARTIFACT_UUID` VARCHAR(200) NOT NULL,
1183   `NAME` VARCHAR(200) NOT NULL,
1184   `VERSION` VARCHAR(20) NOT NULL,
1185   `DESCRIPTION` VARCHAR(1200) NULL DEFAULT NULL,
1186   `ARTIFACT_CHECKSUM` VARCHAR(200) NOT NULL,
1187   `URL` VARCHAR(200) NOT NULL,
1188   `CREATION_TIMESTAMP` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
1189   PRIMARY KEY (`ARTIFACT_UUID`))
1190 ENGINE = InnoDB
1191 DEFAULT CHARACTER SET = latin1;
1192 -- >>>1
1193
1194 -- 5 aka 8d delete each asdc_uuid except highest ASDC_SERVICE_MODEL_VERSION vnf_resource and cascade vf_module * <<<1
1195 -- DELETE FROM mso_catalog.vnf_resource WHERE id = ANY(SELECT vnfs FROM mso_catalog.req5temp);
1196 DELETE FROM mso_catalog.vf_module WHERE id = ANY(SELECT vfs FROM mso_catalog.req5temp);
1197 DROP TABLE mso_catalog.req5temp;
1198 -- >>>1
1199
1200 DROP TABLE IF EXISTS `mso_catalog`.`service_to_networks` ; --                      D <<<1
1201
1202 DROP TABLE IF EXISTS `mso_catalog`.`service_to_allotted_resources` ; --            D <<<1
1203
1204 -- >>>1
1205
1206 -- Drop ID's <<<1
1207 ALTER TABLE `mso_catalog`.`heat_template` DROP COLUMN `id`;
1208 ALTER TABLE `mso_catalog`.`heat_files`    DROP COLUMN `id`;
1209 ALTER TABLE `mso_catalog`.`service`       DROP COLUMN `id`;
1210 ALTER TABLE `mso_catalog`.`vnf_resource`  DROP COLUMN `id`;
1211 ALTER TABLE `mso_catalog`.`vf_module`     DROP COLUMN `id`;
1212 -- >>>1
1213
1214 -- FOREIGN KEYS <<<1
1215 ALTER TABLE `mso_catalog`.`heat_nested_template`  --                               K <<<2
1216 ADD CONSTRAINT `fk_heat_nested_template__parent_heat_temp_uuid__heat_template1`
1217   FOREIGN KEY (`PARENT_HEAT_TEMPLATE_UUID`)
1218   REFERENCES `mso_catalog`.`heat_template` (`ARTIFACT_UUID`)
1219   ON DELETE CASCADE
1220   ON UPDATE CASCADE,
1221 ADD CONSTRAINT `fk_heat_nested_template__child_heat_temp_uuid__heat_template1`
1222   FOREIGN KEY (`CHILD_HEAT_TEMPLATE_UUID`)
1223   REFERENCES `mso_catalog`.`heat_template` (`ARTIFACT_UUID`)
1224   ON DELETE CASCADE
1225   ON UPDATE CASCADE;
1226
1227 ALTER TABLE `mso_catalog`.`heat_template_params`  --                               K <<<2
1228 ADD CONSTRAINT `fk_heat_template_params__heat_template1`
1229   FOREIGN KEY (`HEAT_TEMPLATE_ARTIFACT_UUID`)
1230   REFERENCES `mso_catalog`.`heat_template` (`ARTIFACT_UUID`)
1231   ON DELETE CASCADE
1232   ON UPDATE CASCADE;
1233
1234 ALTER TABLE `mso_catalog`.`service`  --                                            K <<<2
1235 ADD CONSTRAINT `fk_service__tosca_csar1`
1236   FOREIGN KEY (`TOSCA_CSAR_ARTIFACT_UUID`)
1237   REFERENCES `mso_catalog`.`tosca_csar` (`ARTIFACT_UUID`)
1238   ON DELETE CASCADE
1239   ON UPDATE CASCADE;
1240
1241 ALTER TABLE `mso_catalog`.`service_recipe`  --                                     K <<<2
1242 ADD CONSTRAINT `fk_service_recipe__service1`
1243   FOREIGN KEY (`SERVICE_MODEL_UUID`)
1244   REFERENCES `mso_catalog`.`service` (`MODEL_UUID`)
1245   ON DELETE CASCADE
1246   ON UPDATE CASCADE;
1247
1248 ALTER TABLE `mso_catalog`.`vnf_resource` --                                        K <<<2
1249         ADD PRIMARY KEY (`MODEL_UUID`),
1250         DROP COLUMN `TEMPLATE_ID`,
1251 ADD CONSTRAINT `fk_vnf_resource__heat_template1`
1252   FOREIGN KEY (`HEAT_TEMPLATE_ARTIFACT_UUID`)
1253   REFERENCES `mso_catalog`.`heat_template` (`ARTIFACT_UUID`)
1254   ON DELETE CASCADE
1255   ON UPDATE CASCADE;
1256
1257 ALTER TABLE `mso_catalog`.`vf_module`  --                                          K <<<2
1258 ADD PRIMARY KEY (`MODEL_UUID`, `VNF_RESOURCE_MODEL_UUID`),
1259 ADD CONSTRAINT `fk_vf_module__vnf_resource1`
1260   FOREIGN KEY (`VNF_RESOURCE_MODEL_UUID`)
1261   REFERENCES `mso_catalog`.`vnf_resource` (`MODEL_UUID`)
1262   ON DELETE CASCADE
1263   ON UPDATE CASCADE,
1264 ADD CONSTRAINT `fk_vf_module__heat_template_art_uuid__heat_template1`
1265   FOREIGN KEY (`HEAT_TEMPLATE_ARTIFACT_UUID`)
1266   REFERENCES `mso_catalog`.`heat_template` (`ARTIFACT_UUID`)
1267   ON DELETE CASCADE
1268   ON UPDATE CASCADE,
1269 ADD CONSTRAINT `fk_vf_module__vol_heat_template_art_uuid__heat_template2`
1270   FOREIGN KEY (`VOL_HEAT_TEMPLATE_ARTIFACT_UUID`)
1271   REFERENCES `mso_catalog`.`heat_template` (`ARTIFACT_UUID`)
1272   ON DELETE CASCADE
1273   ON UPDATE CASCADE;
1274
1275 ALTER TABLE `mso_catalog`.`vf_module_customization` -- after vf_module             K <<<2
1276   ADD CONSTRAINT `fk_vf_module_customization__vf_module1`
1277     FOREIGN KEY (`VF_MODULE_MODEL_UUID`)
1278     REFERENCES `mso_catalog`.`vf_module` (`MODEL_UUID`)
1279     ON DELETE CASCADE
1280     ON UPDATE CASCADE;
1281
1282 ALTER TABLE `mso_catalog`.`vf_module_to_heat_files`  --                            K <<<2
1283 ADD CONSTRAINT `fk_vf_module_to_heat_files__heat_files__artifact_uuid1`
1284   FOREIGN KEY (`HEAT_FILES_ARTIFACT_UUID`)
1285   REFERENCES `mso_catalog`.`heat_files` (`ARTIFACT_UUID`)
1286   ON DELETE CASCADE
1287   ON UPDATE CASCADE,
1288 ADD CONSTRAINT `fk_vf_module_to_heat_files__vf_module__model_uuid1`
1289   FOREIGN KEY (`VF_MODULE_MODEL_UUID`)
1290   REFERENCES `mso_catalog`.`vf_module` (`MODEL_UUID`)
1291   ON DELETE CASCADE
1292   ON UPDATE CASCADE;
1293
1294 ALTER TABLE `mso_catalog`.`allotted_resource_customization`  --                    K <<<2
1295 ADD CONSTRAINT `fk_allotted_resource_customization__allotted_resource1`
1296   FOREIGN KEY (`AR_MODEL_UUID`)
1297   REFERENCES `mso_catalog`.`allotted_resource` (`MODEL_UUID`)
1298   ON DELETE CASCADE
1299   ON UPDATE CASCADE;
1300
1301 ALTER TABLE `mso_catalog`.`network_resource`  --                                   K <<<2
1302 ADD CONSTRAINT `fk_network_resource__temp_network_heat_template_lookup__mod_nm1`
1303   FOREIGN KEY (`MODEL_NAME`)
1304   REFERENCES `mso_catalog`.`temp_network_heat_template_lookup` (`NETWORK_RESOURCE_MODEL_NAME`)
1305   ON DELETE NO ACTION
1306   ON UPDATE NO ACTION,
1307 ADD CONSTRAINT `fk_network_resource__heat_template1`
1308   FOREIGN KEY (`HEAT_TEMPLATE_ARTIFACT_UUID`)
1309   REFERENCES `mso_catalog`.`heat_template` (`ARTIFACT_UUID`)
1310   ON DELETE RESTRICT
1311   ON UPDATE CASCADE;
1312
1313 ALTER TABLE `mso_catalog`.`network_resource_customization`  --                     K <<<2
1314 ADD CONSTRAINT `fk_network_resource_customization__network_resource1`
1315   FOREIGN KEY (`NETWORK_RESOURCE_MODEL_UUID`)
1316   REFERENCES `mso_catalog`.`network_resource` (`MODEL_UUID`)
1317   ON DELETE CASCADE
1318   ON UPDATE CASCADE;
1319
1320 ALTER TABLE `mso_catalog`.`vnf_resource_customization`  --                         K <<<2
1321 ADD CONSTRAINT `fk_vnf_resource_customization__vnf_resource1`
1322     FOREIGN KEY (`VNF_RESOURCE_MODEL_UUID`)
1323     REFERENCES `mso_catalog`.`vnf_resource` (`MODEL_UUID`)
1324     ON DELETE CASCADE
1325     ON UPDATE CASCADE;
1326 -- >>>1
1327
1328 -- turn validation back on <<<1
1329 SET SQL_MODE=@OLD_SQL_MODE;
1330 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
1331 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
1332
1333 COMMIT;
1334 -- >>>1
1335
1336 /*
1337 This file uses folds, set by last line.
1338
1339 While reading this file, lines with the + are folded.
1340         To unfold all:     zR
1341         To fold all:       zM
1342
1343 Move cursor to folded line: type in commands...
1344         Toggle folding:    za
1345     Recursively:       zA
1346
1347 Vim help about folding
1348 :help fold
1349 */
1350 --  vim:foldmarker=<<<,>>>:foldenable:foldmethod=marker