{"id":1096,"date":"2017-04-11T09:01:06","date_gmt":"2017-04-11T07:01:06","guid":{"rendered":"http:\/\/blog.systemconnect.dk\/?p=1096"},"modified":"2017-04-11T09:01:06","modified_gmt":"2017-04-11T07:01:06","slug":"en-dynamics-nav-der-blev-alt-for-virtuel","status":"publish","type":"post","link":"https:\/\/scblog.lynge.org\/?p=1096","title":{"rendered":"En Dynamics NAV, der blev alt for virtuel&#8230;"},"content":{"rendered":"<p>K\u00f8rer du en Dynamics NAV 2015 eller 2016\u00a0med cumulative update fra mellem maj og oktober 2016 og afvikler du den p\u00e5 en VMWare host og bruger\u00a0vmxnet3 netkortet, ja s\u00e5 kan din Dynamics\u00a0NAV ende med at v\u00e6re s\u00e5 virtuel, at den slet\u00a0ikke virker :-).<\/p>\n<p>Sp\u00f8g til side. Hvis du oplever at din NAV- (og SQL-) serveren g\u00e5r helt i st\u00e5 fordi der er flere CPU-tr\u00e5de p\u00e5 SQL-serveren end det opsatte antal Max Worker Threads. Og de st\u00e5r alle sammen og venter p\u00e5 &#8220;ASYNC_NETWORK_IO&#8221;, s\u00e5 er du ramt af denne fejl.<\/p>\n<p>Der findes et antal workarounds, og du b\u00f8r under alle omst\u00e6ndigheder checke f\u00f8lgende:<\/p>\n<ul>\n<li>Du b\u00f8r have en virtuel CPU core pr. 25 sessions p\u00e5 SQL-serveren\u00a0(brugere)<\/li>\n<li>Din MAXDOP p\u00e5 SQL-serveren b\u00f8r st\u00e5 til 1 (nogle anbefaler h\u00f8jere (eller 0 = uendelig), men de fleste anbefaler 1 p\u00e5 NAV da dens foresp\u00f8rgsler typisk alligevel ikke med fordel kan afvikles parallelt. Den kan dog evt.\u00a0midlertidigt justeres op mens\u00a0der k\u00f8res\u00a0maintenance plans da de s\u00e5 afvikles hurtigere &#8211; is\u00e6r bygning af indexer vil afvikles hurtigere)<\/li>\n<\/ul>\n<p>Det KAN v\u00e6re fristende at tro at det bare kan fixes ved at\u00a0\u00f8ge antallet af &#8220;Max Worker Threads&#8221;, men det er\u00a0normalt ikke det rigtige fix og vil formentligt blot &#8220;uds\u00e6tte problemet&#8221; &#8211; dvs. du f\u00e5r det igen, bare lidt senere. Normalt er SQL-serverens default v\u00e6rdier p\u00e5 det punkt faktisk helt ok:<\/p>\n<table>\n<tbody>\n<tr>\n<td>Antal cores<\/td>\n<td>32\/64 bit operativsystem<\/td>\n<td>Max Worker Threads (default)<\/td>\n<\/tr>\n<tr>\n<td>1-4<br \/>\n8<br \/>\n16<br \/>\n32<\/td>\n<td>32 bit OS<\/td>\n<td>256<br \/>\n288<br \/>\n352<br \/>\n480<\/td>\n<\/tr>\n<tr>\n<td>1-4<br \/>\n8<br \/>\n16<br \/>\n32<\/td>\n<td>64 bit OS<\/td>\n<td>512<br \/>\n576<br \/>\n704<br \/>\n960<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Lad v\u00e6re med at blive fristet af en\u00a0l\u00f8sning hvor du fx\u00a0s\u00e6tter MAXDOP til 1, &#8220;Cost Threshold for Parallelism&#8221; til 60 og &#8220;Max Worker Threads&#8221; til 2048. Det er kun en midlertidig workaround og ikke den optimale l\u00f8sning for dig.<\/p>\n<p>En anden approach kunne naturligvis v\u00e6re blot at v\u00e6lge et andet netkort end vmxnet3 til den virtuelle host\u00a0&#8211; fx &#8220;E1000&#8221;. Men igen &#8211; det er ikke den rigtige l\u00f8sning og har andre negative sideeffekter p\u00e5 is\u00e6r performancen.<\/p>\n<p>Det korrekte fix er naturligvis at opgradere NAV til nyeste cumulative update\u00a0(evt. blot opgradere platformen med den). V\u00e6lg den nyeste &#8211; det er n\u00e6sten altid en stor fordel. Problemet\u00a0har dog v\u00e6ret l\u00f8st siden:<\/p>\n<ul>\n<li>Dynamics NAV 2015: cumulative update 25 (build 47254)<\/li>\n<li>Dynamics NAV 2016: cumulative update 13 (build 47256)<\/li>\n<\/ul>\n<p>S\u00e5 vidt vides er det kun Dynamics NAV 2015 og 2016 der er ramt af problemet.<\/p>\n<p>Se evt. ogs\u00e5 dette blogindl\u00e6g: <a href=\"http:\/\/blog.stryk.info\/2016\/12\/06\/navsql-is-completely-stalled-because-of-too-many-cpu-threads\/\" target=\"_blank\">http:\/\/blog.stryk.info\/2016\/12\/06\/navsql-is-completely-stalled-because-of-too-many-cpu-threads\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>K\u00f8rer du en Dynamics NAV 2015 eller 2016\u00a0med cumulative update fra mellem maj og oktober 2016 og afvikler du den p\u00e5 en VMWare host og bruger\u00a0vmxnet3 netkortet, ja s\u00e5 kan din Dynamics\u00a0NAV ende med at v\u00e6re s\u00e5 virtuel, at den &hellip; <a href=\"https:\/\/scblog.lynge.org\/?p=1096\">L\u00e6s resten <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1096","post","type-post","status-publish","format-standard","hentry","category-ikke-kategoriseret"],"_links":{"self":[{"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=\/wp\/v2\/posts\/1096","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1096"}],"version-history":[{"count":3,"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=\/wp\/v2\/posts\/1096\/revisions"}],"predecessor-version":[{"id":1099,"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=\/wp\/v2\/posts\/1096\/revisions\/1099"}],"wp:attachment":[{"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1096"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1096"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1096"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}