<?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 Unable to make many concurrent SDE connections using arcpy in Python Questions</title>
    <link>https://community.esri.com/t5/python-questions/unable-to-make-many-concurrent-sde-connections/m-p/130525#M10141</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am try to make concurrent connections to the my SQL Server SDE using arcpy and&amp;nbsp;multiprocessing libraries&amp;nbsp;&lt;/P&gt;&lt;P&gt;When the number of working is large i.e. 16 , I got this error:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;SPAN style="color: #1d1c1d; background-color: #f8f8f8;"&gt;ERROR 000229: Cannot open GeoDB.sde/GeoDB.dbo.Layer1&lt;/SPAN&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #1d1c1d; background-color: #f8f8f8;"&gt;while the code works fine if I am using small number of workers i.e. 4 or just without multiprocessing&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #1d1c1d; background-color: #f8f8f8;"&gt;Here is the simple code that successfully run without&amp;nbsp;&lt;SPAN style="color: #3d3d3d;"&gt;multiprocessing&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;SPAN style="color: #1d1c1d; background-color: #f8f8f8;"&gt;arcpy.MakeFeatureLayer_management("&lt;SPAN&gt;Geo&lt;/SPAN&gt;&lt;SPAN&gt;DB.&lt;/SPAN&gt;&lt;SPAN&gt;sde/&lt;/SPAN&gt;&lt;SPAN&gt;Geo&lt;/SPAN&gt;&lt;SPAN&gt;DB&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;dbo&lt;/SPAN&gt;&lt;SPAN&gt;.Layer1"&lt;/SPAN&gt;, "mylayer","status = 1")&lt;/SPAN&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;here is the code with multiprocessing&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;def exe_task(layer_name):&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN style="color: #1d1c1d; background-color: #f8f8f8;"&gt;arcpy.MakeFeatureLayer_management("&lt;/SPAN&gt;&lt;SPAN style="color: #1d1c1d;"&gt;Geo&lt;/SPAN&gt;&lt;SPAN style="color: #1d1c1d;"&gt;DB.&lt;/SPAN&gt;&lt;SPAN style="color: #1d1c1d;"&gt;sde/&lt;/SPAN&gt;&lt;SPAN style="color: #1d1c1d;"&gt;Geo&lt;/SPAN&gt;&lt;SPAN style="color: #1d1c1d;"&gt;DB&lt;/SPAN&gt;&lt;SPAN style="color: #1d1c1d;"&gt;.&lt;/SPAN&gt;&lt;SPAN style="color: #1d1c1d;"&gt;dbo&lt;/SPAN&gt;&lt;SPAN style="color: #1d1c1d;"&gt;.Layer1"&lt;/SPAN&gt;&lt;SPAN style="color: #1d1c1d; background-color: #f8f8f8;"&gt;, &lt;SPAN style="color: #3d3d3d;"&gt;layer_name&lt;/SPAN&gt;,"status = 1")&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return True&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;from multiprocessing import Pool&lt;/P&gt;&lt;P&gt;import arcpy&lt;/P&gt;&lt;P&gt;if __name__ == "__main__":&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN&gt;number_of_workers =&amp;nbsp;4&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;p = Pool(number_of_workers)&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;tasks = ["layer1","layer2","layer3","layer4"]&lt;/SPAN&gt;&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;result = p.map(exe_task, tasks)&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;p.close()&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;p.join()&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(result)&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;This is just a sample code to show the problem, if the number of workers 4 it works fine, if it is large like 16 it gives the error above. (also you need to increase the tasks number equal to workers numbers)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;is there any configuration on arcpy or sde to fix this problem?&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 10 Oct 2019 19:35:45 GMT</pubDate>
    <dc:creator>mohammednabil</dc:creator>
    <dc:date>2019-10-10T19:35:45Z</dc:date>
    <item>
      <title>Unable to make many concurrent SDE connections using arcpy</title>
      <link>https://community.esri.com/t5/python-questions/unable-to-make-many-concurrent-sde-connections/m-p/130525#M10141</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am try to make concurrent connections to the my SQL Server SDE using arcpy and&amp;nbsp;multiprocessing libraries&amp;nbsp;&lt;/P&gt;&lt;P&gt;When the number of working is large i.e. 16 , I got this error:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;SPAN style="color: #1d1c1d; background-color: #f8f8f8;"&gt;ERROR 000229: Cannot open GeoDB.sde/GeoDB.dbo.Layer1&lt;/SPAN&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #1d1c1d; background-color: #f8f8f8;"&gt;while the code works fine if I am using small number of workers i.e. 4 or just without multiprocessing&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #1d1c1d; background-color: #f8f8f8;"&gt;Here is the simple code that successfully run without&amp;nbsp;&lt;SPAN style="color: #3d3d3d;"&gt;multiprocessing&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;SPAN style="color: #1d1c1d; background-color: #f8f8f8;"&gt;arcpy.MakeFeatureLayer_management("&lt;SPAN&gt;Geo&lt;/SPAN&gt;&lt;SPAN&gt;DB.&lt;/SPAN&gt;&lt;SPAN&gt;sde/&lt;/SPAN&gt;&lt;SPAN&gt;Geo&lt;/SPAN&gt;&lt;SPAN&gt;DB&lt;/SPAN&gt;&lt;SPAN&gt;.&lt;/SPAN&gt;&lt;SPAN&gt;dbo&lt;/SPAN&gt;&lt;SPAN&gt;.Layer1"&lt;/SPAN&gt;, "mylayer","status = 1")&lt;/SPAN&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;here is the code with multiprocessing&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;def exe_task(layer_name):&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN style="color: #1d1c1d; background-color: #f8f8f8;"&gt;arcpy.MakeFeatureLayer_management("&lt;/SPAN&gt;&lt;SPAN style="color: #1d1c1d;"&gt;Geo&lt;/SPAN&gt;&lt;SPAN style="color: #1d1c1d;"&gt;DB.&lt;/SPAN&gt;&lt;SPAN style="color: #1d1c1d;"&gt;sde/&lt;/SPAN&gt;&lt;SPAN style="color: #1d1c1d;"&gt;Geo&lt;/SPAN&gt;&lt;SPAN style="color: #1d1c1d;"&gt;DB&lt;/SPAN&gt;&lt;SPAN style="color: #1d1c1d;"&gt;.&lt;/SPAN&gt;&lt;SPAN style="color: #1d1c1d;"&gt;dbo&lt;/SPAN&gt;&lt;SPAN style="color: #1d1c1d;"&gt;.Layer1"&lt;/SPAN&gt;&lt;SPAN style="color: #1d1c1d; background-color: #f8f8f8;"&gt;, &lt;SPAN style="color: #3d3d3d;"&gt;layer_name&lt;/SPAN&gt;,"status = 1")&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return True&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;from multiprocessing import Pool&lt;/P&gt;&lt;P&gt;import arcpy&lt;/P&gt;&lt;P&gt;if __name__ == "__main__":&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;SPAN&gt;number_of_workers =&amp;nbsp;4&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;p = Pool(number_of_workers)&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;tasks = ["layer1","layer2","layer3","layer4"]&lt;/SPAN&gt;&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;result = p.map(exe_task, tasks)&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;p.close()&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;p.join()&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;print(result)&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;This is just a sample code to show the problem, if the number of workers 4 it works fine, if it is large like 16 it gives the error above. (also you need to increase the tasks number equal to workers numbers)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;is there any configuration on arcpy or sde to fix this problem?&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 Oct 2019 19:35:45 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/unable-to-make-many-concurrent-sde-connections/m-p/130525#M10141</guid>
      <dc:creator>mohammednabil</dc:creator>
      <dc:date>2019-10-10T19:35:45Z</dc:date>
    </item>
  </channel>
</rss>

