<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Differences in generated code - unnecessary constraint creation step in SAS Data Management</title>
    <link>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181948#M3682</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;What do you mean by development environment with regards to "original job"? Where is that?&lt;/P&gt;&lt;P&gt;It sounds like you are not comparing the &lt;EM&gt;same&lt;/EM&gt; job.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 02 Sep 2014 13:47:58 GMT</pubDate>
    <dc:creator>LinusH</dc:creator>
    <dc:date>2014-09-02T13:47:58Z</dc:date>
    <item>
      <title>Differences in generated code - unnecessary constraint creation step</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181940#M3674</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;My colleague and I are seeing different code generated for the same job.&lt;/P&gt;&lt;P&gt;I open a job on my Win7 machine using DIS version 4.21, and open a join transform to view the code. Right at the end of the join I see the following:&lt;/P&gt;&lt;P&gt;%global etls_sql_pushDown;&lt;/P&gt;&lt;P&gt;%let etls_sql_pushDown = &amp;amp;sys_sql_ip_all;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%rcSet(&amp;amp;sqlrc); &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%macro etls_completeTarget();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; /*---- Create the integrity constraints for a table&amp;nbsp; ----*/ &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; %put %str(NOTE: Creating integrity constraints ...);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; proc datasets library=work nolist;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; modify Note_0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ic create not null (BI_Row_Effective_Date);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ic create not null (Note_Id);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ic create not null (Account_Id);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ic create not null (Created_By_User_Id);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ic create not null (Updated_By_User_Id);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ic create not null (BI_Row_Deleted_Ind);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ic create not null (Security_Type_Desc);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ic create not null (Note_Topic_Desc);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; quit;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; %rcSet(&amp;amp;syserr); &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;%mend etls_completeTarget;&lt;/P&gt;&lt;P&gt;%etls_completeTarget;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My colleague opens the job on her machine (same version of DIS as far as we can tell), and the code for that join finishes without the etls_completeTarget macro definition, like so:&lt;/P&gt;&lt;P&gt;%global etls_sql_pushDown;&lt;/P&gt;&lt;P&gt;%let etls_sql_pushDown = &amp;amp;sys_sql_ip_all;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%rcSet(&amp;amp;sqlrc); &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Does anyone know any reason for the difference we're seeing? Given the size of the (temporary) table being created here there is potentially quite a large performance penalty to be paid for what seems to be an unnecessary step. When viewed through the diagram, the join looks identical.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Sep 2014 09:49:21 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181940#M3674</guid>
      <dc:creator>geoff_ness</dc:creator>
      <dc:date>2014-09-01T09:49:21Z</dc:date>
    </item>
    <item>
      <title>Re: Differences in generated code - unnecessary constraint creation step</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181941#M3675</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Do both of you work with the SAME metadata? (identical metadata server, identical port)&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Sep 2014 10:48:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181941#M3675</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2014-09-01T10:48:41Z</dc:date>
    </item>
    <item>
      <title>Re: Differences in generated code - unnecessary constraint creation step</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181942#M3676</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;And Identical meta data id? Do you work with change management? Do you have write access when opening the job? What happens if you deploy the job?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Sep 2014 11:17:21 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181942#M3676</guid>
      <dc:creator>LinusH</dc:creator>
      <dc:date>2014-09-01T11:17:21Z</dc:date>
    </item>
    <item>
      <title>Re: Differences in generated code - unnecessary constraint creation step</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181943#M3677</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yes. We opened the job from the same metadata location.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Sep 2014 12:09:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181943#M3677</guid>
      <dc:creator>geoff_ness</dc:creator>
      <dc:date>2014-09-01T12:09:06Z</dc:date>
    </item>
    <item>
      <title>Re: Differences in generated code - unnecessary constraint creation step</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181944#M3678</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Do you mean metadata id for the job? I will check tomorrow when I get back into work. We do work with change management but on this occasion opened the job with read access only.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When I deploy the job into our development environment, the additional code is preserved, whereas when my colleague deployed the original job it wasn't (i.e. she just saw the same code as when she viewed the job in DIS). We haven't yet tried the release process which involves exporting the job from development into a package then importing the package into production.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Sep 2014 12:18:47 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181944#M3678</guid>
      <dc:creator>geoff_ness</dc:creator>
      <dc:date>2014-09-01T12:18:47Z</dc:date>
    </item>
    <item>
      <title>Re: Differences in generated code - unnecessary constraint creation step</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181945#M3679</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;It is the DI Studio client which generates the code based on server side metadata.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;I remember having worked in a project where the patch level of a DIS4.2 version made a difference in the code generated.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;Are you 110% sure that the two DIS clients are of the same version and have the same patches applied?&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;Assuming that you're both using the same metadata (so not one of you the job in a "checked-out" version) then:&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;If you migrate the job to a higher environment, you migrate metadata from server to server. The patch level of the client shouldn't affect the .spk package. But: When you open the job in the new environment and look at the generated code (generated by the DIS client) then the patch level of the client can matter.&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;So if the two DIS clients are not identical (version and patch level) then I would expect to see the code differences with metadata coming from any environment.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Sep 2014 12:40:43 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181945#M3679</guid>
      <dc:creator>Patrick</dc:creator>
      <dc:date>2014-09-01T12:40:43Z</dc:date>
    </item>
    <item>
      <title>Re: Differences in generated code - unnecessary constraint creation step</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181946#M3680</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Patrick, yes the clients are definitely the same version, but there is a difference in the java runtime - my JRE version is 1.6.0_17 whereas my colleague's is 1.6.0_20. Another colleague with the same JRE version as me gets the same generated code as I do, so this difference looks to be the most likely culprit.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Sep 2014 21:55:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181946#M3680</guid>
      <dc:creator>geoff_ness</dc:creator>
      <dc:date>2014-09-01T21:55:15Z</dc:date>
    </item>
    <item>
      <title>Re: Differences in generated code - unnecessary constraint creation step</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181947#M3681</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This looks to be incorrect. Yet another colleague with the same JRE version (and same DIS client version) does not get the additional step.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Sep 2014 01:45:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181947#M3681</guid>
      <dc:creator>geoff_ness</dc:creator>
      <dc:date>2014-09-02T01:45:41Z</dc:date>
    </item>
    <item>
      <title>Re: Differences in generated code - unnecessary constraint creation step</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181948#M3682</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;What do you mean by development environment with regards to "original job"? Where is that?&lt;/P&gt;&lt;P&gt;It sounds like you are not comparing the &lt;EM&gt;same&lt;/EM&gt; job.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Sep 2014 13:47:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181948#M3682</guid>
      <dc:creator>LinusH</dc:creator>
      <dc:date>2014-09-02T13:47:58Z</dc:date>
    </item>
    <item>
      <title>Re: Differences in generated code - unnecessary constraint creation step</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181949#M3683</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Sorry I know that answer made it sound like that. No, we are comparing the same job - when I refer to the original job, I am talking about a job which was released to production about a year ago. As opposed to the job which I am now working on in development, which I have made some changes to. It was the process of comparing the deployed code from different environments that led to further investigation. We are now comparing the code that is generated by DIS when we open the production job, me on my DIS client and my colleague on hers - this is where we see differences that we don't expect, as we are definitely looking at the same metadata object.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Sep 2014 21:27:46 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181949#M3683</guid>
      <dc:creator>geoff_ness</dc:creator>
      <dc:date>2014-09-02T21:27:46Z</dc:date>
    </item>
    <item>
      <title>Re: Differences in generated code - unnecessary constraint creation step</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181950#M3684</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Still not convinced by your description that you are looking at the same object. But if you are, and this is a problem for you, I sugest that you open a track to SAS tech support, they could help you trouble shoot this.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Sep 2014 06:06:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/Differences-in-generated-code-unnecessary-constraint-creation/m-p/181950#M3684</guid>
      <dc:creator>LinusH</dc:creator>
      <dc:date>2014-09-03T06:06:42Z</dc:date>
    </item>
  </channel>
</rss>

