<?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: trunJob 'Use an independent Process' is checked - pass data between mainjob in Talend Studio</title>
    <link>https://community.qlik.com/t5/Talend-Studio/trunJob-Use-an-independent-Process-is-checked-pass-data-between/m-p/2306272#M77836</link>
    <description>&lt;P&gt;When&amp;nbsp;&lt;SPAN&gt;trunJob 'Use an independent Process' is checked, the Talend Parent job launch the child job as an independent Java process. &amp;nbsp;Java security does not allow another process to access its memory or variable. &amp;nbsp;The memory space of that process is locked and limited to that process only. &amp;nbsp;The only way to pass back values is through files, or database. &amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;You can initialise the Java process, i.e. the child job with parameters (hence, that's why Talend can still pass context variables to it). &amp;nbsp;However, such a Java process can only either write the results somewhere, i.e. file or database, or just return a single value (i.e. the exit code of the application).&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;Hence, there is not much options here to get the results back through context variables or other in memory variable in this situation.&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;Reading a file or a record entry in a db is pretty fast though. &amp;nbsp;But you should not use files if many processes may be accessing the same files at the same time, else you may put some deadlock on the file.&lt;/SPAN&gt;&lt;/P&gt;</description>
    <pubDate>Mon, 21 Aug 2017 02:25:22 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2017-08-21T02:25:22Z</dc:date>
    <item>
      <title>trunJob 'Use an independent Process' is checked - pass data between mainjob</title>
      <link>https://community.qlik.com/t5/Talend-Studio/trunJob-Use-an-independent-Process-is-checked-pass-data-between/m-p/2306271#M77835</link>
      <description>&lt;P&gt;I have a main job that calls a subjob.&lt;BR /&gt;I need the subjob to be called with the 'Use independent process to run subjob' property checked.&lt;/P&gt;
&lt;P&gt;I see where tBufferOut is not available with this setting checked.&lt;BR /&gt;&lt;BR /&gt;Other than persisting data out to a file; and then reading back from the file; what is a way to move data in memory?&lt;BR /&gt;&lt;BR /&gt;Ive tried playing with setting context variables and global map variables; but am not getting the changes persisted from the subjob back in the main job.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I'm not finding alot of documentation on the setting '&lt;SPAN&gt;Use independent process to run subjob' and passing data.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;Can someone share options or best practices to do this?&lt;/P&gt;</description>
      <pubDate>Fri, 18 Aug 2017 18:59:29 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/trunJob-Use-an-independent-Process-is-checked-pass-data-between/m-p/2306271#M77835</guid>
      <dc:creator>DaveTaylor</dc:creator>
      <dc:date>2017-08-18T18:59:29Z</dc:date>
    </item>
    <item>
      <title>Re: trunJob 'Use an independent Process' is checked - pass data between mainjob</title>
      <link>https://community.qlik.com/t5/Talend-Studio/trunJob-Use-an-independent-Process-is-checked-pass-data-between/m-p/2306272#M77836</link>
      <description>&lt;P&gt;When&amp;nbsp;&lt;SPAN&gt;trunJob 'Use an independent Process' is checked, the Talend Parent job launch the child job as an independent Java process. &amp;nbsp;Java security does not allow another process to access its memory or variable. &amp;nbsp;The memory space of that process is locked and limited to that process only. &amp;nbsp;The only way to pass back values is through files, or database. &amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;You can initialise the Java process, i.e. the child job with parameters (hence, that's why Talend can still pass context variables to it). &amp;nbsp;However, such a Java process can only either write the results somewhere, i.e. file or database, or just return a single value (i.e. the exit code of the application).&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;Hence, there is not much options here to get the results back through context variables or other in memory variable in this situation.&lt;/SPAN&gt;&lt;/P&gt; 
&lt;P&gt;&amp;nbsp;&lt;/P&gt; 
&lt;P&gt;&lt;SPAN&gt;Reading a file or a record entry in a db is pretty fast though. &amp;nbsp;But you should not use files if many processes may be accessing the same files at the same time, else you may put some deadlock on the file.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 21 Aug 2017 02:25:22 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/trunJob-Use-an-independent-Process-is-checked-pass-data-between/m-p/2306272#M77836</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2017-08-21T02:25:22Z</dc:date>
    </item>
  </channel>
</rss>

