Solved

Validation of viewstate MAC failed

Posted on 2014-11-05
8
449 Views
Last Modified: 2014-11-12
Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster.   at System.Web.UI.ViewStateException.ThrowMacValidationError(Except

hello everyone

i have seen some error in my sql server logs. hear is

####

Validation of viewstate MAC failed. If this application is hosted by a Web Farm or cluster, ensure that <machineKey> configuration specifies the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster.   at System.Web.UI.ViewStateException.ThrowMacValidationError(Except

####

i have two web servers and one sql server. for load balancing i have used dns round-robin.

in iis server i have manually created machinKey and submit sam in two servers but the log still exist

please suggest what to do.
0
Comment
Question by:ameriaadmin
  • 4
  • 4
8 Comments
 
LVL 27

Expert Comment

by:Dan McFadden
ID: 40425724
I would review this Microsoft support article:

Link:  https://support.microsoft.com/kb/2915218?wa=wsignin1.0

One of the take aways from the article is to use some sort of sticky session, meaning that a user session stays with the first server to respond to the initial http/https request.  DNS Round Robin could be causing your viewstate issues.

Dan
0
 

Author Comment

by:ameriaadmin
ID: 40425840
good url, i have done it , but still have error
0
 
LVL 27

Expert Comment

by:Dan McFadden
ID: 40425875
Have you tried the application without the DNS round robin?  I would remove 1 of the servers from the round robin config and test the application.  Viewstate can not be shared across servers.

Dan
0
Comprehensive Backup Solutions for Microsoft

Acronis protects the complete Microsoft technology stack: Windows Server, Windows PC, laptop and Surface data; Microsoft business applications; Microsoft Hyper-V; Azure VMs; Microsoft Windows Server 2016; Microsoft Exchange 2016 and SQL Server 2016.

 

Author Comment

by:ameriaadmin
ID: 40425898
yes, from one server it works without errors.
0
 
LVL 27

Expert Comment

by:Dan McFadden
ID: 40425916
Then I'll go back to saying that issue probably lies with the load balancing method (DNS Round Robin) you are using.

You cannot share viewstate across servers without building (programming or thirds party software) some sort functionality to do so.  Since a typical HTTP request is stateless, you would need to have some mechanism in place to share session data or to persist data across servers.  You could accomplish this with a third server running a session manager, known as out-of-proc session, but this adds a little to the application's latency.  There is also third party software which you could install on all servers in the web farm, which stores and replicates the session info so you could use a load balancing method like least-response-time or DNS Round Robin.

The other option would be to store this data in a database but you would still need to build functionality to persist that data with the next inbound request.  Essentially you would be building a SQL backed persistent cache.

Again, I recommend using a load balancing method where the initial request and all subsequent requests for a session are sent to the server that responds to the first request.  This is typically referred to as "Sticky Sessions."  DNS Round Robin is not effective in your defined situation.

Dan
0
 
LVL 27

Accepted Solution

by:
Dan McFadden earned 500 total points
ID: 40425925
Here is a decent article that describes the challenges you are having:

http://www.dzone.com/articles/optimize-aspnet-performance
0
 

Author Comment

by:ameriaadmin
ID: 40439303
thank you the article was very helpful.
0
 

Author Closing Comment

by:ameriaadmin
ID: 40439305
we disable View State Caching
0

Featured Post

Best Practices: Disaster Recovery Testing

Besides backup, any IT division should have a disaster recovery plan. You will find a few tips below relating to the development of such a plan and to what issues one should pay special attention in the course of backup planning.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Initial get page response times and IIS8 15 49
sql server computed columns 11 29
What's wrong with this T-SQL Foreign Key? 7 38
Query Help - MSSQL - Averages 5 25
Prologue It is often required to host multiple websites on a single instance of IIS, mostly in development environments instead of on production servers. I am sure it is not much a preferred solution on production servers but this is at least a pos…
JSON is being used more and more, besides XML, and you surely wanted to parse the data out into SQL instead of doing it in some Javascript. The below function in SQL Server can do the job for you, returning a quick table with the parsed data.
Via a live example, show how to set up a backup for SQL Server using a Maintenance Plan and how to schedule the job into SQL Server Agent.
Via a live example, show how to shrink a transaction log file down to a reasonable size.

816 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

9 Experts available now in Live!

Get 1:1 Help Now