Apollo Software Normal layoutMedium LayoutLarge Layout    Normal TextLarge Text
Home | DotNetNuke | About ... | Downloads | Forum | Blog
United States Netherlands
Register | Login

Forum Tags

 
boolean   error   file   help   just   language   menu   mlhtml   module   modules   need   object   page   pagelocalization   problem   site   skin   string   version   work  

  

Need live support?

Please feel free to add my support e-mail address to your MSN contacts. If you catch me online, I'll be able to solve your problems faster than through this forum. Please appreciate that I only give free support on our own modules!

My msn account: support@apollo-software.nl. Alternatively, you can click the botton below, it will open up a Live Messenger window (Windows Live ID required)

  

Error with Cache and DNN5.1
Last Post 2010-03-14 14:48:13 by erikvb. 18 Replies.
AddThis - Bookmarking and Sharing Button Printer Friendly
Sort:
PrevPrev NextNext
You are not authorized to post a reply.
Author Messages Not Resolved
akrobit
New Member
New Member
Posts:23

--
2009-08-28 11:36:01  
Hi Erik,

we recently upgraded from DNN 4.9.4 to DNN 5.1.1.
So, we purchased the current versions of MLAdvAnnouncements and PageLocalization and installed it.

Now I faced a problem with MLAdvAnnouncements under DNN 5.1.1 while Cachetime for the Announcement module is > 0.

Example:
DNN 4.9.4 have a tab (page) with a MLHTML module (current module version, CacheTime=3600) and a MLAdvAnnouncements module (current module version, Display mode: Links, CacheTime=1800). Under Host Settings the Cache Setting is "Heavy". And everything works perfectly.
Now I upgraded to DNN 5.1.1 (with Page Localization version 5).

If I delete the cache, restart the Application, go to the tab with the modules and click a link with a postback (i.e. Login button or submit button of the search field), I get an error from DNN: "An error has occurred."

If I call the tab again and click the postback-link again, it works. Later (after the CacheTime is over), I call again and the error occurred again, but again only once.

If I set the CacheTime of the Announcement module to 0, it works without errors.

In the Site Log I can find following Errors:
AssemblyVersion: 5.1.1
PortalID: 0
PortalName: My Portal
UserID: -1
UserName:
ActiveTabID: 104
ActiveTabName: Demo CD
RawURL: /Support/DemoCD/tabid/104/language/en-US/Default.aspx
AbsoluteURL: /Default.aspx
AbsoluteURLReferrer: http://localhost/Support/DemoCD/tabid/104/language/en-US/Default.aspx
UserAgent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; SLCC1; .NET CLR 2.0.50727; InfoPath.2; .NET CLR 1.1.4322; .NET CLR 3.5.30729; .NET CLR 3.0.30729)
DefaultDataProvider: DotNetNuke.Data.SqlDataProvider, DotNetNuke.SqlDataProvider
ExceptionGUID: 112ee1ec-c633-48ac-99cb-63f52ce924f0
InnerException: Failed to load viewstate. The control tree into which viewstate is being loaded must match the control tree that was used to save viewstate during the previous request. For example, when adding controls dynamically, the controls added during a post-back must match the type and position of the controls added during the initial request.
FileName:
FileLineNumber: 0
FileColumnNumber: 0
Method: System.Web.UI.Control.LoadViewStateRecursive
StackTrace:
Message: DotNetNuke.Services.Exceptions.PageLoadException: Failed to load viewstate. The control tree into which viewstate is being loaded must match the control tree that was used to save viewstate during the previous request. For example, when adding controls dynamically, the controls added during a post-back must match the type and position of the controls added during the initial request. ---> System.Web.HttpException: Failed to load viewstate. The control tree into which viewstate is being loaded must match the control tree that was used to save viewstate during the previous request. For example, when adding controls dynamically, the controls added during a post-back must match the type and position of the controls added during the initial request.at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)at System.Web.UI.Page.LoadAllState()at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)--- End of inner exception stack trace ---
Source:

Can you help me with that?
Would be nice if the MLAdvAnnouncements modules are cachable to increase DNN performance.
erikvb
Advanced Member
Advanced Member
Posts:713
Avatar

--
2009-08-28 11:50:11  
The error seems unrelated.



What you can do is to modify your containers to use MLTITLE instead of TITLE.



Erik van Ballegoij,
a view from my attic, my personal blog

The personal blog of Erik van Ballegoij

akrobit
New Member
New Member
Posts:23

--
2009-09-01 09:30:15 Accepted Answer  
Thanks Erik.

I tried to change my containers (at first only one of them for testing). I followed your description for "ASCX skinning" (Here on the homepage at: Online Help » ModuleLocalization - Help).
I added the part to register the control for MLTITLE and add the reference of MLTITLE.

At first I got an exception if I registered: /Portals/0/~/DesktopModules/ModuleLocalization/MLTitle.ascx
as you described. So, I changed the register tag to: ~/DesktopModules/ModuleLocalization/MLTitle.ascx

Now, it works. BUT only if I am logged-in as Admin/Host. If I visit the page as a normal (unregistered) user (using the default language of the portal) the titles of the modules are empty.
If I visit the same page with a foreign language the titles are displayed, but only for the first time I called the page. If I visit it again, the module titles are empty again.

Any suggestions?
akrobit
New Member
New Member
Posts:23

--
2009-09-01 09:54:35  
OK. I found the reason. The Cache time of the modules was > 0.
If I set Cache time to 0, it works fine.

BUT as far as I understood the concept, DNN will not cache the modules if I set CacheTime=0.
But that's exactly what I don't want. I want DNN to cache the modules.

So, I don't understand the sense.
erikvb
Advanced Member
Advanced Member
Posts:713
Avatar

--
2009-09-01 10:35:56  
I will check to make sure the functionality works as advertised...



Erik van Ballegoij,
a view from my attic, my personal blog

The personal blog of Erik van Ballegoij

akrobit
New Member
New Member
Posts:23

--
2009-09-01 11:21:57  
Thank you.

Just fyi:
In my testing environment I rollback to DNN 4.9.4 with the current versions of your ML modules.
I applied all changes to the containers and tried some Cache time settings > 0 with MLHTML and MLAdvAnnouncements modules.

Everything works fine. The MLTITLE is displayed every time. It's never empty using DNN 4.9.4.
akrobit
New Member
New Member
Posts:23

--
2009-09-04 07:50:41  
Any news on that?

I can't rollback our productive site to DNN 4.9.4 and we are using MLHTML and MLAdvAnnouncements modules almost exclusively on it. So, I get the viewstate error when cache time of MLAdvAnnounements is > 0. I am loosing the module titles while using MLTITLE. And the site is noticeably slower if cache time is 0.

Sorry for pushing, but my boss is really getting on my nerves, because of it.
(Our domain is already on the way to the new host)

Is it possible to use MLTITLE and not getting an empty title in DNN 5.1.1?
erikvb
Advanced Member
Advanced Member
Posts:713
Avatar

--
2009-09-04 09:46:17  
Sorry for being “slow”, it is on my work queue.



It is at all possible that there are breaking changes in DNN 5.x, sorry it takes some time to find out exactly what is going on….



Erik van Ballegoij,
a view from my attic, my personal blog

The personal blog of Erik van Ballegoij

akrobit
New Member
New Member
Posts:23

--
2009-09-18 09:22:31  
Any News?

Just FYI:
I updated my DNN to version 5.01.02. Problem with the MLTITLE remains the same.
First page load: correct title in the current language is displayed.
Call page again (loaded from cache): All module titles referencing MLTITLE are empty again.
akrobit
New Member
New Member
Posts:23

--
2009-10-19 14:58:33  
I hate to do this, but your last statement was more than 6 weeks ago and my boss is pushing me.

So, is there ANY chance to get a bugfix for the empty MLTITLEs in DNN 5.1 or not?
akrobit
New Member
New Member
Posts:23

--
2009-11-11 07:48:00  
Tested against DNN 5.1.4 using MLHTML 2.0.6 and your new MLSelector.
Nothing changed.
akrobit
New Member
New Member
Posts:23

--
2010-01-25 14:53:45  
The MLTITLE skin object is now working, using the new ModuleLocalization Version 5.00.00.

But now, I get the viewstate error again.

