{"id":745,"date":"2016-02-23T10:34:00","date_gmt":"2016-02-23T18:34:00","guid":{"rendered":"http:\/\/3.209.169.194\/blogs\/erin\/?p=745"},"modified":"2016-02-23T11:12:09","modified_gmt":"2016-02-23T19:12:09","slug":"sql-server-setup-error-the-directory-name-is-invalid","status":"publish","type":"post","link":"https:\/\/www.sqlskills.com\/blogs\/erin\/sql-server-setup-error-the-directory-name-is-invalid\/","title":{"rendered":"SQL Server Setup Error: The directory name is invalid"},"content":{"rendered":"<p>A few weeks ago I got an email from someone who had attended our <a href=\"https:\/\/www.sqlskills.com\/sql-server-training\/ie0\/\">Accidental DBA IE<\/a> class last year, and this person was getting the following error when trying to apply a cumulative update:<\/p>\n<figure id=\"attachment_746\" aria-describedby=\"caption-attachment-746\" style=\"width: 621px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/www.sqlskills.com\/blogs\/erin\/wp-content\/uploads\/2016\/02\/error.jpg\"><img fetchpriority=\"high\" decoding=\"async\" class=\"size-full wp-image-746\" src=\"https:\/\/www.sqlskills.com\/blogs\/erin\/wp-content\/uploads\/2016\/02\/error.jpg\" alt=\"SQL Server Setup failure: The directory name is invalid.\" width=\"621\" height=\"159\" srcset=\"https:\/\/www.sqlskills.com\/blogs\/erin\/wp-content\/uploads\/2016\/02\/error.jpg 621w, https:\/\/www.sqlskills.com\/blogs\/erin\/wp-content\/uploads\/2016\/02\/error-300x77.jpg 300w\" sizes=\"(max-width: 621px) 100vw, 621px\" \/><\/a><figcaption id=\"caption-attachment-746\" class=\"wp-caption-text\">SQL Server Setup failure: The directory name is invalid.<\/figcaption><\/figure>\n<p>The initial email didn&#8217;t have a lot of details, so I started asking questions to understand what version was being installed, the environment configuration, etc.\u00a0 Turns out this was a two-node Windows Server Failover Cluster (WSFC) with multiple SQL Server 2012 instances installed, and one of the instances was still running on the node this person was trying to patch.\u00a0 To be clear, the two nodes were SRV1 and SRV2, and the instances were PROD-A and PROD-B running on SRV1, and PROD-C which was running on SRV2.\u00a0 This person was trying to install the cumulative update on SRV2.<\/p>\n<p>Now, those of you that manage clusters may be thinking &#8220;Doesn&#8217;t this DBA know that the way you do rolling upgrades is by <em>not<\/em> having any instances running on the node you&#8217;re trying to patch?&#8221;\u00a0 Well, not everyone is an experienced DBA, a lot of people are Accidental or Junior DBAs, and if this is the first cluster you&#8217;re supporting, you may <em>not<\/em> know that, or understand why.\u00a0 Further, when you update a single node on a stand-alone server (one that&#8217;s NOT in a cluster) it&#8217;s not like you shut down the instance yourself and apply the CU, right?<\/p>\n<p>We checked the summary installation log, located in C:\\Program Files\\Microsoft SQL Server\\110\\Setup Bootstrap\\Log and found the following Exit message:<\/p>\n<blockquote><p>The directory &#8216;M:\\a13e546ad3e0de04a828\\&#8217; doesn&#8217;t exist.<\/p><\/blockquote>\n<p>The M drive was a resource for PROD-C, along with the N drive.\u00a0 There was also a quorum drive (Q) and the local C drive.\u00a0 So how was M not available?<\/p>\n<p>Well, it was initially, when the install started, and when the installer runs, it puts the files on the first network drive that it finds (if it&#8217;s an administrative installation), or the drive with the most free space (see: <a href=\"https:\/\/msdn.microsoft.com\/en-us\/library\/aa371372%28VS.85%29.aspx\">ROOTDRIVE property<\/a>).\u00a0 In this case, the M drive met the criteria.\u00a0 When the installer then stopped the instance and took the cluster disks offline, the M drive was suddenly gone, hence the invalid directory.<\/p>\n<p>You could argue that this is a bug&#8230;maybe&#8230;but the solution I suggested was to move PROD-C over to the SRV1 node, then run the installation.\u00a0 You could also specify the directory as part of a command-line install, therefore using a different disk, but downtime was permitted in this scenario, so the failover wasn&#8217;t a deal-breaker.\u00a0 Once this was done, the installation ran fine, and the latest CU was applied on that node.\u00a0 The DBA then went through the process of failing all the instances over to the patched node, and then applying the CU on SRV1.<\/p>\n<p>As an aside, if you&#8217;re not sure of the current service pack, cumulative update, or hotfix available for your SQL Server version, I recommend <a href=\"http:\/\/sqlserverbuilds.blogspot.com\/\">this site<\/a> which has all versions and releases and links to the downloads.\u00a0 And, for those of you running SQL Server 2014, CU5 for SP1 just came out yesterday and has some interesting fixes (see https:\/\/support.microsoft.com\/en-us\/kb\/3130926).<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A few weeks ago I got an email from someone who had attended our Accidental DBA IE class last year, and this person was getting the following error when trying to apply a cumulative update: The initial email didn&#8217;t have a lot of details, so I started asking questions to understand what version was being [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[45],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.9.1 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>SQL Server Setup Error: The Directory Name is Invalid<\/title>\n<meta name=\"description\" content=\"Trying to resolve the error &quot;The Directory Name is Invalid&quot; during a SQL Server article? Check out this post to see if you&#039;re running into this issue.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.sqlskills.com\/blogs\/erin\/sql-server-setup-error-the-directory-name-is-invalid\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SQL Server Setup Error: The Directory Name is Invalid\" \/>\n<meta property=\"og:description\" content=\"Trying to resolve the error &quot;The Directory Name is Invalid&quot; during a SQL Server article? Check out this post to see if you&#039;re running into this issue.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.sqlskills.com\/blogs\/erin\/sql-server-setup-error-the-directory-name-is-invalid\/\" \/>\n<meta property=\"og:site_name\" content=\"Erin Stellato\" \/>\n<meta property=\"article:published_time\" content=\"2016-02-23T18:34:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2016-02-23T19:12:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.sqlskills.com\/blogs\/erin\/wp-content\/uploads\/2016\/02\/error.jpg\" \/>\n<meta name=\"author\" content=\"Erin Stellato\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Erin Stellato\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/erin\/sql-server-setup-error-the-directory-name-is-invalid\/\",\"url\":\"https:\/\/www.sqlskills.com\/blogs\/erin\/sql-server-setup-error-the-directory-name-is-invalid\/\",\"name\":\"SQL Server Setup Error: The Directory Name is Invalid\",\"isPartOf\":{\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/erin\/#website\"},\"datePublished\":\"2016-02-23T18:34:00+00:00\",\"dateModified\":\"2016-02-23T19:12:09+00:00\",\"author\":{\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/erin\/#\/schema\/person\/76170223ffffa1df03fd9be5b66cb158\"},\"description\":\"Trying to resolve the error \\\"The Directory Name is Invalid\\\" during a SQL Server article? Check out this post to see if you're running into this issue.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/erin\/sql-server-setup-error-the-directory-name-is-invalid\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.sqlskills.com\/blogs\/erin\/sql-server-setup-error-the-directory-name-is-invalid\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/erin\/sql-server-setup-error-the-directory-name-is-invalid\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.sqlskills.com\/blogs\/erin\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"SQL Server Setup Error: The directory name is invalid\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/erin\/#website\",\"url\":\"https:\/\/www.sqlskills.com\/blogs\/erin\/\",\"name\":\"Erin Stellato\",\"description\":\"The SQL Sequel\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.sqlskills.com\/blogs\/erin\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/erin\/#\/schema\/person\/76170223ffffa1df03fd9be5b66cb158\",\"name\":\"Erin Stellato\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/erin\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0c8b485bd54ea26b57e99f79b525f409?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0c8b485bd54ea26b57e99f79b525f409?s=96&d=mm&r=g\",\"caption\":\"Erin Stellato\"},\"sameAs\":[\"http:\/\/3.209.169.194\/blogs\/erin\"],\"url\":\"https:\/\/www.sqlskills.com\/blogs\/erin\/author\/erin\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"SQL Server Setup Error: The Directory Name is Invalid","description":"Trying to resolve the error \"The Directory Name is Invalid\" during a SQL Server article? Check out this post to see if you're running into this issue.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.sqlskills.com\/blogs\/erin\/sql-server-setup-error-the-directory-name-is-invalid\/","og_locale":"en_US","og_type":"article","og_title":"SQL Server Setup Error: The Directory Name is Invalid","og_description":"Trying to resolve the error \"The Directory Name is Invalid\" during a SQL Server article? Check out this post to see if you're running into this issue.","og_url":"https:\/\/www.sqlskills.com\/blogs\/erin\/sql-server-setup-error-the-directory-name-is-invalid\/","og_site_name":"Erin Stellato","article_published_time":"2016-02-23T18:34:00+00:00","article_modified_time":"2016-02-23T19:12:09+00:00","og_image":[{"url":"https:\/\/www.sqlskills.com\/blogs\/erin\/wp-content\/uploads\/2016\/02\/error.jpg"}],"author":"Erin Stellato","twitter_misc":{"Written by":"Erin Stellato","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.sqlskills.com\/blogs\/erin\/sql-server-setup-error-the-directory-name-is-invalid\/","url":"https:\/\/www.sqlskills.com\/blogs\/erin\/sql-server-setup-error-the-directory-name-is-invalid\/","name":"SQL Server Setup Error: The Directory Name is Invalid","isPartOf":{"@id":"https:\/\/www.sqlskills.com\/blogs\/erin\/#website"},"datePublished":"2016-02-23T18:34:00+00:00","dateModified":"2016-02-23T19:12:09+00:00","author":{"@id":"https:\/\/www.sqlskills.com\/blogs\/erin\/#\/schema\/person\/76170223ffffa1df03fd9be5b66cb158"},"description":"Trying to resolve the error \"The Directory Name is Invalid\" during a SQL Server article? Check out this post to see if you're running into this issue.","breadcrumb":{"@id":"https:\/\/www.sqlskills.com\/blogs\/erin\/sql-server-setup-error-the-directory-name-is-invalid\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.sqlskills.com\/blogs\/erin\/sql-server-setup-error-the-directory-name-is-invalid\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.sqlskills.com\/blogs\/erin\/sql-server-setup-error-the-directory-name-is-invalid\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.sqlskills.com\/blogs\/erin\/"},{"@type":"ListItem","position":2,"name":"SQL Server Setup Error: The directory name is invalid"}]},{"@type":"WebSite","@id":"https:\/\/www.sqlskills.com\/blogs\/erin\/#website","url":"https:\/\/www.sqlskills.com\/blogs\/erin\/","name":"Erin Stellato","description":"The SQL Sequel","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.sqlskills.com\/blogs\/erin\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.sqlskills.com\/blogs\/erin\/#\/schema\/person\/76170223ffffa1df03fd9be5b66cb158","name":"Erin Stellato","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.sqlskills.com\/blogs\/erin\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/0c8b485bd54ea26b57e99f79b525f409?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0c8b485bd54ea26b57e99f79b525f409?s=96&d=mm&r=g","caption":"Erin Stellato"},"sameAs":["http:\/\/3.209.169.194\/blogs\/erin"],"url":"https:\/\/www.sqlskills.com\/blogs\/erin\/author\/erin\/"}]}},"_links":{"self":[{"href":"https:\/\/www.sqlskills.com\/blogs\/erin\/wp-json\/wp\/v2\/posts\/745"}],"collection":[{"href":"https:\/\/www.sqlskills.com\/blogs\/erin\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.sqlskills.com\/blogs\/erin\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/erin\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/erin\/wp-json\/wp\/v2\/comments?post=745"}],"version-history":[{"count":0,"href":"https:\/\/www.sqlskills.com\/blogs\/erin\/wp-json\/wp\/v2\/posts\/745\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.sqlskills.com\/blogs\/erin\/wp-json\/wp\/v2\/media?parent=745"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/erin\/wp-json\/wp\/v2\/categories?post=745"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/erin\/wp-json\/wp\/v2\/tags?post=745"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}