Shared AM vs Coherence

Hi All,
I have the following requirement and could you please suggest me if it possible using a shared AM.
1. The requirement is to call a Web Service once and populate data in a transient VO and share across user sessions ..
2. We earlier tried with Web Service data control, but as said, the web service call returns the huge data that needs to be populated only once.
3. So far, we have decided to go with shared AM. But the requirement has changed that we need to call web service on timely basics to refresh the production data.
4. we tired to use a coherence cache to call Web Service on timely basis, populate the cache, create a POJO , create a data control based on POJO but it is very tough to maintain parent child relationship and all using POJO data control.
Is there a way I can refresh the Shared AM VOs on timely basis to call Web Service and repopulate .. ?
thanks,
Vinoth

Thanks John.We are getting the
java.sql.SQLException: ORA-29970: Specified registration id does not exist
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:440)
in our production environment. We do have a Shared AM in the session scope and we set the AutoRefresh=true for some of the VO's. This issue is not reproducible in other environment. I was thinking to disable the AutoRefresh =false to disable listening the database change notification and thus avoid this error. We can live with not refreshing VOs as its nearly constant data.But I want doble check before doing that. Since its a prod env. we cant play much here.
Thanks
Suneesh

Similar Messages

  • Scoping the toplink cache to application

    Hi all, per Active Cache guide, the cache configuration can be scoped at the application level. This is what I am trying to do.
    I have created shared libraries for coherence.jar, active-cahe jar and toplinkgrid jar and am including them in my application's weblogic-application.xml as library reference. The idea is that the cluster will be scoped within my application class loader.
    Now, the next part is also to scope the cache configuration in my application. I have also created a JAR file which contains the cache configuration xml file and have created a shared library and included it as above.
    However, with this, the log out put is as below
    <Sep 16, 2010 11:11:22 AM CST> <Notice> <Stdout> <BEA-000000> <2010-09-16 11:11:22.391/691.970 Oracle Coherence GE 3.5.3/465p2 <Info> (thread=[STANDBY] ExecuteT
    hread: '3' for queue: 'weblogic.kernel.Default (self-tuning)', member=n/a): Loaded cache configuration from "zip:D:/Oracle/Middleware11.1.1.3/coherence_3.5/lib/
    coherence.jar!/reports/report-group.xml">
    I have also tried placing the configuration JAR file in the application EAR file lib directory. I still get the above log statement.
    So, the question is, how do I make coherence pick up my application scoped configuration. I read the Active Cache documentation, but I am not clear about this part.
    Thanks.

    You can use the system propety -Dtangosol.coherence.cacheconfig
    to tell coherence which cache configuration you want to use, for example
    -Dtangosol.coherence.cacheconfig=<location>/hibernate-cache-config.xml

  • Using EclipseLink or JPA with Oracle Coherence as shared cache

    Hi,
    I expect to use EclipseLink with Oracle Coherence as shared cache, mainly with/for Entity Caching.
    * JPA)
    For JPA queries, is the JPA semantics fully preserved when using Oracle Coherence ?
    * Non-JPA)
    Are the non-JPA API taking also advantage from Oracle Coherence ?
    For these non-JPA queries, is the semantics fully preserved when using Oracle Coherence ?
    Regards,
    Dominique
    PS: I hope this is the right forum to ask my questions.
    Otherwise, could you tell me what is the right forum ?
    Thanks.

    Yes, JPA semantics are fully preserved when using TopLink-Grid to cache entities within Coherence.
    Yes, the native EclipseLink APIs can also take advantage of TopLink-Grid and Coherence.
    I am not sure what you mean by "For these non-JPA queries, is the semantics fully preserved when using Oracle Coherence ?" Perhaps you can provide an example of what you are looking for?
    --Gordon                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

  • Coherence Extend shared library is quite large

    Hello all,
    I'm starting to play around with Coherence Extend (for C++), and I've noticed that the .so provided is 67 megabytes. Even when I strip it, it only goes down to 57 MB. I'm wondering if there is a way to trim this down. Is there a list of features that I can pick and choose from that would allow for a slimmer distro? Additionally, I'm wondering if there's a static library that can be used instead of the shared one, so I can compile it directly into my other binaries (instead of a dynamic link).
    The reason I'd like a smaller library is that we're going to be trying Coherence from a CGI, and a small memory footprint is essential when the whole process only lives for 200 milliseconds on a busy box.
    Anyway, any tips would be appreciated.
    Thanks,
    Anthony
    Edited by: 952088 on Aug 10, 2012 8:39 AM - specified language

    Hi Anthony,
    You may want to measure the time it takes to load the Coherence library versus the size of the .so. It's not likely that the entire shared library will need to be loaded into memory. Only the parts that are needed for whatever your program is doing. And on most OS's, when multiple processes are using the same shared library, just one copy of the shared library will be loaded into memory and then will be shared by all of the processes.
    Using a shared library or static library should have no impact loading time or memory used as your program is loading the same "stuff" either way.
    Hope this helps,
    Patrick

  • Coherence*Web on GlassFish Server Issues

    Hi!
    We are using Coherence 3.7.1.8 in our application in GlassFish 3.1.2 both as application cache and for storing session data (Coherence*Web) so it can be shared between multiple EARs and App server instances. Session data sharing between EARs in the same container works fine, but when we try to share session data between application server instances the server stops responding and has to be restarted. The only thing we get on the log is this exception:
    #|SEVERE|oracle-glassfish3.1.2|com.tangosol.coherence.servlet.ParallelReapTask|_ThreadID=169;_ThreadName=Thread-2;|An exception was thrown while reaping a session.
    com.tangosol.coherence.servlet.commonj.WorkException: Work Failed.
      at com.tangosol.coherence.servlet.commonj.impl.WorkItemImpl.run(WorkItemImpl.java:167)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      at java.lang.Thread.run(Thread.java:722)
    Caused by: java.lang.ClassCastException: com.tangosol.coherence.servlet.SplittableHolder cannot be cast to com.tangosol.coherence.servlet.AttributeHolder
      at com.tangosol.coherence.servlet.AbstractHttpSessionModel.readAttributes(AbstractHttpSessionModel.java:1815)
      at com.tangosol.coherence.servlet.AbstractHttpSessionModel.readExternal(AbstractHttpSessionModel.java:1735)
      at com.tangosol.util.ExternalizableHelper.readExternalizableLite(ExternalizableHelper.java:2042)
      at com.tangosol.util.ExternalizableHelper.readObjectInternal(ExternalizableHelper.java:2346)
      at com.tangosol.util.ExternalizableHelper.deserializeInternal(ExternalizableHelper.java:2747)
      at com.tangosol.util.ExternalizableHelper.fromBinary(ExternalizableHelper.java:263)
      at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.partitionedService.PartitionedCache$ConverterFromBinary.convert(PartitionedCache.CDB:4)
      at com.tangosol.util.ConverterCollections$ConverterMap.get(ConverterCollections.java:1656)
      at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.partitionedService.PartitionedCache$ViewMap.get(PartitionedCache.CDB:1)
      at com.tangosol.coherence.component.util.SafeNamedCache.get(SafeNamedCache.CDB:1)
      at com.tangosol.net.cache.CachingMap.get(CachingMap.java:491)
      at com.tangosol.coherence.servlet.DefaultCacheDelegator.getModel(DefaultCacheDelegator.java:122)
      at com.tangosol.coherence.servlet.AbstractHttpSessionCollection.getModel(AbstractHttpSessionCollection.java:2288)
      at com.tangosol.coherence.servlet.AbstractReapTask.checkAndInvalidate(AbstractReapTask.java:140)
      at com.tangosol.coherence.servlet.ParallelReapTask$ReapWork.run(ParallelReapTask.java:89)
      at com.tangosol.coherence.servlet.commonj.impl.WorkItemImpl.run(WorkItemImpl.java:164)
      ... 3 more
    We tried to restrict the shared session data by implementing a custom SessionDistributionController, but according to the documentation, this feature requires coherence-sticky-sessions optimization to be enabled and this last one requires coherence-session-member-locking to be enabled. This led us to the following error:
    #|SEVERE|oracle-glassfish3.1.2|org.apache.catalina.connector.CoyoteAdapter|_ThreadID=202;_ThreadName=Thread-2;|PWC3989: An exception or error occurred in the container during the request processing
    java.lang.IllegalStateException: attempt to exit session VhSnfqkcwAza when it was not owned
        at com.tangosol.coherence.servlet.AbstractHttpSessionCollection.exit(AbstractHttpSessionCollection.java:799)
        at com.tangosol.coherence.servlet.AbstractHttpSessionCollection.exit(AbstractHttpSessionCollection.java:696)
        at com.tangosol.coherence.servlet.glassfish31.CoherenceWebSessionManager.exit(CoherenceWebSessionManager.java:536)
        at com.tangosol.coherence.servlet.glassfish31.CoherenceWebSession.unlockForeground(CoherenceWebSession.java:451)
        at org.apache.catalina.connector.Request.unlockSession(Request.java:4222)
        at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:342)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
        at com.sun.enterprise.v3.services.impl.ContainerMapper$AdapterCallable.call(ContainerMapper.java:317)
        at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:195)
        at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:860)
        at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:757)
        at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1056)
        at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:229)
        at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
        at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
        at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
        at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
        at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
        at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
        at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
        at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
        at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
        at java.lang.Thread.run(Thread.java:722)
    We want to know if we are missing something in our configuration. We are using com.tangosol.coherence.servlet.AbstractHttpSessionCollection$GlobalScopeController. The session-cache-config.xml file has only this item added:
            <replicated-scheme>
                <scheme-name>default-replicated</scheme-name>
                <service-name>ReplicatedCache</service-name>
                <backing-map-scheme>
                    <class-scheme>
                        <scheme-ref>default-backing-map</scheme-ref>
                    </class-scheme>
                </backing-map-scheme>
            </replicated-scheme>
            <class-scheme>
                <scheme-name>default-backing-map</scheme-name>
                <class-name>com.tangosol.util.SafeHashMap</class-name>
            </class-scheme>
    Any help or light would be greatly appreciated. Thanks in advance.

    Depending on the version of WebLogic (which unfortunately I cannot remember off of the top of my head), you don't have to use the installer, because WebLogic has added built-in Coherence*Web support. Have you checked the WebLogic documentation for using Coherence*Web?
    Peace,
    Cameron Purdy | Oracle Coherence
    http://coherence.oracle.com/

  • Multiple iCloud accounts / iOS 8 iPhone cellular / Coherence

    Hello,
    My partner and I share a photo library, a music library, and a keychain. In iOS 7, we would just sign into the same iCloud account, and then for FaceTime and iMessage sign into a different account, each respective account associated with our own iPhone mobile number.
    It seems this strategy doesn't work in iOS 8 -- to use iPhone cellular or Coherence, you have to be signed into the same account.
    Associating the accounts mentioned above under a family account doesn't help.
    If each of us signs into our own iCloud account, we will have different Photo Streams which for now means our pictures can't both end up in the same iPhoto library, and, down the line, we will need iCloud Photo Libraries (probably 500 gigs worth), with no good way to sync them across accounts. We would also lose shared keychain. We could keep the same music library because of the family account.
    Is there any way to work around this? Ideally, we would sign into our own iCloud accounts but for Drive, Photo Stream/Photo Library, and Keychain, be able to connect that feature with another library. Or at least have a way to share the whole library between accounts, not just the single Family Album.
    Thanks!

    EDIT:  It seems this strategy doesn't work in iOS 8 -- to use iPhone cellular or Coherence, you have to be signed into the same account in FaceTime as the main iCloud account.

  • How to prevent multiple users from updating the same data in coherence

    Hi,
    I have a Java Web Application and for data cache am using coherence 3.5. The same data maybe shared by multiple users which maybe in hundreds. Now how do I prevent multiple users from updating the same data in coherence i.e. is there something in coherence that will only allow one user a time to update. If one user is in a process of updating a data in coherence and some other user also tries to update then the second user should get an error.
    Thanks

    I have a question on the same line. How can I restrict someone from updating a cache value when I a process is already working on it. I tried locking the cache key but it does not stop other process to update it , it only does not allow other process to get lock on it.

  • Prevent multiple users from updating coherence cache data at the same time

    Hi,
    I have a web application which have a huge amount of data instead of storing the data in Http Session are storing it in coherence. Now multiple groups of users can use or update the same data in coherence. There are 100's of groups with several thousand users in each group. How do I prevent multiple users from updating the cache data. Here is the scenario. User logs-in checks in coherence if the data there and gets it from coherence and displays it on the ui if not get it from backend i.e. mainframe systems and store it in coherence before displaying it on the screen. Now some other user at the same time can also perform the same function and if don't find the data in coherence can get it from backend and start saving it in coherence while the other user is also in the process of saving or updating. How do I prevent this in coherence. As have to use the same key when storing in coherence because the same data is shared across users and don't want to keep multiple copies of the same data. Is there something coherence provides out-of-the-box or what is best approach to handle this scenario.
    Thanks

    Hi,
    actually I believe, that if we are speaking about multiple users each with its own HttpSession, in case of two users accessing the same session attribute in their own session, the actually used cache keys will not be the same.
    On the other hand, this is probably not what you would really like, you would possibly like to share that data among sessions.
    You should probably consider using either read-through caching with the CacheLoader implementor doing the expensive data retrieval (if the data to be cached can be obtained outside of an HTTP container), or side caching with using Coherence locks or entry-processors for concurrency control on the data retrieval operations for the same key (take care of retries in this case).
    Best regards,
    Robert

  • Looking for some advice on CEP HA and Coherence cache

    We are looking for some advice or recommendation on CEP architecture.
    We need to build a CEP application that conforms to the following:
    • HA with no loss of events or duplicate events when failing over to the backup server.
    • We have some aggregative rules that needs to see all events.
    • Events are XMLs with size of 3KB-50KB. Not all elements are needed for the rules but they are there for other systems that come after the CEP (the customer services).
    • The XML elements that the CEP needs are in varying depth in the XML.
    Running the EPN on a single thread is not fast enough for the required throughput mainly because network latency to the JMS and the heavy task of parsing of the XML. Because of that we are looking for a solution that will read the messages from the JMS in parallel (multi thread) but will keep the same order of events between the Primary and Secondary CEPs.
    One idea that came to our minds is to use Coherence cache in the following way:
    • On the CEP inbound use a distributed queue and not topic (at the CEP outbound it is still topic).
    • On the CEPs side use a Coherence cache that runs on the CEPs JVMs (since we already have a Coherence cluster for HA).
    • Both CEPs read from the queue using multi threading (10 reading threads – total of 20 threads) and putting it to the Coherence cache.
    • The Coherence cache is publishing the events to both CEPs on a single thread.
    The EPN looks something like this:
    JMS adapter (multi threaded) -> replicated cache on both CEPs -> event bean -> HA adapter -> channel -> processor -> ….
    Does this sounds sound to you?
    Are we over shooting here? Is there a simpler solution for our needs?
    Is there a best practice for such requirements?
    Thanks

    Hi,
    Just to make it clear:
    We do not parse the XML on the event bean after the Coherence. We do it on the JMS adapter on multiple threads in order to utilize all the server resources (CPUs) and then we put it in the replicated cache.
    The requirements from our application are:
    - There is an aggregative query that needs to "see" all events (this means that we need to pass all events thru a single processor and we cannot partition them to several processors).
    - Because this is a HA solution the events on both CEPs (primary and secondary) needs to be at the same order when reaching the HA inbound adapter and the processor.
    - A single thread JMS adapter is not reading the messages from the JMS fast enough mainly because it takes time to parse the XML to an event.
    - Using a multi-threaded adapter or many single threaded adapters with message selector will create a situation that the order of events on both CEPs will not be the same at the processor inbound.
    This is why we needed a mediator so we can read in multiple threads that will parse the XMLs in parallel without concerning on order of messages and on the other hand publish all the messages on a single thread to the processors on both CEPs from this shared mediator (we use a replicated cache that runs on both JVMs).
    We use queue instead of topic because if we read the messages from a topic on both CEPs it will be stored twice on the Coherence replicated cache. But if we use a queue, when server 1 read the message and put it in the Coherence replicated cache then server 2 will not read it because it was removed from the queue.
    If I understand correctly you are suggesting replacing the JMS adapter with an event bean that will read the messages from the JMS directly?
    Are you also suggesting that we will not use a replicated cache but instead a stand alone cache on each server? In this case how do we keep the same order of events on both CEPs (on both caches)?

  • EM for Coherence - Cluster upgrade

    Hi Gurus,
    I noticed that there are "Coherence Node Provisioning" process in EM12c, and it says "You can also update selected nodes by copying configuration files and restarting the nodes.". Does the EM will internally check the service HA status before update (stop/start) each node?  The "NODE-SAFE" should be the minimum HA Status criterion to meet to ensure there is no data loss. 
    Thanks in advance
    Hysun

    Thanks for your hints, but it didn't work either. Maybe because the metaset uses the disks DID-name and those are not available when the node is not booted as part of the cluster.
    What I hope will work is this:
    - deactivate the zones resourcegroup
    - make a backup of the non-global zones root
    - restore the backup to a temporary filesystem on the nodes bootdisk
    - mount the temporary filesystem as the zones root (via vfstab)
    - upgrade this node including the zone
    - reboot as part of the cluster (the zone should not start because of autoboot=false and the RG being deactivated)
    - acquire access to the zones shared disk resource
    - copy the content of the zones root back to its original place
    - activate the zones resourcegroup
    - upgrade the other node
    - and of cource backups, backups and even more backups at the right moments :-)
    I will test this scenario as soon as I can find the time for it. If I am successful I will post again.
    Regards, Paul

  • Best way to implement a shared Blocking Queue?

    What's the best way to implement a shared Blocking Queue that multiple JVMs can enqueue objects in and multiple JVM's can dequeue from simultaneously?
    Also, I see references on the web to com.tangosol.coherence.component.util.queue.ConcurrentQueue but I don't see it in the current API docs...
    Thanks

    Hi snidely_whiplash,
    snidely_whiplash wrote:
    What's the best way to implement a shared Blocking Queue that multiple JVMs can enqueue objects in and multiple JVM's can dequeue from simultaneously?
    Also, I see references on the web to com.tangosol.coherence.component.util.queue.ConcurrentQueue but I don't see it in the current API docs...
    ThanksThat class is an internal class, AFAIK.
    As for implementing a queue, you might want to look at Ashish Srivastava's ezMQ component for some ideas:
    http://ezsaid.blogspot.com/2009/01/implementing-jms-queue-on-top-of-oracle.html
    Best regards,
    Robert

  • Verify whether the session data is kept in the Coherence caches

    I have successfully combined the MapViewer application with WebLogic and Oracle Coherence*Web.
    How to verify whether the session data of MapViewer application is kept in the Coherence caches or not?
    All out put show that both of MapViewer and WebLogic server as well as Coherence are running well.
    All the following steps are right?
    The procedure is as the following:
    1. Create a WebLogic domain: Map_domain.
    2. Start the WebLogic domain Map_domain by running startWebLogic.sh script.
    3. Install Coherence.jar as a library on WebLogic.
    4. Copy the coherence.jar in the WAR's WEB-INF/lib directory.
    5. Create a reference to the shared library by modifying the weblogic.xml in web applications WEB-INF directory
    and add the following contents:
    <weblogic-web-app>
         <library-ref>
              <library-name>coherence-web-spi</library-name>
              <specification-version>1.0.0.0</specification-version>
              <implementation-version>1.0.0.0</implementation-version>
              <exact-match>false</exact-match>
         </library-ref>
    <weblogic-web-app>6. Install Coherence-web-spi.war as a WebLogic library.
    7. Install the MapViewer as a WebLogic application.
    8. Start a Coherence cache server using the cmd file web-cache-server.cmd and then start MapViewer application.
    The content of web-cache-server.cmd file:
    @echo off
    @rem This will start a cache server
    setlocal
    :config
    @rem specify the Coherence installation directory
    set coherence_home=F:\coherence
    @rem specify the JVM heap size
    set memory=256m
    :start
    if not exist "%coherence_home%\lib\coherence.jar" goto instructions
    if "%java_home%"=="" (set java_exec=java) else (set java_exec=%java_home%\bin\java)
    :launch
    set java_opts="-Xms%memory% -Xmx%memory%"
    "%java_exec%" -server -showversion "%java_opts%" -cp %coherence_home%\lib\coherence.jar;
    %coherence_home%\lib\coherence-web-spi.war
    -Dtangosol.coherence.management.remote=true
    -Dtangosol.coherence.cacheconfig=WEB-INF/classes/session-cache-config.xml
    -Dtangosol.coherence.session.localstorage=true
    com.tangosol.net.DefaultCacheServer %1
    goto exit
    :instructions
    echo Usage:
    echo   ^<coherence_home^>\bin\cache-server.cmd
    goto exit
    :exit
    endlocal
    @echo onEdited by: jetq on Jan 13, 2010 9:32 AM

    Any opinions are welcome.

  • Coherence Extend Address-provider for dynamic load balancing

    Hi,
    I want to have load balancing across my proxies. so, trying to use <address-provider> feature.
    Here is my setup,
    I have two proxies and many clients.I am configuring both proxy and the client to use load sharing scheme.
    There are implemented classes for the interface AddressProvider. So, i am going to use that.
    Here is proxy server settings,
    <proxy-scheme>
    <service-name>ExtendTcpProxyService</service-name>
    <thread-count>10</thread-count>
    <acceptor-config>
    <tcp-acceptor>
    <address-provider>
    <class-name>com.tangosol.net.RefreshableAddressProvider</class-name>
    </address-provider>
    </tcp-acceptor>
    </acceptor-config>
    <autostart>true</autostart>
    </proxy-scheme>
    I know there is some silly mistake with that,
    I am getting error message in the following log,
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at com.emc.srm.common.daemon.SrmDaemon.start(SrmDaemon.java:59)
    ... 5 more
    Caused by: (Wrapped: Missing or inaccessible constructor "com.tangosol.net.RefreshableAddressProvider()"
    <address-provider>
    <class-name>com.tangosol.net.RefreshableAddressProvider</class-name>
    </address-provider>) java.lang.InstantiationException
    at com.tangosol.util.Base.ensureRuntimeException(Base.java:293)
    at com.tangosol.run.xml.XmlHelper.createInstance(XmlHelper.java:2542)
    at com.tangosol.run.xml.XmlHelper.createInstance(XmlHelper.java:2426)
    at com.tangosol.net.ConfigurableAddressProvider.createAddressProvider(ConfigurableAddressProvider.java:277)
    at com.tangosol.coherence.component.util.daemon.queueProcessor.service.peer.acceptor.TcpAcceptor.configure(TcpAcceptor.CDB:78)
    at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.ProxyService.configure(ProxyService.CDB:67)
    at com.tangosol.coherence.component.util.SafeService.startService(SafeService.CDB:6)
    at com.tangosol.coherence.component.util.SafeService.ensureRunningService(SafeService.CDB:27)
    at com.tangosol.coherence.component.util.SafeService.start(SafeService.CDB:14)
    at com.tangosol.net.DefaultConfigurableCacheFactory.ensureServiceInternal(DefaultConfigurableCacheFactory.java:1057)
    at com.tangosol.net.DefaultConfigurableCacheFactory.ensureService(DefaultConfigurableCacheFactory.java:892)
    at com.tangosol.net.DefaultCacheServer.startServices(DefaultCacheServer.java:81)
    at com.tangosol.net.DefaultCacheServer.intialStartServices(DefaultCacheServer.java:250)
    at com.tangosol.net.DefaultCacheServer.startAndMonitor(DefaultCacheServer.java:55)
    at com.tangosol.net.DefaultCacheServer.main(DefaultCacheServer.java:197)
    ... 10 more
    Caused by: java.lang.InstantiationException
    at sun.reflect.InstantiationExceptionConstructorAccessorImpl.newInstance(InstantiationExceptionConstructorAccessorImpl.java:30)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
    at java.lang.Class.newInstance0(Class.java:355)
    at java.lang.Class.newInstance(Class.java:308)
    at com.tangosol.util.ClassHelper.newInstance(ClassHelper.java:587)
    at com.tangosol.run.xml.XmlHelper.createInstance(XmlHelper.java:2501)
    ... 23 more
    Cannot start daemon
    First question:
    1) without address provider section in the proxy server configuration xml, will it use any default address provider implementation?
    2) what's wrong with the proxy server settings xml which causes above error?
    Thanks
    Prab

    Hi LuK,
    Sounds like there is no load balancing is happening in my environment.
    I didn't use address provider tag since it's mentioned in AddressProvider Interface API that by default it uses ConfigurableAddressProvider implementation.
    Here is a xml snippet in remote client cache configuration xml,
    <tcp-initiator>
    *<remote-addresses>*
    *<socket-address>*
    *<address>PROXY-A</address>*
    *<port>9099</port>*
    *</socket-address>*
    *<socket-address>*
    *<address>PROXY-B</address>*
    *<port>9099</port>*
    *</socket-address>*
    *</remote-addresses>*
    <connect-timeout>10s</connect-timeout>
    </tcp-initiator>
    what i mean by load balancing is,
    I will be having lot of web service queries which runs very fast. I would like to see both the proxies serves the web requests.
    I am observing, One connection has been made to one proxy when it's starts up and keep hold on to it (no matter whether other proxy is free or not).
    is it a bug? or am i doing some mistake?
    Thanks
    Prab

  • Allowing db-is-shared to be true in a cluster with ReadOnly EJBs

              Hi,
              We're running WL 6.1 SP2 on Solaris 2.8
              My question is about EJB caching in a cluster as we will shortly me moving to a clustered
              environment. The db-is-shared value for an EJB is normally meant to be always set
              to true in the case of a cluster because the database is shared across the cluster.
              However we are only using readonly Entity EJBs. We would expect to maintain the current
              db-is-shared value of false that we are using as our EJBs are very big and we cannot
              afford to go each time to the database. Will this be allowable in a cluster, that
              if you have readonly EJBs, you can maintain your db-is-shared value of false?
              Regs,
              Paul
              

              Cameron,
              We have a similar problem and would like to turn off db-shared property on entity
              beans. But this is what I got from BEA site. It says that we cannot do that in
              a clustered environment bcoz of caching limitations. We would like to use clustering
              ONLY for fail-over and would like not to hit the database so many time. Your thoughts
              please.
              Thanks
              Restrictions and Warnings for db-is-shared:
              Setting db-is-shared to "false" overrides WebLogic Server's default ejbLoad()
              container-managed-persistence behavior, regardless of whether the EJB's underlying
              data is updated by one WebLogic Server instance or multiple clients. If you incorrectly
              set db-is-shared to "false" and multiple clients (database clients, other WebLogic
              Server instances, and so forth) update the bean data, you run the risk of losing
              data integrity.
              Do not set db-is-shared to "false" if you set the entity bean's concurrency strategy
              to
              the "Database" option. If you do, WebLogic Server will ignore the db-is-shared
              setting.
              With database locking specified, the EJB container continues to cache instances
              of entity bean classes. However, the container does not cache the intermediate
              state of the EJB instance between transactions. Instead, WebLogic Server calls
              ejbLoad() for each instance at the beginning of a transaction to obtain the latest
              EJB data. This means that setting db-is-shared to "false" which prevents WebLogic
              Server from calling ejbload() at the beginning of each transaction is invalid.
              Also, due to caching limitations, you cannot set db-is-shared to "false" in a
              WebLogic Server cluster.
              "Cameron Purdy" <[email protected]> wrote:
              >db-is-shared implies that another client of the database can change
              >the
              >data, so yes, you can set it to false if the data is read-only.
              >
              >Peace,
              >
              >Cameron Purdy
              >Tangosol, Inc.
              >http://www.tangosol.com/coherence.jsp
              >Tangosol Coherence: Clustered Replicated Cache for Weblogic
              >
              >
              >"Paul Hammond" <[email protected]> wrote in message
              >news:[email protected]...
              >>
              >> Hi,
              >>
              >> We're running WL 6.1 SP2 on Solaris 2.8
              >>
              >> My question is about EJB caching in a cluster as we will shortly me
              >moving
              >to a clustered
              >> environment. The db-is-shared value for an EJB is normally meant to
              >be
              >always set
              >> to true in the case of a cluster because the database is shared across
              >the
              >cluster.
              >> However we are only using readonly Entity EJBs. We would expect to
              >maintain the current
              >> db-is-shared value of false that we are using as our EJBs are very
              >big and
              >we cannot
              >> afford to go each time to the database. Will this be allowable in a
              >cluster, that
              >> if you have readonly EJBs, you can maintain your db-is-shared value
              >of
              >false?
              >>
              >> Regs,
              >>
              >> Paul
              >>
              >>
              >
              >
              

  • Regarding Coherence Network Performance test?

    Hi,
    We have performed the datagram tests for two servers that we have using the coherence datagram test scripts.
    We have shared the results that we got after a run of 60 – 65 seconds each for the unidirectional and bidirectional tests.
    Please refer to
    https://docs.google.com/spreadsheet/ccc?key=0Atn1ma-myp6ndEc0THBKRTFDSnBaN0NqV1o1Ym1jRnc#gid=0
    for the results.But we want to understand from these results if this performance is under the agreeable range, for which we don’t have any absolute references with us.
    Can someone suggest if this network performance is good enough or if there are any problems based on these statistics?
    Quick help much appreciated. Thanks in advance.
    Edited by: saiyansharwan on Jan 11, 2012 5:40 AM

    Appreciate your response much. For your reference I am putitng the details on the excel sheet right on the reply.
    For unidirectional test
    =============
    Test Parameters -
    1     Buffersize     89 (Changed as exception occurred due to OS buffer size limitations)
    2     Packet size     1468 (default size adopted)
    3     Command on Server A     sh datagram-test.sh serverb
    4     Command on Server B     sh datagram-test.sh -rxBufferSize 89 ( to limit the receive buffer size assumed by coherence to match with the actual value in the OS.)
    Results:
    Server A as publisher and Server B as listener          
    Publisher Details     Byte transfer rate for Server A     111 MB/sec
         Packet transfer rate for Server A     79550 packets/sec
    Listener Details
    Sl.No     Parameter     Server B values
    1     elapsed     61547ms
    2     packet size     1468 packets
    3     throughput     111 MB/sec
              79614 packets/sec
    4     received     4900000 of 4902366
    5     missing     2366 packets
    6     success rate     0.9995174
    7     out of order     0
    8     avg offset     0
    9     gaps     802
    10     avg gap size     2
    11     avg gap time     0ms
    12     avg ack time     -1.0E-6ms; acks 0
    For Bidirectional test
    ============
    Test Parameters -
    Sl.No     Parameters     Values     Remarks
    1     Buffersize     89     Changed as exception occurred due to OS buffer size limitations
    2     Packet size     1468     default size adopted
    3     Command on Server A     sh datagram-test.sh -polite serverb -rxBufferSize 89     started on polite mode to wait till it receives data
    4     Command on Server B     sh datagram-test.sh servera -rxBufferSize 89     
    Results:
    Publisher Details
         Byte transfer rate for Server A     114 MB/sec
         Packet transfer rate for Server A     81367 packets/sec
         Byte transfer rate for Server B     84 MB/sec
         Packet transfer rate for Server B     59768 packets/sec
    Listener Details
    Sl.No     Parameter          Server A               Server B
    1     elapsed          65037ms               64932ms
    2     packet size          1468 packets          1468 packets
    3     throughput          107 MB/sec               65 MB/sec
                   76618 packets/sec          46202 packets/sec
    4     received          4982987 of 5050738          3000000 of 3001389
    5     missing          67751 packets          1389 packets
    6     success rate          0.9865859               0.9995372
    7     out of order          0               0
    8     avg offset          0               0
    9     gaps          20097               119
    10     avg gap size          3               11
    11     avg gap time     0ms               0ms
    12     avg ack time          1.149157ms; acks 309602     1.169717ms; acks 1017381
    As you may observe, unlike the test you performed, bidirectional tests are showing much better success rate in this case.
    But what I was looking for was some standards to compare against to decide if these statistics indicate good network performance.
    Any suggestions?
    Best Regards.

Maybe you are looking for

  • Windows 8.1 Black Screen Of Death

    So,a month ago I installed Windows 8.1 and it was working fine until today,yesterday I turned it off and it had some windows update installing so i waited and then went to sleep,today i wake up boot up the computer and the screen is pitch black after

  • Issues with JScrollPane

    Hi everybody I created a class to display help dialogs dynamically created, because I'll need lots of help windows. I decided to created it based on 2-dimensional arrays of data. Up till here, everything is fine. But I'm facing some problems with the

  • What are the differences between Qosmio X300 and Qosmio X305 ?

    According to my understanding X300 European model while X305 is American model and they have different power supplies, and different default regional settings in pre-installed Windows. Anything else? -Technologov

  • BAPI Error -  Condition FS00 is missing in pricing procedure A V

    ORDER_CONDITIONS_IN-ITM_NUMBER = '000010'. ORDER_CONDITIONS_IN-COND_ST_NO = '10'. ORDER_CONDITIONS_IN-COND_COUNT = '10'. ORDER_CONDITIONS_IN-COND_TYPE = 'FS00'. ORDER_CONDITIONS_IN-COND_VALUE = '20000'. ORDER_CONDITIONS_IN-CURRENCY = 'KRW'. ORDER_CON

  • Reminders Stopped Synching

    Last week I noticed that Reminders on my desktop (iMac running Mavericks) is no longer synching up.  If I create a remind on my iphone, it no longer shows up on the reminders app on my iMac.  Other programs such as Notes, Calendar, Mail, Contacts etc