It would be good if you could just test on your own machine to make sure that
it works. I’m very concerned that I may have introduced some other bug that
busted SQL processing (that part of the code is very, very unforgiving for
mistakes).
There were two bugs that summed up to 2 bytes off. I think this was
intermittent for so long because normally the memory around there was “mostly
safe”. With the SQL Script of exactly the size you had, I think you were
crossing pages in memory and increased the chances of a collision which causes
the crash.
This was a classic case of memory corruption and those are always icky track
down. That is why I am so thankful you guys took the time to really narrow it
down.
From: Michael Osmond [mailto:[EMAIL PROTECTED]
Sent: Saturday, December 09, 2006 07:41
To: Rob Mensching; wix-users@lists.sourceforge.net
Subject: RE: [WiX-users] ConfigureSql - Assertion Failed
Hello Rob,
Thanks for the update. I will be able to try out the updated build sometime
next week, however I will need to fit it in around some UAT testing that the
server in question will be used for so it may not be till wednesday or thursday.
Do you have any insight into why it was so intermittent? And were we right
about the 2 bytes being copied?
Michael
-----Original Message-----
From: Rob Mensching [mailto:[EMAIL PROTECTED]
Sent: Sat 9/12/2006 8:05 AM
To: Michael Osmond; wix-users@lists.sourceforge.net
Cc:
Subject: RE: [WiX-users] ConfigureSql - Assertion Failed
Thought I already sent this. <grr/> Thanks to your information here and a bug
opened on SourceForge with details in it, I was able to track down two
different issues in the code that I'm certain contributed to this problem. I
have those changes in CVS and as soon as we get the wix build machine rebuilt
(hard drive failure so we're scrapping to get new hardware set up) we'll get a
build with the fix out. I'd really like that to be today but Justin is driving
the hardware issue.
I would really appreciate if you could try this build out and see if it is
stable for you or if I created some regression in behavior or whatever. We'll
get quick turn around on this to get this closed.
Again, I can't thank you enough for spending the time to narrow this bug down.
The information you provided here was absolutely key in tracking down the bug.
Is there anyone that I can send a thank you email to?
-----Original Message-----
From: Michael Osmond [mailto:[EMAIL PROTECTED]
Sent: Tuesday, December 05, 2006 20:46
To: Rob Mensching; wix-users@lists.sourceforge.net
Subject: RE: [WiX-users] ConfigureSql - Assertion Failed
Hi,
Think we have it!
I have got a C++ developer here (Paul Simpson) to look at this with me. We've
continued down the path of logging messages to determine where it fails and
what is happening.
Function is StrAllocStringAnsi (in strutil.cpp)
The error occurs in the second call into ::MultiByteWideChar.
cchSource = ::MultiByteToWideChar(uiCodepage, 0, szSource,
(int)(cchSource+1), *ppwz, (int)cch);
Here (int)(cchSource+1) is longer than szSource. The length of szSource is
also manipulated in ScaSqlStrsReadScripts before the call into
StrAllocStringAnsi. Here the length of the string is also maniputlated before
StrAllocStringAnsi is called.
cchScript = (cbScript / sizeof(CHAR))+1;// + 1 so we can ensure a null
at the end
So we are copying up to two bytes more of szSource than there is.
We changed the call to use (cchSource-1) instead, and have tested it four times
successfully. However it still does not really explain the inconsistency of
the problem.
Some pure speculation: The file that was causing this problem is 2207 bytes
long (2208 is divisable by 32 hmmm). We changed the Code to use
(int)(cchSource) and this script stopped being the problem, we then moved to a
script that is 192 bytes long (192 is also a multiple of 32) causing the same
error.
Attached is a copy of the SQL Scripts in question. Although be aware we are
still not getting a 100% failure rate (I had the install work twice today for
instance).
Michael
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Rob Mensching
Sent: Wednesday, 6 December 2006 8:35 AM
To: DavidG; wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] ConfigureSql - Assertion Failed
Michael Osmond is still doing analysis. I added some information in the
attached thread. If you wanted to try those debugging instructions as well,
maybe someone will eventually get a callstack pointing to the problem.
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of DavidG
Sent: Tuesday, December 05, 2006 14:32
To: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] ConfigureSql - Assertion Failed
I am having this problem consitantly now. We have been building and Installing
our MSI for about a year now and have not had a problem.
Did anyone find out why this was happening?
Ronald L. Ratzlaff wrote:
>
> Any ideas on the following? Should I open a bug?
>
>
>
> I’m encountering an Assert during the ConfigureSql CA, as you can see
> below (log excerpt at bottom).
>
>
>
> ConfigureSql: Debug Assert Message: Assertion failed in c:\documents
> and settings\robmen\local
> settings\temp\wp001\src\ca\wcautil\wcautil.cpp, 64
>
> CustomAction ConfigureSql called WcaInitialize() but not
> WcaTerminate()
>
>
>
> Note: While writing this email, we unselected the feature that was
> causing the problem and installed the other feature. After rebooting
> the SQL server machine and the machine we’re installing on, we started
> the installer up in maintenance mode and installed the previously
> failing feature w/o error.
>
>
>
> This installer ran fine on 3 other Windows Server 2003 machines and
> then bombed on the last one. I’ve searched the WIX lists and bugs and
> found a recent bug that mentions the following similar problem with
> ExecXmlFile.
>
>
>
> [ 1408130 ] Assertion Failed in ExecXmlFile
>
>
>
> Summary: (?)
>
> Assertion Failed in ExecXmlFile
>
> Action 12:57:28: ExecXmlFile.
>
> ExecXmlFile: CustomActionData: 1€C:\Program
>
> Files\Agiltech\EFileMgmt\Configuration\dataconfiguration.config€2€//pa
> rameter/@value€€MPAMPOULAS€2€//parameter/@value€value€Yes
>
> ExecXmlFile: Debug Assert Message: Assertion failed in
>
> c:\documents and settings\robmen\local
>
> settings\temp\wp001\src\ca\wcautil\wcautil.cpp, 64
>
> CustomAction ExecXmlFile called WcaInitialize() but not
>
> WcaTerminate()
>
>
>
> I’m running 2.0.3309.0
>
>
>
> Excerpt from the install log:
>
> MSI (s) (B4:58) [11:54:48:550]: Doing action: ConfigureSql
>
> Action start 11:54:48: ConfigureSql.
>
> MSI (s) (B4:DC) [11:54:48:550]: Invoking remote custom action. DLL:
> C:\WINNT\Installer\MSI9.tmp, Entrypoint: ConfigureSql
>
> ConfigureSql: Debug Assert Message: Assertion failed in c:\documents
> and settings\robmen\local
> settings\temp\wp001\src\ca\wcautil\wcautil.cpp, 64
>
> CustomAction ConfigureSql called WcaInitialize() but not
> WcaTerminate()
>
> MSI (s) (B4:DC) [11:55:12:304]: Leaked MSIHANDLE (239) of type 790531
> for thread 4812
>
> MSI (s) (B4:DC) [11:55:12:304]: Leaked MSIHANDLE (238) of type 790531
> for thread 4812
>
> MSI (s) (B4:DC) [11:55:12:304]: Leaked MSIHANDLE (219) of type 790540
> for thread 4812
>
> MSI (s) (B4:DC) [11:55:12:304]: Leaked MSIHANDLE (218) of type 790540
> for thread 4812
>
> MSI (s) (B4:DC) [11:55:12:304]: Leaked MSIHANDLE (140) of type 790541
> for thread 4812
>
> MSI (s) (B4:DC) [11:55:12:304]: Note: 1: 2769 2: ConfigureSql 3: 5
>
> DEBUG: Error 2769: Custom Action ConfigureSql did not close 5 MSIHANDLEs.
>
> The installer has encountered an unexpected error installing this package.
> This may indicate a problem with this package. The error code is 2769.
> The arguments are: ConfigureSql, 5,
>
> Action ended 11:55:12: ConfigureSql. Return value 3.
>
>
>
> Ron
>
>
>
--
View this message in context:
http://www.nabble.com/ConfigureSql---Assertion-Failed-tf1101505.html#a7709663
Sent from the wix-users mailing list archive at Nabble.com.
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's
Techsay panel and you'll get the chance to share your opinions on IT & business
topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users