Forgot to mention, the version I am using is Wix v3.0.4513.0.

I guess what I am wondering is how do the DropDatabase and
UninstallSqlData custom actions get scheduled?  I see UninstallSqlData
in the InstallExecuteSequence table, and the only condition is "NOT
SKIPUNINSTALLSQLDATA".  This property is not output (I believe this
means it has no data) in both the msi that worked and the msi that
didn't.

Amy

-----Original Message-----
From: Amy Rosewater [mailto:[EMAIL PROTECTED] 
Sent: Monday, October 06, 2008 10:39 AM
To: General discussion for Windows Installer XML toolset.
Subject: [WiX-users] problem with dropping database on uninstall

Hi All,

 

I have a database component which creates a new database during install,
and is set to drop that same database on uninstall.  This behavior used
to work perfectly, but recently has stopped working and I am not sure
why.  I did not change versions of Wix, nor did I change the database
component node below.

 

<sql:SqlDatabase Id="IVantageDatabase" Server="[SQLSERVER]"
Database="[DATABASENAME]" User="InstallationSqlUser"
CreateOnInstall="yes" DropOnUninstall="yes">

      ...(several install only sql strings here)

<sql:SqlString Id="DisconnectUsersFromDatabase"
User="InstallationSqlUser" ExecuteOnUninstall="yes"
ExecuteOnInstall="no" SQL="ALTER DATABASE [DATABASENAME] SET SINGLE_USER
with ROLLBACK IMMEDIATE" Sequence="901"/>

<sql:SqlString Id="DropLoginIfExistsIninstall"
User="InstallationSqlUser" ExecuteOnUninstall="yes"
ExecuteOnInstall="no" SQL="if exists (select * from sys.syslogins where
name='[APPLICATIONUSER]') DROP LOGIN [APPLICATIONUSER]" Sequence="902"
/>

</sql:SqlDatabase>

 

>From my log when it worked:

 

Action start 11:46:33: MigrateFeatureStates.

Action ended 11:46:33: MigrateFeatureStates. Return value 0.

Action start 11:46:33: SetCAINSTALLEDTrue.

Action ended 11:46:33: SetCAINSTALLEDTrue. Return value 1.

Action start 11:46:33: InstallValidate.

Action ended 11:46:36: InstallValidate. Return value 1.

Action start 11:46:36: InstallInitialize.

Action ended 11:46:36: InstallInitialize. Return value 1.

Action start 11:46:36: ProcessComponents.

Action ended 11:46:37: ProcessComponents. Return value 1.

Action start 11:46:37: UnpublishFeatures.

Action ended 11:46:37: UnpublishFeatures. Return value 1.

Action start 11:46:37: StopServices.

Action ended 11:46:37: StopServices. Return value 1.

Action start 11:46:37: DeleteServices.

Action ended 11:46:37: DeleteServices. Return value 1.

Action start 11:46:37: UninstallCertificates.

UninstallCertificates:  Skipping ConfigureCertificates() - required
table not present.

Action ended 11:46:37: UninstallCertificates. Return value 1.

Action start 11:46:37: UninstallSqlData.

UninstallCertificates:  Scheduling SQL string: ALTER DATABASE iVantage50
SET SINGLE_USER with ROLLBACK IMMEDIATE

UninstallCertificates:  Scheduling SQL string: if exists (select * from
sys.syslogins where name='iVantageApplication') DROP LOGIN
iVantageApplication

Action start 11:46:43: ExecuteSqlStrings.

Action ended 11:46:43: ExecuteSqlStrings. Return value 1.

Action start 11:46:43: DropDatabase.

Action ended 11:46:43: DropDatabase. Return value 1.

Action ended 11:46:43: UninstallSqlData. Return value 1.

 

>From my log now that it isn't working:

 

Action start 9:48:21: MigrateFeatureStates.

Action ended 9:48:21: MigrateFeatureStates. Return value 0.

Action start 9:48:21: SetCAINSTALLEDTrue.

Action ended 9:48:21: SetCAINSTALLEDTrue. Return value 1.

Action start 9:48:21: InstallValidate.

Action ended 9:48:24: InstallValidate. Return value 1.

Action start 9:48:24: InstallInitialize.

Action ended 9:48:24: InstallInitialize. Return value 1.

Action start 9:48:24: ProcessComponents.

Action ended 9:48:25: ProcessComponents. Return value 1.

Action start 9:48:25: UnpublishFeatures.

Action ended 9:48:25: UnpublishFeatures. Return value 1.

Action start 9:48:25: StopServices.

Action ended 9:48:25: StopServices. Return value 1.

Action start 9:48:25: DeleteServices.

Action ended 9:48:25: DeleteServices. Return value 1.

Action start 9:48:25: UninstallCertificates.

UninstallCertificates:  Skipping ConfigureCertificates() - required
table not present.

Action ended 9:48:25: UninstallCertificates. Return value 1.

Action start 9:48:25: UninstallSqlData.

Action ended 9:48:32: UninstallSqlData. Return value 1.

 

Anyone have any ideas why this might have stopped working?

 

Thanks

 

Amy Rosewater

SPECTRUM Human Resource Systems Corporation

707 17th Street Suite 3800

Denver CO, 80202

303.592.3403

[EMAIL PROTECTED]

 

------------------------------------------------------------------------
-
This SF.Net email is sponsored by the Moblin Your Move Developer's
challenge
Build the coolest Linux based applications with Moblin SDK & win great
prizes
Grand prize is a trip for two to an Open Source event anywhere in the
world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to