I installed the new ModuleLocalization Module, replaced the skin object in all my containers and everything worked fine. I set the CacheTime = 3600s for all my MLHTML modules and everything is still fine.

Finally, I set CacheTime = 3600s for all MLAdvAnnouncements modules and I get the viewstate error.
The error only occurs if I call the page for the first time. If I reload the page (its loaded from cache) and try to login it works fine. So the same viewstate error is back.

Any recommendations?
erikvb
Advanced Member
Advanced Member
Posts:713
Avatar

--
2010-01-25 15:01:39  
did you try:

1) any other module using the same container (with the MLTITLE skinobject)
2) the same module without MLTITLE skinobject

can you report back what you find out?

also: what browser / version are you using, does this happen in all browsers (viewstate issues are usualy browser related), what caching provider do you use?

Are you willing to send your site + database for further investigation?
Erik van Ballegoij,
a view from my attic, my personal blog

The personal blog of Erik van Ballegoij

akrobit
New Member
New Member
Posts:23

--
2010-01-26 08:43:25  
1) Yes. MLHTML modules with CacheTime=3600 ... works fine.
2) MLTITLE doesn´t matter in this case. Same viewstate error using normal "TITLE" skin object.

It´s also not browser related ... I get an error in IE 8 and FireFox 3.5.7.

I also installed a complete new DNN 5.01.04 with following extensions:
- ModuleLocalozation 5.00.00
- PageLocalization 5.00.08
- MLAdvAnnouncements 2.00.01
- MLHTML 2.00.06
- Our Skin (customized "Flex (Red)" by DrNuke) and its containers (without MLTITLE)

After that I set the Host Settings (Performance Settings) to:
- Page State Persistence = Page
- Module Caching Method = Disk
- Cache Setting = Heavy
- Authenticated Cacheability = ServerAnNoCache
- Compression Setting = GZip Compression
- Use Whitespace Filter = (Enabled)

I set our skin and one of its containers as default for the portal. After that I made a page on "Home", which only had a MTML module and a MLAdvAnnouncements module (Display Mode: Links, with 2 Links).
-> Up to here: Everything works fine, when calling the page and try to login!

I went to Module Settings of the MLAdvAnnouncements module -> Page Settings -> Basic Settings and set "Cache Time" to 3600.
-> Now I get the viewstate error if I call the (NOT cached) page and try to login.

If you want I can send you this new installed site + database for testings.
(Our original site is approx. 150MB + database at this time - a bit to large to be sent or provided by download)

I saw in the Module Definition of MLAdvAnnouncements that the default cache time of the module is set to 0, which means (afaik) that the module supports caching, but its disabled.
So, could it be that the viewstate error is caused by this missmatching settings?
(Page Cache Time = 3600, MLAdvAnnouncements Cache Time = 0)
erikvb
Advanced Member
Advanced Member
Posts:713
Avatar

--
2010-01-26 09:15:19  
Thanks for the info. I will try reproducing it locally, and if i can, fix it.
Erik van Ballegoij,
a view from my attic, my personal blog

The personal blog of Erik van Ballegoij

akrobit
New Member
New Member
Posts:23

--
2010-01-26 11:37:00  
OK. Thanks, in advance.

FYI:
I made equal testings on IIS6 with .NET Framework 2.0 + 3.5 and on IIS7 with .NET 3.5
-> Result: the same viewstate error
akrobit
New Member
New Member
Posts:23

--
2010-02-22 09:41:27  
Hi Erik,

are there any news on it?
Was it possible to reproduce the viewstate error locally?
blondie63
New Member
New Member
Posts:44

--
2010-03-12 00:39:32  
This module is compatible with DNN 5.2.3 ?
erikvb
Advanced Member
Advanced Member
Posts:713
Avatar

--
2010-03-14 14:48:13  
the module should work on dnn 5.2.3
Erik van Ballegoij,
a view from my attic, my personal blog

The personal blog of Erik van Ballegoij

You are not authorized to post a reply.

Active Forums 4.1
NOT LICENSED FOR PRODUCTION USE
www.activemodules.com
  

Copyright 2002-2007 Apollo Software
Terms Of Use  |  Privacy Statement
Page generated in 1.3597752 seconds.