NHibernate.Caches.Velocity - update to AppFabric Caching Services 1.0

Description

Velocity has been renamed to AppFabric Caching Services. I've taken the suggested updates from this stackoverflow article: http://stackoverflow.com/questions/3233792/appfabric-could-not-contact-the-cache-service and improved them.

Namely:

Known limitation:

  • if cache cluster is restarted, we will receive an error "ErrorCode<ERRCA0005>:SubStatus<ES0001>:Region referred to does not exist. Use CreateRegion API to fix the error". Open to options on how to resolve that.

Please note: as part of applying this patch, the following files may be removed from lib\net\3.5:

  • CacheBaseLibrary.dll

  • CacheBaseLibrary.XML

  • CASBase.dll

  • CASClient.dll

  • ClientLibrary.dll

  • ClientLibrary.XML

  • FabricCommon.dll

Environment

None

Attachments

3

Activity

Frédéric Delaporte 
October 26, 2017 at 1:01 PM

Moved to GitHub.

Frédéric Delaporte 
October 22, 2017 at 3:52 PM

If someone is interested by this, please issue a PR here.

Frantisek Jandos 
June 8, 2011 at 4:20 AM

I appreciate there is cache provider for AppFavric Cache, but I think that the usage of locks dictionary in VelocityClient is problematic due to following reasons:
Info The client class is not thread safe (according to ICache comments should be) as distinct Add, Remove, Count may be performed concurrenctly. This could lead to race condions and unexpected dictionary exceptions.
(ii) If we are in cluster, each node would have its own locks dictionary, which could again lead to potential unlock by put.

Paul Duran 
November 28, 2010 at 6:46 PM

Attaching new version of patch. This version wraps the DataCache operations so that if the cache cluster is restarted, it will trap the RegionDoesNotExist error and recreate the region.

Won't Fix

Details

Assignee

Reporter

Components

Affects versions

Priority

Who's Looking?

Open Who's Looking?
Created November 26, 2010 at 7:14 PM
Updated April 20, 2018 at 2:55 PM
Resolved April 20, 2018 at 2:55 PM
Who's Looking?

Flag notifications