ErrorCode<ERRCA0019>:SubStatus<ES0001>:Check the client version. It should be within the allowed version range on the server. If necessary, upgrade the client to the allowed version.
Monday, January 09, 2012 7:09 AM
I have implemented windows appfabric caching 1.1 in my ASP.NET web application running on Windows Server 2008 SP2 x64. My application pool is running on .NET 4.0. Following are the versions of appfabric dlls referrenced within my application :
- Microsoft.ApplicationServer.Caching.Client.dll : ver 188.8.131.52
- Microsoft.ApplicationServer.Caching.Core.dll : ver 184.108.40.206
- Microsoft.WindowsFabric.Common.dll : ver 220.127.116.11
- Microsoft.WindowsFabric.Date.Common.dll : ver 18.104.22.168
Everything works fine with this setup. My next goal is to implement 'AppFabricCacheSessionStateProvider'. For that I require Microsoft.Web.DistributedCache.dll. However no such dll was installed on the server post appfabric installation (both client and server bits). I checked AppFabric install directory (C:\Windows\System32\AppFabric), which has all other caching dlls except for this one.
Based on comments on other threads, I installed Windows Azure SDK and got the dll. Unfortunately its version is 22.214.171.124 and referrences the following :
Microsoft.Web.DistributedCache.dll ver 126.96.36.199
- Microsoft.ApplicationServer.Caching.Client.dll : ver 188.8.131.52
- Microsoft.ApplicationServer.Caching.Core.dll : ver 184.108.40.206
This means that the dll was built against higher versions of these caching dlls. This results in 2 issues :
- if i use Microsoft.Web.DistributedCache.dll inside my web application, it fails to find correct version of Microsoft.ApplicationServer.* dlls (it looks for ver 220.127.116.11 and finds version 18.104.22.168)
- if i update my web application to reference higher versions of those dlls (Microsoft.Web.DistributedCache.dll ver 22.214.171.124 referrencing Microsoft.ApplicationServer.* dlls ver 126.96.36.199), then the caching server fails with the above error.
In short there is a mismatch here. So what I am looking for is the correct version of Microsoft.Web.DistributedCache.dll. I fail to understand why doesn't the appfabric installer dump this dll in the first place. I used the following installer from here : WindowsServerAppFabricSetup_x64_6.0.exe.
Can anyone please point me to the correct dll version ? It is very important for me to get appfabric session state provider going from applicatin architecture perspective.
Full exception with stack trace :
Microsoft.ApplicationServer.Caching.DataCacheException: ErrorCode<ERRCA0019>:SubStatus<ES0001>:Check the client version. It should be within the allowed version range on the server. If necessary, upgrade the client to the allowed version.
[DataCacheException: ErrorCode<ERRCA0019>:SubStatus<ES0001>:Check the client version. It should be within the allowed version range on the server. If necessary, upgrade the client to the allowed version.] Microsoft.ApplicationServer.Caching.DataCache.ThrowException(ResponseBody respBody) +568 Microsoft.ApplicationServer.Caching.DataCacheFactory.GetCacheProperties(RequestBody request, IClientChannel channel) +548 Microsoft.ApplicationServer.Caching.DataCacheFactory.GetCache(String cacheName) +557 Microsoft.Web.DistributedCache.CacheHelpers.RunCacheCreationHooks(CacheConnectingEventArgs fetchingEventArgs, IDataCacheFactory dataCacheFactory, Object sender, EventHandler`1 fetchingHandler, EventHandler`1 fetchedHandler) +95 Microsoft.Web.DistributedCache.DistributedCacheSessionStateStoreProvider.CreateInternalProvider(IHttpRuntime httpRuntime, SessionInitializationData initData, IDataCacheFactory dataCacheFactory, EventHandler`1 cacheFetching, EventHandler`1 cacheFetched) +146 Microsoft.Web.DistributedCache.DistributedCacheSessionStateStoreProvider.GetInternalProvider() +206 Microsoft.Web.DistributedCache.DistributedCacheSessionStateStoreProvider.CreateNewStoreData(HttpContext context, Int32 timeout) +19 System.Web.SessionState.SessionStateModule.InitStateStoreItem(Boolean addToContext) +160 System.Web.SessionState.SessionStateModule.CompleteAcquireState() +363 System.Web.SessionState.SessionStateModule.BeginAcquireState(Object source, EventArgs e, AsyncCallback cb, Object extraData) +1296 System.Web.AsyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +115 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +375
Tuesday, January 10, 2012 10:05 AM
Got the answer in another thread : http://social.msdn.microsoft.com/Forums/en-US/velocity/thread/49c55f0f-4639-4dd4-8798-e0768f3dcc51
Download path for correct version of Microsoft.Web.DistributedCache.dll which referrences version 188.8.131.52 of Microsoft.ApplicationServier.*.dlls : http://aspnet.codeplex.com/releases/view/46576
- Marked As Answer by dhruba Tuesday, January 10, 2012 10:05 AM
Tuesday, January 10, 2012 10:21 AM
If you intend to use AppFabric Caching 1.1 as you have mentioned above, please use the download at http://www.microsoft.com/download/en/details.aspx?id=27115. The download link you have above is for the v1.0 version.
Charu P [Microsoft]
Thursday, January 12, 2012 3:42 PM
I got this same error message after I had downloaded and installed the x64 6.1 app fabric found here: http://www.microsoft.com/download/en/details.aspx?id=15848
Then I downloaded and upgraded/installed the x64 version that Charu suggested here: http://www.microsoft.com/download/en/details.aspx?id=27115
I am still getting this message!! Obviously I do not have everything set up properly but I do not know what. I was using this blog as a guide: http://cgeers.com/2010/07/04/windows-server-appfabric-caching/
When I reference the dll's I try to reference the 184.108.40.206 version whenever possible. Anybody have any advice on how to get past this? I tried to remove all of the features and start over but the add/remove feature that app fabric provides never finishes it's task and eventually locks up my computer. :|
Any help is GREATLY appreciated.
Tuesday, January 17, 2012 11:22 AM
I had the same today whilst I upgrading from 1.0 RTM to 1.1 RTM (x64 version)
After referencing the newer DLL's that get installed (mine got installed to C:\Program Files\AppFabric 1.1 for Windows Server), you have to tell the AppFabric caching server to allow connections from clients running "version 3".
Open the Cluster Admin powershell in admin mode to run the commands. The one that helped me was in Step 6, because before I'd run that command, the server was rejecting connections from my now upgraded client which was running version 3.