Upgrade to beta 3

Topics: Troubleshooting
Aug 10, 2011 at 9:43 AM
Edited Aug 10, 2011 at 9:55 AM

Hi there,

Followed the upgrade steps for beta 2, used dll's etc from beta 3 and no problems for the upgraded site.
The console keeps giving me SoapException messages:

Error in web service method GetMessages: (changed the username to something arbitrary)

System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.InvalidOperationException: The following foreign keys integrity did not validate: Username ['admin']; DataType: Composite.Data.Types.IUserConsoleInformation
   at Composite.Data.DataReferenceFacade.ValidateForeignKeyIntegrity(IData refereeData)
   at Composite.Data.DataFacadeImpl.AddNew_AddingMethod[T](String providerName, IEnumerable`1 datas, Boolean suppressEventing, Boolean performForeignKeyIntegrityCheck, Boolean performeValidation)
   at Composite.Data.DataFacadeImpl.AddNew[T](IEnumerable`1 datas, Boolean allowStoreCreation, Boolean suppressEventing, Boolean performForeignKeyIntegrityCheck, Boolean performeValidation, List`1 writeableProviders)
   at Composite.Data.DataFacade.AddNew[T](IEnumerable`1 collection, Boolean allowStoreCreation, Boolean suppressEventing, Boolean performForeignKeyIntegrityCheck, Boolean performeValidation, List`1 writeableProviders)
   at Composite.Data.DataFacade.AddNew[T](T data)
   at Composite.C1Console.Events.ConsoleFacade.RegisterConsole(String username, String consoleId)
   at Composite.Core.WebClient.Services.ConsoleMessageService.ConsoleMessageServiceFacade.GetNewMessages(String consoleId, Int32 lastKnownChangeNumber)
   at Composite.Services.ConsoleMessageQueueServices.GetMessages(String consoleId, Int32 lastKnownChangeNumber) in e:\ZorgzameZorg\Website\Composite\services\ConsoleMessageQueue\ConsoleMessageQueueServices.asmx:line 33
   --- End of inner exception stack trace ---

Is there something I can do to fix this?

mzZzl,

JamBo 

Aug 10, 2011 at 9:56 AM

Try to do next steps:

1. Stop the site
2. Open the file ~\App_Data\Composite\DataStores\Composite.Data.Types.IUserConsoleInformations_public.xml 
3. Give it the following content:
<UserConsoleInformations />
6. Start the site

Aug 10, 2011 at 10:03 AM
Edited Aug 10, 2011 at 10:20 AM

Inna,

Thnx, but that file (i could only find Composite.Data.Types.IUserConsoleInformation_Published.xml) already just contained <UserConsoleInformations />.
Stopped, started the site, but no change.
Anything else I can do?  

mzZzl,

JamBo 

Aug 10, 2011 at 11:10 AM

Are you running on SQL? If so that you should check not the file but a SQL table with a similar name.

According to exception, it cannot find a user with name 'admin'. Which is strange, because you're probably logged in as that user. If you send me zipped version of the site I'll try to debug it. My email is ddz (at) composite.net

Aug 10, 2011 at 12:32 PM

Dmitry,

No SQL.

I will cleanup my website from the video's that are in it (for size) and send it to you.

Thnx,

JamBo

Aug 10, 2011 at 3:19 PM

Dmitry,

Some addional info to help you reproduce the errors (the zip will be in your mail tomorrow).
When I started looking into the problem some further I noticed that an additional user I created (an editor) did not have any problems - i.e. no such exception(s).

So i took my original site and created a new admin user, deleted the original admin (the one you create when running the website for the first time) and did the update process again: Problem Gone

Hope this helps,
JamBo 

Aug 11, 2011 at 2:34 PM

Dmitry,

Could not reproduce the problem on a new set, i.e. like I started the 'problem' site:
Start with 2.1.4113.99 (VisualStudio) > create website > upgrade to Beta3. 

So I retraced my steps (what I actually did), i.e. I first the proces for beta2, then then the steps for beta3.
This also did not reproduce the error.


Unless you really want a zip with my site to debug, I suggest we save some of your valuable time as the solution from the former post works for me.

Thank you very much for your time and input.
mzZzl,
JamBo 

Aug 11, 2011 at 4:57 PM

I agree :)

Aug 16, 2011 at 4:00 PM

Dmitry,

There might be more to it than I thought.
I got the latest source from the svn and started the website. When I change the default admin name (par example to newadmin) during the setup process the same exception creeps up...:

System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> System.InvalidOperationException: The following foreign keys integrity did not validate: Username ['newadmin']; DataType: Composite.Data.Types.IUserSettings
   at Composite.Data.DataReferenceFacade.ValidateForeignKeyIntegrity(IData refereeData) in E:\nu.Faqtz.com\Source\Composite\Data\DataReferenceFacade.cs:line 117
   at Composite.Data.DataFacadeImpl.AddNew_AddingMethod[T](String providerName, IEnumerable`1 datas, Boolean suppressEventing, Boolean performForeignKeyIntegrityCheck, Boolean performeValidation) in E:\nu.Faqtz.com\Source\Composite\Data\DataFacadeImpl.cs:line 382
   at Composite.Data.DataFacadeImpl.AddNew[T](IEnumerable`1 datas, Boolean allowStoreCreation, Boolean suppressEventing, Boolean performForeignKeyIntegrityCheck, Boolean performeValidation, List`1 writeableProviders) in E:\nu.Faqtz.com\Source\Composite\Data\DataFacadeImpl.cs:line 330
   at Composite.Data.DataFacade.AddNew[T](IEnumerable`1 collection, Boolean allowStoreCreation, Boolean suppressEventing, Boolean performForeignKeyIntegrityCheck, Boolean performeValidation, List`1 writeableProviders) in E:\nu.Faqtz.com\Source\Composite\Data\DataFacade.cs:line 1230
   at Composite.Data.DataFacade.AddNew[T](T data) in E:\nu.Faqtz.com\Source\Composite\Data\DataFacade.cs:line 962
   at Composite.C1Console.Users.UserSettingsImpl.CreateUserSettings(String username) in E:\nu.Faqtz.com\Source\Composite\C1Console\Users\UserSettingsImpl.cs:line 321
   at Composite.C1Console.Users.UserSettingsImpl.GetSettings(String username, Boolean readonlyUsage) in E:\nu.Faqtz.com\Source\Composite\C1Console\Users\UserSettingsImpl.cs:line 279
   at Composite.C1Console.Users.UserSettingsImpl.GetCurrentActiveLocaleCultureInfo(String username) in E:\nu.Faqtz.com\Source\Composite\C1Console\Users\UserSettingsImpl.cs:line 107
   at Composite.C1Console.Users.UserSettings.GetCurrentActiveLocaleCultureInfo(String username) in E:\nu.Faqtz.com\Source\Composite\C1Console\Users\UserSettings.cs:line 99
   at Composite.C1Console.Users.UserSettings.get_ActiveLocaleCultureInfo() in E:\nu.Faqtz.com\Source\Composite\C1Console\Users\UserSettings.cs:line 87
   at Composite.Core.Localization.LocalizationFacade.AddLocale(CultureInfo cultureInfo, String urlMappingName, Boolean addAccessToAllUsers, Boolean makeFlush) in E:\nu.Faqtz.com\Source\Composite\Core\Localization\LocalizationFacade.cs:line 169
   at Composite.Core.WebClient.Setup.SetupServiceFacade.SetUp(String setupDescriptionXml, String username, String password, String language, String consoleLanguage) in E:\nu.Faqtz.com\Source\Composite\Core\WebClient\Setup\SetupServiceFacade.cs:line 144
   at Composite.Core.WebClient.Setup.SetupService.SetUp(String setupDescriptionXML, String username, String password, String language, String consolelanguage) in e:\nu.Faqtz.com\Source\Website\Composite\services\Setup\SetupService.asmx:line 149
   --- End of inner exception stack trace ---

