Uploaded image for project: 'Teiid'
  1. Teiid
  2. TEIID-5096

Using /*+ MAKEDEP */ blocks the deploy proces when using DDL based vdb

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Cannot Reproduce
    • Icon: Major Major
    • None
    • 9.3.3
    • None
    • None

      Hi,

      I've created a vdb that is depoyed using a vdb-ddl.ddl file.

      The deployment just stops and returned no error message when adding the SQL part below. Subsequent deployments are not handles. It seems like the deployment process just hangs. The only way to resolve this was to stop the wildfly server, remove the latest added content from the standalone/data/content directory and restart wildfly.

      CREATE VIEW tv_retrieve_monvals(
      	admissionid	integer not null,
      	VariableID	integer not null,
      	Datetime	timestamp not null,
      	Entertime	timestamp not null,
      	varvalue	double not null,
      	primary key (admissionid, VariableID, Datetime)
      )
      AS
      SELECT v.PatientID AS admissionid, v.VariableID, v.Datetime, v.Entertime, v."Value" AS varvalue
      FROM (
      	SELECT mv.PatientID, mv.VariableID, mv.Datetime, mv.Entertime, mv."Value", 
      		ROW_NUMBER() OVER (PARTITION BY mv.PatientID, mv.VariableID, mv.Datetime ORDER BY mv.Entertime DESC) AS rang 
      	FROM izisprod.P_GeneralData AS gd 
      	INNER JOIN /*+ MAKEDEP */ izisprod.P_MonVals AS mv ON 
      		gd.PatientID = mv.PatientID AND 
      		bitand(mv.Status, 8) = 8 AND 
      		bitand(mv.Status, 2) <> 2 
      	WHERE gd.Status = 1 OR (gd.Status >= 4 AND gd.Status <> 5) 
      	UNION 
      	SELECT mv.PatientID, mv.VariableID, mv.Datetime, mv.Entertime, mv."Value", 
      		ROW_NUMBER() OVER (PARTITION BY mv.PatientID, mv.VariableID, mv.Datetime ORDER BY mv.Entertime DESC) AS rang 
      	FROM iziswh.P_GeneralData AS gd 
      	INNER JOIN /*+ MAKEDEP */ iziswh.P_MonVals AS mv ON 
      		gd.PatientID = mv.PatientID AND 
      		bitand(mv.Status, 8) = 8 AND 
      		bitand(mv.Status, 2) <> 2
      ) AS v
      WHERE v.rang = 1;
      

      Removing the /*+ MAKDEP */ references resolves the issue.

      I've tried creating a small ddl script that uses /*+ MAKEDEP */ to reproduce this issue but this script does deploy so currently I can not make a small example.

            rhn-engineering-shawkins Steven Hawkins
            gadeynebram Bram Gadeyne (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: