Hi,

The patch didn't work

Regards,
Evanthika


On Fri, Aug 23, 2013 at 5:59 PM, Sameera Jayasoma <[email protected]> wrote:

>
>
>
> On Fri, Aug 23, 2013 at 3:17 PM, Afkham Azeez <[email protected]> wrote:
>
>> Please create jars in the branch using the attached patch, and test it
>> out in the environment where this issue occurred.
>>
>>
>>
>> Index:
>> javax.cache/src/main/java/org/wso2/carbon/caching/impl/DataHolder.java
>> ===================================================================
>> --- javax.cache/src/main/java/org/wso2/carbon/caching/impl/DataHolder.java 
>> (revision
>> 180096)
>> +++ javax.cache/src/main/java/org/wso2/carbon/caching/impl/DataHolder.java 
>> (working
>> copy)
>> @@ -49,6 +49,8 @@
>>          try {
>>              if(distributedMapProvider != null){
>>                  cachingProvider.switchToDistributedMode();
>> +            } else {
>> +                cachingProvider.switchToLocalMode();
>>              }
>>          } catch (Exception e) {
>>              log.error("Cannot setDistributedMapProvider", e);
>> Index:
>> javax.cache/src/main/java/org/wso2/carbon/caching/impl/CacheManagerFactoryImpl.java
>> ===================================================================
>> ---
>> javax.cache/src/main/java/org/wso2/carbon/caching/impl/CacheManagerFactoryImpl.java
>>  (revision
>> 180096)
>> +++
>> javax.cache/src/main/java/org/wso2/carbon/caching/impl/CacheManagerFactoryImpl.java
>>  (working
>> copy)
>> @@ -72,6 +72,14 @@
>>          }
>>      }
>>
>> +    void switchToLocalMode(){
>>  +        for (Map<String, CacheManager> cacheManagerMap :
>> globalCacheManagerMap.values()) {
>> +            for (CacheManager cacheManager : cacheManagerMap.values()) {
>> +                ((CarbonCacheManager) cacheManager).switchToLocalMode();
>> +            }
>> +        }
>> +    }
>> +
>>      @Override
>>      public CacheManager getCacheManager(String cacheManagerName) {
>>          String tenantDomain = Util.getTenantDomain();
>> Index:
>> javax.cache/src/main/java/org/wso2/carbon/caching/impl/CarbonCacheManager.java
>> ===================================================================
>> ---
>> javax.cache/src/main/java/org/wso2/carbon/caching/impl/CarbonCacheManager.java
>>  (revision
>> 180096)
>> +++
>> javax.cache/src/main/java/org/wso2/carbon/caching/impl/CarbonCacheManager.java
>>  (working
>> copy)
>> @@ -131,6 +131,12 @@
>>          }
>>      }
>>
>> +    void switchToLocalMode(){
>> +        for (Cache<?, ?> cache : caches.values()) {
>> +            ((CacheImpl) cache).switchToLocalMode();
>> +        }
>> +    }
>> +
>>      @SuppressWarnings("unchecked")
>>      final <K, V> Cache<K, V> getExistingCache(String cacheName) {
>>          touch();
>> Index:
>> javax.cache/src/main/java/org/wso2/carbon/caching/impl/CacheImpl.java
>> ===================================================================
>> --- javax.cache/src/main/java/org/wso2/carbon/caching/impl/CacheImpl.java 
>> (revision
>> 180202)
>> +++ javax.cache/src/main/java/org/wso2/carbon/caching/impl/CacheImpl.java 
>> (working
>> copy)
>> @@ -150,6 +150,15 @@
>>          }
>>      }
>>
>> +    void switchToLocalMode() {
>> +        DistributedMapProvider distributedMapProvider =
>> +                DataHolder.getInstance().getDistributedMapProvider();
>> +        if (isLocalCache(cacheName, distributedMapProvider)) {
>> +            return;
>> +        }
>> +        isLocalCache = true;
>> +    }
>> +
>>      private String getMapName(String cacheName, CacheManager
>> cacheManager) {
>>          return "$cache.$domain[" + ownerTenantDomain + "]" +
>>                  cacheManager.getName() + "#" + cacheName;
>> Index:
>> javax.cache/src/main/java/org/wso2/carbon/caching/impl/CachingProviderImpl.java
>> ===================================================================
>> ---
>> javax.cache/src/main/java/org/wso2/carbon/caching/impl/CachingProviderImpl.java
>>  (revision
>> 180096)
>> +++
>> javax.cache/src/main/java/org/wso2/carbon/caching/impl/CachingProviderImpl.java
>>  (working
>> copy)
>> @@ -35,6 +35,10 @@
>>          cacheManagerFactory.switchToDistributedMode();
>>      }
>>
>> +    void switchToLocalMode(){
>> +        cacheManagerFactory.switchToLocalMode();
>> +    }
>> +
>>      @Override
>>      public CacheManagerFactory getCacheManagerFactory() {
>>          return cacheManagerFactory;
>> Index:
>> org.wso2.carbon.core/src/main/java/org/wso2/carbon/core/clustering/hazelcast/HazelcastClusteringAgent.java
>> ===================================================================
>> ---
>> org.wso2.carbon.core/src/main/java/org/wso2/carbon/core/clustering/hazelcast/HazelcastClusteringAgent.java
>>  (revision
>> 181419)
>> +++
>> org.wso2.carbon.core/src/main/java/org/wso2/carbon/core/clustering/hazelcast/HazelcastClusteringAgent.java
>>  (working
>> copy)
>> @@ -44,6 +44,7 @@
>>  import org.apache.commons.logging.Log;
>>  import org.apache.commons.logging.LogFactory;
>>  import org.osgi.framework.BundleContext;
>> +import org.osgi.framework.ServiceRegistration;
>>  import org.wso2.carbon.caching.impl.DistributedMapProvider;
>>  import org.wso2.carbon.core.ServerStatus;
>>  import org.wso2.carbon.core.clustering.api.CarbonCluster;
>> @@ -107,6 +108,7 @@
>>              new HashMap<String, Map<String, GroupManagementAgent>>();
>>      private boolean clusterManagementMode;
>>      private String primaryDomain;
>> +    private ServiceRegistration<DistributedMapProvider>
>> distributedMapProviderServiceRegistration;
>>
>>      public void init() throws ClusteringFault {
>>          MemberUtils.init(parameters, configurationContext);
>> @@ -220,11 +222,11 @@
>>          }
>>          MemberUtils.getMembersMap(primaryHazelcastInstance,
>> primaryDomain).put(localMember.getUuid(),
>>
>>       carbonLocalMember);
>> -        BundleContext bundleContext = CarbonCoreDataHolder.getInstance().
>> -                getBundleContext();
>> -        bundleContext.registerService(DistributedMapProvider.class,
>> -                                      new
>> HazelcastDistributedMapProvider(primaryHazelcastInstance),
>> -                                      null);
>> +        BundleContext bundleContext =
>> CarbonCoreDataHolder.getInstance().getBundleContext();
>> +        distributedMapProviderServiceRegistration =
>> +
>>  bundleContext.registerService(DistributedMapProvider.class,
>> +                                              new
>> HazelcastDistributedMapProvider(primaryHazelcastInstance),
>> +                                              null);
>>          bundleContext.registerService(HazelcastInstance.class,
>> primaryHazelcastInstance, null);
>>          bundleContext.registerService(CarbonCluster.class,
>>                                        hazelcastCarbonCluster, null);
>> @@ -373,6 +375,8 @@
>>      public void shutdown() throws ClusteringFault {
>>          try {
>>              Hazelcast.shutdownAll();
>> +            // Unregister the DistributedMapProvider
>> +            distributedMapProviderServiceRegistration.unregister();
>>          } catch (Exception ignored) {
>>          }
>>      }
>> Index:
>> org.wso2.carbon.core/src/main/java/org/wso2/carbon/core/util/HouseKeepingTask.java
>> ===================================================================
>> ---
>> org.wso2.carbon.core/src/main/java/org/wso2/carbon/core/util/HouseKeepingTask.java
>>  (revision
>> 180199)
>> +++
>> org.wso2.carbon.core/src/main/java/org/wso2/carbon/core/util/HouseKeepingTask.java
>>  (working
>> copy)
>> @@ -72,10 +72,11 @@
>>          }
>>          File[] children = file.listFiles();
>>          if (children != null) {
>> -            for (int i = 0; i < children.length; i++) {
>> -                clean(children[i], deletedFiles);
>> +            for (File child : children) {
>> +                clean(child, deletedFiles);
>>              }
>> -            if (file.listFiles() == null || file.listFiles().length ==
>> 0) { // all children deleted?
>> +            children = file.listFiles();
>> +            if (children == null || children.length == 0) { // all
>> children deleted?
>>                  String absPath = file.getAbsolutePath();
>>                  if (log.isDebugEnabled()) {
>>                      log.debug("Deleting directory " + absPath + "...");
>>
>>
>> _______________________________________________
>> Dev mailing list
>> [email protected]
>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>
>>
>
>
> --
> Sameera Jayasoma,
> Architect,
>
> WSO2, Inc. (http://wso2.com)
> email: [email protected]
> blog: http://sameera.adahas.org
> twitter: https://twitter.com/sameerajayasoma
> flickr: http://www.flickr.com/photos/sameera-jayasoma/collections
>
>
> Lean . Enterprise . Middleware
>
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to