If i keep the default 'admin' there are no problems. At least easy to reproduce ;-)

mzZzl,
JamBo 

Aug 17, 2011 at 10:25 AM

If I understod you correctly the steps are:

1) Downloading the latest version

2) Specifying "newadmin" as administrator's account name

3) Clicking on install

Result: exception

I just tried it, and it worked well. Could it be something else I'm missing?

 

Aug 17, 2011 at 11:28 AM

Dmitry,

I think I'm going mad......I tested this extensively yesterday and could reproduce it everytime, hence the post.
Testing it again today, while according to your post it was working correctly, and what do you think... it's working correctly.

The test I just did was on a different machine however (work place), yesterday I tested from home - Both Windows 7 Prof, VS2010 SP1, IIS Express. 
I'll test again tonight at home with the latest source, I'll get back here with the findings.

mzZzl,
JamBo 

Aug 17, 2011 at 11:52 AM

I know that feeling when narrowing down a bug "Nooo!! It is not supposed to work!!" - quite frustrating actually ;-) Please follow up if you find the cause.

Could a diff be you run with a debug build on one machine and release on another? For our own convenience (we log in / create sites pretty often when we develop) we have 'admin' as a prefilled value a few places.

Aug 20, 2011 at 1:14 PM

Marcus,

I thought it might be for a special revision (at home was 8814, at work 8820) but then again I couldn't reproduce it the next day with revision 8814 at home.
I'm sorry I ended up wasting your time in the end.

Like you say, its frustrating not to know where the exception came from as I experienced it two times in different situations (first at work and then again on a different solution at home). 
Next time I experience the exception (hope not) I'll first test over several days (and revisions) before posting.

Thnx again for your input.

mzZzl,
JamBo 

 

Aug 27, 2011 at 4:32 PM
Edited Aug 28, 2011 at 11:47 AM

Marcus,

I think I narrowed it down (yes the exception came back).

Would you try one thing for me? Before i'm totally losing my mind....;)
Could you try to use an uppercase letter in the administrator's account name, i.e. newAdmin?

It goes wrong in the SetupServiceFacade SetUp method when calling LocalizationFacade.SetDefaultLocale(locale). I debugged further but could not pinpoint the exception any further.
It looks like the data object created matches the lowercased username with the original username (with the uppercase letter(s)) and thus throws a data object verification exception in the datafacade.
Hope this helps. 


mzZzl,
JamBo 

Aug 29, 2011 at 9:41 AM

There is indeed a 'mixed casing' issue when using the setup wizard - it has been logged as a blocking issue and should be fixed shortly. Thanks for reporting it!