{"id":158,"date":"2017-12-19T17:23:54","date_gmt":"2017-12-19T22:23:54","guid":{"rendered":"https:\/\/www.sqlskills.com\/blogs\/tim\/?p=158"},"modified":"2017-12-19T17:23:54","modified_gmt":"2017-12-19T22:23:54","slug":"microsoft-database-experimentation-assistant-with-sql-server-2017","status":"publish","type":"post","link":"https:\/\/www.sqlskills.com\/blogs\/tim\/microsoft-database-experimentation-assistant-with-sql-server-2017\/","title":{"rendered":"Microsoft Database Experimentation Assistant with SQL Server 2017"},"content":{"rendered":"<p>If you\u2019ve tried using the Microsoft Database Experimentation Assistant (DEA) with SQL Server 2017 prior to CU1 to replay a trace, then you\u2019ve likely encountered an error like the one below telling you that the Preprocessed IRF path is empty or contains invalid files. The great news is that after applying CU1, this has been corrected.<\/p>\n<p><a href=\"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-content\/uploads\/2017\/12\/image31.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-medium wp-image-161\" src=\"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-content\/uploads\/2017\/12\/image31-300x162.jpg\" alt=\"image3\" width=\"300\" height=\"162\" srcset=\"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-content\/uploads\/2017\/12\/image31-300x162.jpg 300w, https:\/\/www.sqlskills.com\/blogs\/tim\/wp-content\/uploads\/2017\/12\/image31.jpg 477w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>So how do you get started working with DEA? First you have to install it. You can find the install package <a href=\"https:\/\/www.microsoft.com\/en-us\/download\/details.aspx?id=54090\" target=\"_blank\">here<\/a>:<\/p>\n<p>Once DEA is installed, if you are going to want to replay a trace, you\u2019ll also have to install the Distributed Replay Controller. You\u2019ll find this option in the installation of SQL Server. I\u2019m typically using my controller server as a client too, so I install both.<\/p>\n<p><a href=\"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-content\/uploads\/2017\/12\/Image11.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-159\" src=\"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-content\/uploads\/2017\/12\/Image11.jpg\" alt=\"Image1\" width=\"298\" height=\"208\" \/><\/a><\/p>\n<p>I haven\u2019t found it documented anywhere, but when you install the Distribute Replay Controller, it prompts you to provide a controller name. I\u2019ve installed this on numerous occasions and unless I name the controller as the same name as the hostname of the server, I cannot replay a trace. For example, my demo VM for this test is named 2017DEA so that is the name I had to provide as the controller machine. Just an FYI.<\/p>\n<p><a href=\"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-content\/uploads\/2017\/12\/Image21.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-medium wp-image-160\" src=\"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-content\/uploads\/2017\/12\/Image21-300x41.jpg\" alt=\"Image2\" width=\"300\" height=\"41\" srcset=\"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-content\/uploads\/2017\/12\/Image21-300x41.jpg 300w, https:\/\/www.sqlskills.com\/blogs\/tim\/wp-content\/uploads\/2017\/12\/Image21.jpg 541w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Every time I have installed distributed replay, I\u2019ve also needed to change the service to run as a user with privileges and I\u2019ve needed to make some DCOM changes to allow remote launch.<\/p>\n<p>I decided to put this to a test and setup a brand new virtual machine with SQL Server 2017 RTM, DEA, and configured Distributed Replay Controller and Client. I tried replaying a trace captured on 2012 and got the same IRF path error. I then installed CU1 for SQL Server 2017 and without having to reboot, I tried replaying the trace again by cloning the trace and clicking Start. It was successful and effortlessly replayed my 10 minute trace I had captured. I then applied CU2 and it worked as expected again. The image below shows it in progress after applying CU1.<\/p>\n<p><a href=\"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-content\/uploads\/2017\/12\/image41.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-medium wp-image-162\" src=\"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-content\/uploads\/2017\/12\/image41-300x100.jpg\" alt=\"image4\" width=\"300\" height=\"100\" srcset=\"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-content\/uploads\/2017\/12\/image41-300x100.jpg 300w, https:\/\/www.sqlskills.com\/blogs\/tim\/wp-content\/uploads\/2017\/12\/image41.jpg 481w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>I\u2019m personally very glad to know that Database Experimentation Assistant is now functional on SQL Server 2017 CU1 and above, and that I can use this for future migration testing with clients.<\/p>\n<p>Stay tuned for future post with step by step instructions for installing, configuring, and using DEA.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>If you\u2019ve tried using the Microsoft Database Experimentation Assistant (DEA) with SQL Server 2017 prior to CU1 to replay a trace, then you\u2019ve likely encountered an error like the one below telling you that the Preprocessed IRF path is empty or contains invalid files. The great news is that after applying CU1, this has been [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[6,59],"tags":[61,62,60,10],"_links":{"self":[{"href":"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-json\/wp\/v2\/posts\/158"}],"collection":[{"href":"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-json\/wp\/v2\/comments?post=158"}],"version-history":[{"count":0,"href":"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-json\/wp\/v2\/posts\/158\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-json\/wp\/v2\/media?parent=158"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-json\/wp\/v2\/categories?post=158"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/tim\/wp-json\/wp\/v2\/tags?post=158"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}