I can't recall - does Windows Installer use a new msiexec process for every
custom action, or does it reuse the same one? I suspect this may be an
undocumented area, undocumented so no-one relies on it, but since creating a
process is a costly affair I would expect Windows Installer to keep the same
process around and reuse it if the security context (i.e. impersonate vs.
noImpersonate) is the same.
If it reuses the same one, it could be that something else is trashing the
heap before InstallSqlData even runs and that's why you're ending up in a
mess.
Candle only adds a reference to InstallSqlData if there are some SQL
elements in the source file, and light only includes those Fragments that
are referenced. All the SQL actions are in their own fragment in the sca.wxs
file in WiX 2.0, and in their own embedded wixlib in WixSqlExtension.dll in
WiX 3.0. Check with Orca to see whether InstallSqlData appears in the MSI
you're having trouble with.
I would have thought it would be pretty unlikely that calling through a
corrupt/uninitialised pointer would call into InstallSqlData. However,
wild-write bugs are like that.
What other custom actions or extended WiX schema are you using?
--
Mike Dimmick
_____
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Don
Tasanasanta
Sent: 21 June 2007 18:34
To: Rob Mensching; wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] ConfigureSQL Leaked MSIHANDLE
We have been trying to attach a debugger to this issue but it doesn't
reliably duplicate but it does happen often enough to be a nuisance.
Here's another question though. we are encountering this error on installs
that do not do anything with SQL. Why is InstallSqlData throwing an error
when there is no SQL data to be installed?
_____
From: Rob Mensching [mailto:[EMAIL PROTECTED]
Sent: Tuesday, May 08, 2007 7:54 AM
To: Don Tasanasanta; wix-users@lists.sourceforge.net
Subject: RE: [WiX-users] ConfigureSQL Leaked MSIHANDLE
Hmm, that would suggest that there is still some memory issue. It is likely
that your SQL script is exactly the right shape and size to hit this issue.
If you could attach a debugger to the install with pageheap turned on,
hopefully we can narrow down the exception.
From: Don Tasanasanta [mailto:[EMAIL PROTECTED]
Sent: Monday, May 07, 2007 11:26 AM
To: Rob Mensching; wix-users@lists.sourceforge.net
Subject: RE: [WiX-users] ConfigureSQL Leaked MSIHANDLE
I've upgraded our build process to 2.0.5213.0, recompiled and ran again.
We're still having a problem. Here's an excerpt from the logs. Let me know
if you need the whole file.
Action start 16:53:33: InstallCertificates.
MSI (s) (6C:94) [16:53:33:920]: Doing action: InstallSqlData
Action ended 16:53:33: InstallCertificates. Return value 1.
MSI (s) (6C:AC) [16:53:33:947]: Invoking remote custom action. DLL:
D:\WINDOWS\Installer\MSIF.tmp, Entrypoint: InstallSqlData
MSI (s) (6C:AC) [16:53:34:001]: Leaked MSIHANDLE (591) of type 790531 for
thread 2488
MSI (s) (6C:AC) [16:53:34:001]: Leaked MSIHANDLE (590) of type 790531 for
thread 2488
MSI (s) (6C:AC) [16:53:34:001]: Leaked MSIHANDLE (583) of type 790540 for
thread 2488
MSI (s) (6C:AC) [16:53:34:001]: Leaked MSIHANDLE (582) of type 790540 for
thread 2488
MSI (s) (6C:AC) [16:53:34:001]: Leaked MSIHANDLE (504) of type 790541 for
thread 2488
MSI (s) (6C:AC) [16:53:34:001]: Note: 1: 2769 2: InstallSqlData 3: 5
Action start 16:53:33: InstallSqlData.
Info 2769. Custom Action InstallSqlData did not close 5 MSIHANDLEs.
MSI (s) (6C:94) [16:53:34:001]: Machine policy value 'DisableRollback' is 0
MSI (s) (6C:94) [16:53:34:001]: Note: 1: 1402 2:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\Rollb
ack\Scripts 3: 2
Action ended 16:53:34: InstallSqlData. Return value 3.
MSI (s) (6C:94) [16:53:34:014]: Note: 1: 1402 2:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\Rollb
ack\Scripts 3: 2
MSI (s) (6C:94) [16:53:34:014]: No System Restore sequence number for this
installation.
MSI (s) (6C:94) [16:53:34:014]: Unlocking Server
Action ended 16:53:34: INSTALL. Return value 3.
_____
From: Rob Mensching [mailto:[EMAIL PROTECTED]
Sent: Wednesday, April 18, 2007 10:40 AM
To: Don Tasanasanta; wix-users@lists.sourceforge.net
Subject: RE: [WiX-users] ConfigureSQL Leaked MSIHANDLE
Hmm. Can you quickly try the latest WiX v2 release:
http://wix.sourceforge.net/releases/2.0.5213.0/. That should quickly tell
us if there is still a problem.
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Don
Tasanasanta
Sent: Wednesday, April 18, 2007 10:24 AM
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] ConfigureSQL Leaked MSIHANDLE
I've looked back and seen that there's some history to this problem.
I'm wondering if a solution has been found and implemented. I'm using wix
version 2.0.4820.0 and now encountering this problem 100% of the time in the
last 2 builds during silent installs only.
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users