The main point is to reduce the time of nightly builds which run on dynamic views. So I don't argue that snapshots are good, but I also want to make dynamic views better:)
Rob, will an option '-forcereusecab' (or something like that) be considered as an improvement for light.exe (so I will write a feature request) or rebuild of wix.dll with some hack is the only way?:) Thanks, Maksim. -----Original Message----- From: Christopher Painter [mailto:chr...@deploymentengineering.com] Sent: Monday, February 07, 2011 5:38 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] -reusecab doesn't work on dynamic views How does a dynamic view save you time? A well crafted config spec should load only what is needed to do the build. Whether you load it all up front or whether you load it when WiX needs it should be about the same cost, no? If WiX is going to go off validating things repeatedly then I'd think the cost should be less. PS- While we are constantly refining, we've already optimized and parallelized. :-) I won't go into the details but basically our product is really massive and we run 100,000+ builds a year. --- Christopher Painter, Author of Deployment Engineering Blog Have a hot tip, know a secret or read a really good thread that deserves attention? E-Mail Me ----- Original Message ---- From: "maksim.vazhe...@emc.com" <maksim.vazhe...@emc.com> To: wix-users@lists.sourceforge.net Sent: Mon, February 7, 2011 8:00:25 AM Subject: Re: [WiX-users] -reusecab doesn't work on dynamic views It was just a little block of build log, maybe it was confusing. Build is ok. Snapshot views are certainly good for it, but I also want to make it faster on dynamic views. Is it possible to introduce something like '-forcesreusecab' command line option for light.exe to skip files' validation (so if there is no .cab in the directory it will be created, if .cab already exists, it won't be checked)? Thanks, Maksim PS- 6 minutes - it is only installer build (when all binaries were already built). Maybe you should try to optimize\parallelize your build... :) -----Original Message----- From: Christopher Painter [mailto:chr...@deploymentengineering.com] Sent: Monday, February 07, 2011 4:38 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] -reusecab doesn't work on dynamic views Really? It seems like your build is broken to me. I already provided a work around, use a snapshot view. Use a dynamic view to robocopy to a temp directory on NTFS. There was a discussion on StackOverflow that Light in v3.5 has been updated to look at md5 checksums and time date stamps. I can't think of any better reason to get your build off of a dynamic view because if light starts hashing your files over and over that's going to be really slow over the wire back to the clearcase server. PS- I wish my builds were 6 minutes. One branch of our product line takes as much as 18 hours to build all the way up. --- Christopher Painter, Author of Deployment Engineering Blog Have a hot tip, know a secret or read a really good thread that deserves attention? E-Mail Me ----- Original Message ---- From: "maksim.vazhe...@emc.com" <maksim.vazhe...@emc.com> To: wix-users@lists.sourceforge.net Sent: Mon, February 7, 2011 1:03:37 AM Subject: Re: [WiX-users] -reusecab doesn't work on dynamic views Chris, I have no problem with the build itself. But now it takes ~6 min for one package instead of ~2 (when the build runs for 3 platforms for 2 build types, it is a big delay..). Rob, I think the problem here is that light.exe validates the timestamps for all files each time, and on clearcase dynamic view it is updated continuously. I have one set of files for all cultures, so I want to reuse .cab during the build of the package for each culture (I do not need to reuse .cab between the builds). Could you provide any workaround for this problem? Thanks, Maksim. -----Original Message----- From: Christopher Painter [mailto:chr...@deploymentengineering.com] Sent: Saturday, February 05, 2011 2:38 AM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] -reusecab doesn't work on dynamic views Dynamic views are a clearcase concept. Basically it's a virtual file system that uses a config spec to represent a particular branch in source control. They can be very useful in certain circumstances ( as the build/install lead I'm in dozens of vobs and branches daily and I wouldn't want to have to always be loading snapshot views locally to touch a file here and there) but they aren't approriate in other situations such as opening an entire solution and/or build code. So my short answer would be, don't do that. As a side note, I've kind rolled my own ClearCase UCM with a program called ViewMaster. It's kind of like the child's toy where you click the button and get to see a different picture. Developers pick from a (filterable ) list of builds and select Open and their dynamic view is reconfigured for that baseline. Chris --- Christopher Painter, Author of Deployment Engineering Blog Have a hot tip, know a secret or read a really good thread that deserves attention? E-Mail Me ----- Original Message ---- From: Rob Mensching <r...@robmensching.com> To: General discussion for Windows Installer XML toolset. <wix-users@lists.sourceforge.net> Sent: Fri, February 4, 2011 5:04:06 PM Subject: Re: [WiX-users] -reusecab doesn't work on dynamic views What is a "dynamic view"? On Fri, Feb 4, 2011 at 6:22 AM, <maksim.vazhe...@emc.com> wrote: > Hi all, > > Is there a way to make light.exe correctly work with '-reusecab' option on > dynamic views? Cabinet file is generated for each culture even with '-cc > /cach_path/ -reusecab'. > > Thanks, > Maksim. > > <Build log>: > > Target Link: > M:\vazhem_wix_boot_from_san\thirdparty\opensrc\wix\3.5\Light.exe -sw1076 > -sw1118 -v -cc >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\install\EMCPowerPath.Net32.5.6.b157.dbg.WiX\msi\ > > >\ > -cultures:de-de -ext > M:\vazhem_wix_boot_from_san\thirdparty\opensrc\wix\3.5\WixUtilExtension.dll > -ext > M:\vazhem_wix_boot_from_san\thirdparty\opensrc\wix\3.5\WixUIExtension.dll > -ext >M:\vazhem_wix_boot_from_san\ppmpio\src\pkg\windows\setup\msi\ext\bin\x86\Debug\WixPPDriversExtension.dll > > >l > -ext >M:\vazhem_wix_boot_from_san\ppmpio\src\pkg\windows\setup\msi\ext\bin\x86\Debug\WixPPSupportFileExtension.dll > > >l > -loc culture\de-de.wxl -loc culture\en-us.wxl -loc culture\es-es.wxl -loc > culture\fr-fr.wxl -loc culture\it-it.wxl -loc culture\ja-jp.wxl -loc > culture\ko-kr.wxl -loc culture\pt-br.wxl -loc culture\zh-cn.wxl -out >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\install\EMCPowerPath.Net32.5.6.b157.dbg.WiX\msi\de-de\Setup.msi > > >i > -pdbout >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\install\EMCPowerPath.Net32.5.6.b157.dbg.WiX\msi\de-de\Setup.wixpdb > > >b > -reusecab -sice:ICE20 -sice:ICE38 -sice:ICE43 -sice:ICE69 -sice:ICE80 >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\Base.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\Common.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\DARE.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\License.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\RSA.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\PPME.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\MPIO.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\MPX.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\Product.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\SDK.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\UI\AXArrayConnectedDlg.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\UI\CustomerInformationDlg.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\UI\HighMpioVersionDlg.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\UI\InstallWelcomDlg.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\UI\LowMpioVersionDlg.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\UI\PPMEVersionDlg.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\UI\UI_Mondo.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\UI\VerifyCustomConfigRemovalDlg.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\Product.Generated.wixobj > > >j >M:\vazhem_wix_boot_from_san\ppmpio\src\pkg\windows\setup\msi\ext\bin\x86\Debug\ppdrivers.wixlib > > >b >M:\vazhem_wix_boot_from_san\ppmpio\src\pkg\windows\setup\msi\ext\bin\x86\Debug\ppsupport.wixlib > > >b > Microsoft (R) Windows Installer Xml Linker version 3.5.2519.0 > Copyright (C) Microsoft Corporation. All rights reserved. > > Updating file information. > Creating cabinet files. > There will be '8' threads used to produce CAB files. > Creating cabinet >'M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\install\EMCPowerPath.Net32.5.6.b157.dbg.WiX\msi\PP.cab'. > > >. > Generating database. > Merging modules. > Validating database. > light.exe : warning LGHT1105: Validation could not run due to system > policy. To eliminate this warning, run the process as admin or suppress ICE > validation. > Laying out media. > Copying file >'M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\install\EMCPowerPath.Net32.5.6.b157.dbg.WiX\msi\PP.cab' > > >' > to >'M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\install\EMCPowerPath.Net32.5.6.b157.dbg.WiX\msi\de-de\PP.cab'. > > >. > Moving file 'C:\Documents and Settings\vazhem\Local > Settings\Temp\11\tqehjmyw\Setup.msi' to >'M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\install\EMCPowerPath.Net32.5.6.b157.dbg.WiX\msi\de-de\Setup.msi'. > > >. > Done building target "Link" in project "setup.wixproj". > Target Link: > M:\vazhem_wix_boot_from_san\thirdparty\opensrc\wix\3.5\Light.exe -sw1076 > -sw1118 -v -cc >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\install\EMCPowerPath.Net32.5.6.b157.dbg.WiX\msi\ > > >\ > -cultures:en-us -ext > M:\vazhem_wix_boot_from_san\thirdparty\opensrc\wix\3.5\WixUtilExtension.dll > -ext > M:\vazhem_wix_boot_from_san\thirdparty\opensrc\wix\3.5\WixUIExtension.dll > -ext >M:\vazhem_wix_boot_from_san\ppmpio\src\pkg\windows\setup\msi\ext\bin\x86\Debug\WixPPDriversExtension.dll > > >l > -ext >M:\vazhem_wix_boot_from_san\ppmpio\src\pkg\windows\setup\msi\ext\bin\x86\Debug\WixPPSupportFileExtension.dll > > >l > -loc culture\de-de.wxl -loc culture\en-us.wxl -loc culture\es-es.wxl -loc > culture\fr-fr.wxl -loc culture\it-it.wxl -loc culture\ja-jp.wxl -loc > culture\ko-kr.wxl -loc culture\pt-br.wxl -loc culture\zh-cn.wxl -out >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\install\EMCPowerPath.Net32.5.6.b157.dbg.WiX\msi\en-us\Setup.msi > > >i > -pdbout >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\install\EMCPowerPath.Net32.5.6.b157.dbg.WiX\msi\en-us\Setup.wixpdb > > >b > -reusecab -sice:ICE20 -sice:ICE38 -sice:ICE43 -sice:ICE69 -sice:ICE80 >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\Base.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\Common.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\DARE.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\License.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\RSA.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\PPME.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\MPIO.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\MPX.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\Product.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\SDK.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\UI\AXArrayConnectedDlg.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\UI\CustomerInformationDlg.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\UI\HighMpioVersionDlg.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\UI\InstallWelcomDlg.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\UI\LowMpioVersionDlg.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\UI\PPMEVersionDlg.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\UI\UI_Mondo.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\UI\VerifyCustomConfigRemovalDlg.wixobj > > >j >M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\wixbuild\NET\CHECKED\EMCPowerPath.Net32.5.6.b157.dbg.WiX\Product.Generated.wixobj > > >j >M:\vazhem_wix_boot_from_san\ppmpio\src\pkg\windows\setup\msi\ext\bin\x86\Debug\ppdrivers.wixlib > > >b >M:\vazhem_wix_boot_from_san\ppmpio\src\pkg\windows\setup\msi\ext\bin\x86\Debug\ppsupport.wixlib > > >b > Microsoft (R) Windows Installer Xml Linker version 3.5.2519.0 > Copyright (C) Microsoft Corporation. All rights reserved. > > Updating file information. > Creating cabinet files. > There will be '8' threads used to produce CAB files. > Creating cabinet >'M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\install\EMCPowerPath.Net32.5.6.b157.dbg.WiX\msi\PP.cab'. > > >. > Generating database. > Merging modules. > Validating database. > light.exe : warning LGHT1105: Validation could not run due to system > policy. To eliminate this warning, run the process as admin or suppress ICE > validation. > Laying out media. > Copying file >'M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\install\EMCPowerPath.Net32.5.6.b157.dbg.WiX\msi\PP.cab' > > >' > to >'M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\install\EMCPowerPath.Net32.5.6.b157.dbg.WiX\msi\en-us\PP.cab'. > > >. > Moving file 'C:\Documents and Settings\vazhem\Local > Settings\Temp\11\ydfvenvk\Setup.msi' to >'M:\vazhem_wix_boot_from_san\wintools\.package\EmcPowerPath\interim\install\EMCPowerPath.Net32.5.6.b157.dbg.WiX\msi\en-us\Setup.msi'. > > >. > > > ------------------------------------------------------------------------------ > The modern datacenter depends on network connectivity to access resources > and provide services. The best practices for maximizing a physical server's > connectivity to a physical network are well understood - see how these > rules translate into the virtual world? > http://p.sf.net/sfu/oracle-sfdevnlfb > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > > -- virtually, Rob Mensching - http://RobMensching.com LLC ------------------------------------------------------------------------------ The modern datacenter depends on network connectivity to access resources and provide services. The best practices for maximizing a physical server's connectivity to a physical network are well understood - see how these rules translate into the virtual world? http://p.sf.net/sfu/oracle-sfdevnlfb _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ The modern datacenter depends on network connectivity to access resources and provide services. The best practices for maximizing a physical server's connectivity to a physical network are well understood - see how these rules translate into the virtual world? http://p.sf.net/sfu/oracle-sfdevnlfb _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ The modern datacenter depends on network connectivity to access resources and provide services. The best practices for maximizing a physical server's connectivity to a physical network are well understood - see how these rules translate into the virtual world? http://p.sf.net/sfu/oracle-sfdevnlfb _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ The modern datacenter depends on network connectivity to access resources and provide services. The best practices for maximizing a physical server's connectivity to a physical network are well understood - see how these rules translate into the virtual world? http://p.sf.net/sfu/oracle-sfdevnlfb _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ The modern datacenter depends on network connectivity to access resources and provide services. The best practices for maximizing a physical server's connectivity to a physical network are well understood - see how these rules translate into the virtual world? http://p.sf.net/sfu/oracle-sfdevnlfb _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ The modern datacenter depends on network connectivity to access resources and provide services. The best practices for maximizing a physical server's connectivity to a physical network are well understood - see how these rules translate into the virtual world? http://p.sf.net/sfu/oracle-sfdevnlfb _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ The modern datacenter depends on network connectivity to access resources and provide services. The best practices for maximizing a physical server's connectivity to a physical network are well understood - see how these rules translate into the virtual world? http://p.sf.net/sfu/oracle-sfdevnlfb _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users