GoldenGate and Coherence

Hi,
There is recent requirement where customer has asked for GoldenGate integration with Oracle Coherence.
Can anyone provide some pointers, I have browsed a lot but was didn't get anything substantial.
Some documentation or something + I have also get this thing that above integration is expected in 2012, till now its not possible.
Some of the stuff I browsed suggests that:
1) Using DCN or AQ (along with some triggers , JMS listeners) to publish changes to coherence.
2) Some posts suggested using GG Java API
3) others suggested using GG JMS Adapter.
which was is good or any other option.
Thanks,
Vikas

The out-of-the-box GoldenGate integration with Coherence and TopLink to keep a Coherence cache in-sync with the database (for those times when the database is updated not through the cache) was a coordinated development effort amongst the GoldenGate, TopLink and Coherence products. This feature will work in the upcoming GoldenGate v11.2 "adapters" release, but I just found out myself that this will be shipped with Coherence, as part of the 12c release (but will work in any OGG 11.2 or later release).
In the meantime, you've correctly enumerated your available options.

Similar Messages

  • Customized Cache Config and Coherence Override files not Overrided.

    Hi,
    I am doing an example on coherence and was wondering if anyone can help with a couple of questions.
    1. I am trying to override the coherence-cache-config.xml and tangosol-coherence-override.xml with my custom xmls. But when I start cache server from cache-server.cmd executable provided in bin folder of Coherence, it is not able to pick up the overrided files. How can I override both these files.
    2. In most of the examples a new executable file is made for cache server start and the custom coherence-cache-config.xml is specified in this. The examples runs perfectly fine but I'm not able to see the same cache elements available when I run cache-server and cache-client present in the bin folder of Coherence. How can I integrate both of them.
    3. When we use Coherence as a web service from server, are we suppose to use run cache-server.cmd for starting the cache server or make some custom file executable file made for cache server start.
    I know some of the questions may sound silly to you but I'm not still able to figure the answer to these question.
    Any help will be appreciated.
    Cheers,
    Varun

    Hi Varun,
    Yes you can use the property -Dtangosol.coherence.cacheconfig =<file_name> for specifying the override file. No creating a jar is not a bottleneck and you can use either jar or system property in Production Environment. It completely depends on how your environment is setup and is for the flexibility pruposes? Use whichever is handy ...
    Ideally, you WS application should run in a seperate JVM than your Coherence Nodes. In this scenario, your WS application is set as storage-disabled and your Coherence nodes will be set as storage-enabled and both WS and Coherence Nodes will be part of the Coherence cluster. There will be no syncing between WS application and Coherence Nodes if you are using distributed cache; all the data requests from the WS application will be served by the Coherence Nodes. But, if you are using Near Cache then the data syncing will depend on the invalidation strategy used by you in your cache configuration. Read more about near-cache scheme here: http://wiki.tangosol.com/display/COH35UG/near-scheme.
    In WLS 10.3.4, there is a integration of Coherence and you can create Coherence Cluster from the Admin Console and define various Coherence cluster nodes and the documentation is here (http://download.oracle.com/docs/cd/E17904_01/web.1111/e16517/coh_wls.htm). But if you are using any other version of Weblogic or any other container then you cannot start from Weblogic but you need to start them seperately. Also, you need to make sure that the Coherence Nodes with storage-enabled are started before the storage-disabled nodes.
    Hope this helps!
    Cheers,
    NJ

  • Transfer and coherence function with Labview.

    Please send me a Labview code with transfer function (gain vs frequency) and coherence function of 2 signals: stimulus signal (1024 pts) and response signal (1024 pts). Thanks.

    The Frequency Response Function (Mag-Phase).vi VI located in the Analyze>>Waveform Measurements palette returns the Coherence function. The attached example (LabVIEW 6.1) VI shows how it work (using a digital filter as unit-under-test).
    Note that the coherence is always equal to 1.0 (by definition) if you are not averaging.
    Attachments:
    Transfer_Function_and_Coherence.vi ‏78 KB

  • Wsrp and coherence web

    has anyone worked on the combination of WSRP and coherence ?is it possible?will it work..
    Thanks
    Edited by: goodboy626696 on Jul 27, 2009 1:17 PM

    Take a look at http://coherence.oracle.com/display/COH35UG/Using+Coherence+and+WebLogic+Portal.
    :Rob:
    Coherence Team

  • 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)?

  • Packet Loss on Xen and Coherence

    We are currently experiencing packet loss issues with Coherence 3.4.2 during the datagram test.
    Packet loss statistics are as follows:
    Rx from publisher: /10.96.67.169:9999
    elapsed: 149384ms
    packet size: 1468
    throughput: 66 MB/sec
    46889 packets/sec
    received: 7004519 of 8252377
    missing: 1247858
    success rate: 0.848788
    out of order: 0
    avg offset: 0
    gaps: 535018
    avg gap size: 2
    avg gap time: 0ms
    avg ack time: -1.0E-6ms; acks 0
    The Coherence implementation is running on a Xen VM.
    We see this happen for both Fully Virtual and Paravirtualized Guests.
    This problem does not happen on physical hardware.
    Here is the general sequence that we tried:
    1. After finding the problem on coherence, we tried to simulate similar results on 2 HVM xen systems and we did not find the problem there.
            a. These boxes were HVM guests.
            b. Were running kernel 2.6.18-164 and redhat 5.4
            c. These guests were running on Dom-0 kernel of 2.6.18-164.2.1el5xen
    2. We had 2 para virt machines on the same Dom-0 as above but they were redhat 5.2 so we ran the same test there and still we were running into problem.
    3. We upgraded the para virt machines to redhat 5.4 with latest patch rev and still problem was present.
    4. after this research found out that we need to disabled module ipv6 and that seems to fix the problem. After disabling IPv6 module ran some more tests between pl1rap704-beta and pl1rap706-beta. Results were performance improved but still packet loss.
    5. We converted 2 para virt guests to HVM guests (pl1rap704-beta and pl1rap705-beta) and ran the tests it was still having problem.
    6. Upgrade pl1rap704-beta and pl1rap705-beta to redhat release 5.4 and latest kernel rev and see if the problem is still there
    We haven't tried this on Oracle VM, but think that would be the next step to see if the problem persists there, although Oracle support indicates that Coherence is not officially supported on Oracle VM.
    We still see the packet loss issues and wonder if anyone has encountered this issue before and has a solution to it?

    Just saw your post.
    If still a problem.....send a PM to   Heather_VZ  she  has been very helpful to many people on many subjects
    Tom
    Freedom Essentials, QIP 7100 1,Bose SOLO TV Sound System,,QIP 7216 P2,M1424WR Rev F, iPad 2 WiFi,iPhone 5,TV SYST INFO Release 1.9.5 Build No. 17.45
    Data Object 39.45

  • 11g and Coherence (pre-requisite?, included?)

    We are planning to work with SOA Suite 11g for a mid scale project.
    From the download's site it looks like Weblogic + Coherence "package" is a pre-requisite.
    However we see licencing issues as we did not purchase any license for Coherence.
    Is Coherence a Formal Pre-Requisite for SOA Suite 11g and/or OSB (service bus) 11g ?
    Some people on forums suggest Coherence is "included" in SOA Suite. Would this be the case from the licensing point of view (i.e. licence for SOA Suite / OSB gives us the right to use Coherence without paying separately ?
    Last not least, can we install SOA Suite with Weblogic only (no Coherence), even if the download page indicates we should have the Weblogic + Coherence package in place ?
    Many thanks,
    CL.

    Hi
    1. I am not much familiar with Coherence License stuff. As far as I know, Coherence is used for Caching Framework and is part of the Weblogic Server and it may not have anything to do with SOA Stuff. BUT incase if internally SOA files uses Coherence APIs for Caching, then you may need this component also installed.
    2. YES, you can install WLS without coherence. Even though your installer has WLS + Coherence, at the time of installation of WLS, choose the option like Custom (instead of default Typical). In the following screens, you can UnCheck the boxes for Coherence (and its samples). So you get only WLS installed. On top of this install SOA. Create a SOA Domain. Start admin and soa servers. If they start fine without any errors referring coherence APIs, then you are good to go.
    Thanks
    Ravi Jegga

  • GoldenGate and DataGuard

    Hi,
    How do I integrate GoldenGate with DataGuard when there is failover / switchover..?
    What I mean is that it is not enough just to start the golden gate capture and datapump with the original parameters on the dr site...

    Have you looked at:
    Implementing GoldenGate for DataGuard fail overs (Doc ID 1195995.1) ?
    Good luck,
    -joe

  • J2EE 1.4 and coherence

    I heard that J2EE 1.4 standards require not to spawn threads and new WebSphere will not allow such. Wanted to now what is your plan to support this

    Nabil,
    I presume you are referring to the restrictions in the EJB specification (section 24.1.2), which are intended to accomplish several things, including ensuring portability and security. The restrictions do not apply to the containers, libraries and components that the EJB utilizes, for example the application server itself or a JDBC driver that communicates over a socket, nor do the restrictions apply to core classes of Java that you may utilize from the EJB, for example the java.lang.String class. Each of the listed rules in the specification has an associated purpose (explanation) attached to it to provide a context for the rule. For example:
    Rule: "An enterprise bean must not attempt to listen on a socket, accept connections on a socket, or
    use a socket for multicast."
    Explanation: "The EJB architecture allows an enterprise bean instance to be a network socket client, but it does not
    allow it to be a network server. Allowing the instance to become a network server would conflict with
    the basic function of the enterprise bean-- to serve the EJB clients."
    Rule: "The enterprise bean must not attempt to manage threads. The enterprise bean must not attempt
    to start, stop, suspend, or resume a thread; or to change a thread’s priority or name. The enterprise
    bean must not attempt to manage thread groups."
    Explanation: "These functions are reserved for the EJB Container. Allowing the enterprise bean to manage threads
    would decrease the Container’s ability to properly manage the runtime environment."
    Generally, what this means is that the EJB itself should not try to make assumptions about its environment (for portability) or work around limitations of the environment (security). The classes and libraries that an EJB uses by matter of course are not held to the same restrictions. As one example, java.lang.String violates at least three of the rules set forth for EJBs (including thread synchronization, native code use, and use of static fields), yet String is a legitimate class to use within an EJB. Similarly, JDBC drivers may be implemented using native code, and may communicate over sockets; Oracle’s JDBC drivers do both, for example.
    Since Coherence is supported on virtually all Java application servers and hardware/OS platforms, applications that use Coherence are further assured of their portability. Coherence does not take advantage of any vendor-specific libraries or features, and is completely server agnostic and built in pure Java. Coherence was carefully architected to use every resource sparingly and (as much as possible) asynchronously to facilitate the maximum scalable throughput.
    Coherence elegantly fills a gap in functionality that otherwise presents a nearly unsolvable puzzle -- how to safely and efficiently manage data in the application tier that may be 'expensive' to get from a persistent store, and particular for data that are used often, ensuring that the cluster will scale as well as possible.
    Regards,
    Gene

  • GoldenGate and Required MySQL Privileges

    Hi,
    Environment Details:
    MySQL Version 5.1.56-log
    GoldenGate Version 11.2.1.0.1
    Issue:
    We are replicating data from a MySQL instance containing two databases, db1 and db2. However, we are only replicating tables from db1. GoldenGate logs into the database using the user ggc which has the following MySQL grants:
    GRANT USAGE ON *.* TO 'ggc'@'localhost'
    GRANT SELECT ON `db1`.* TO 'ggc'@'localhost'
    The extract parameter file is as follows:
    EXTRACT E_LD_C
    SETENV (NLS_LANG = "AMERICAN_AMERICA.AL32UTF8")
    SOURCEDB ggc, USERID ggc
    EXTTRAIL ./dirdat/E_LD_oc/oc
    TRANLOGOPTIONS ALTLOGDEST /mysql/mysqllog/mysqlbin.index
    TABLE db1.*;
    After starting the extract it abends with the following message:
    2013-03-19 17:58:34 ERROR OGG-00146 VAM function VAMRead returned unexpected result: error 600 - VAM Client Report <CAUSE OF FAILURE : Failed to Query Metadata for Table : db1.test_tab AND Failed Queries Are: QUERY_FAILED_CHARSET_RETRIEVAL,QUERY_FAILED_SIGNED_INFO_RETRIEVAL,
    Looking at the MySQL query log one of these queries is:
    select character_set_name from information_schema.columns where table_schema='db2' and table_name='other_tab' and ordinal_position=7
    I suspect that GoldenGate is querying for metadata for tables it is not even replicating i.e., tables from db2, when encountering them in the binary log. Granting the following privilege resolves the issue:
    GRANT SELECT ON *.* TO 'ggc'@'localhost';
    However, for security reasons we only want to grant user ggc privileges to db1 not all the tables within the instance.
    Any help with the following issue would gratefully received.
    Thanks, Paul

    My understaning is that you can't grant access to the INFORMATION_SCHEMA directly. If you grant access to a user for a table then that user can query the entries for that table in the INFORMATION_SCHEMA database. Therefore if GoldenGate is trying to access data in the INFORMATION_SCHEMA database for a table that it has no access to then it will retrieve no rows. This means that if GoldenGate is querying the INFORMATION_SCHEMA database for every table that writes to the binary log it will fallover when it encounters a table it does not have SELECT access to which to me means it must be given the privilege SELECT ANY TABLE to work.
    Thanks, Paul

  • MapListener and Coherence and Java versions

    Hi,
    (1) On one of our testing environments, on linux, we are running coherence 3.7.1.7 on JVM Java 1.6u33 . We are using coherence*extend clients, and we do listen to updates in a cache through MapListeners. We have no issues on this configuration, and we consistently get onMapEvent calls for events.
    (2) When the same code is ported to another linux box, running 3.7.1.7 on JVM 1.6u06, we start to get onMapEvent calls for a while, but then it stops abruptly. We are able to verify the server cache getting updated properly, through a backing map listener on the server side. However the listeners on the coherence*extend are not sent notification.
    I understand that the (2) configuration is running JVM which is lower than the recommended version,but, When we downgraded JVM on (1) with 1.6u06, we still had consistent onMapEvent calls.
    My question is, does this kind of inconsistent behavior ring a bell to anybody over here ? It is hard to understand why the notifications would be inconsistent when the JVM is lower ... may be it is not associated with the JVM at all ? Can somebody throw some light on this please ?

    If it won't compile with VJ++, don't expect it to run with IE unless you've got a Sun plugin.
    As to writing parsers, what kind of grammar are you trying to parse?

  • GoldenGate and "Generic ODBC" target...

    Hi all,
    I believe I am looking for a Generic ODBC version of GoldenGate - but seem to be unable to locate it...
    I am able to find the likes of - "Oracle GoldenGate for Non Oracle Database v11.1.1.1.0 Media Pack for Microsoft Windows (32-bit)" - at edelivery.oracle.com
    But within there is no mention of "Generic ODBC"...
    Can someone please advise?
    Thanks in advance...
    Regards,
    Garry

    stevencallan wrote:
    Well, perhaps not and I may not be entirely correct.
    My answer is based on what is shown as being supported/certified via certification and software availability.
    Steve, you are correct. The documentation needs to be updated if it says that 'generic odbc' is still supported as a generic target. (But, for most target DB's -- other than oracle -- GG does use odbc to some extent.) Only specific databases (and specific database versions) are supported as both sources & targets by GoldenGate.
    Once upon a time (prior to Oracle's acquisition), there was a generic ODBC replicat. That has been de-supported & discontinued. (It wasn't really that well supported when it was available, so it was no great loss.) All of the current replicat implementations take into consideration the specific features, data type support & limitations of the target database.
    That being said, the functionality in 'replicat' is relatively independent of the target database implementation, since it IS a basic SQL client. That is, relative to "extract", which is very tightly coupled to the database implementation (by it's very nature of being a log reader). So if there is another database target that needs to be implemented & supported, it's a lot less development work than a new database source.
    So, do open a ticket if there's a currently unavailable DB that you require, including as many details as you can. The more requests there are, the more likely it is to be implemented. It may even be something that's already in the works.
    -Mike
    edit: though, just to be clear, I'm pretty sure OpenLink Virtuoso is not one of the new targets being worked on.
    Edited by: MikeN on Nov 28, 2011 10:31 PM

  • GoldenGate and Veridata Capacity Planning/sizing

    Hello,
    Are there any capacity planning guides available for Veridata and for GoldenGate?
    What are the pertinent metrics to gather to aid in capacity planning?
    Thanks,
    Mac McDermid
    Edited by: user13291419 on Oct 17, 2012 12:55 PM

    I faced below application error after I insert new connection with correct information of golden gate connection and data source connection and click finish.
    Application Error
    javax.faces.FacesException: Error calling action method of component with id form:next
    at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:74)
    at javax.faces.component.UICommand.broadcast(UICommand.java:106)
    at javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:90)
    at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:164)
    at org.apache.myfaces.lifecycle.LifecycleImpl.invokeApplication(LifecycleImpl.java:316)
    at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:86)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:106)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at com.goldengate.veridata.ui.filter.WelcomeTokenFilter.doFilter(WelcomeTokenFilter.java:61)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(ExtensionsFilter.java:92)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at com.goldengate.veridata.ui.filter.SessionUserFilter.doFilter(SessionUserFilter.java:115)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at com.goldengate.veridata.ui.filter.AjaxFilter.doFilter(AjaxFilter.java:66)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(ExtensionsFilter.java:122)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at com.goldengate.veridata.ui.filter.Utf8Filter.doFilter(Utf8Filter.java:28)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:563)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:879)
    at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
    at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
    at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
    at java.lang.Thread.run(Unknown Source)
    Caused by: javax.faces.el.EvaluationException: Exception while invoking expression #{addConnectionWizardUI.getNextStep}
    at org.apache.myfaces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:153)
    at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:63)
    ... 39 more
    Caused by: java.lang.NullPointerException
    at com.goldengate.veridata.entity.ConnectionComparisonFormat.(ConnectionComparisonFormat.java:13)
    at com.goldengate.veridata.entity.ConnectionDatatypeInfo.(ConnectionDatatypeInfo.java:63)
    at com.goldengate.veridata.entity.Connection.(Connection.java:84)
    at com.goldengate.veridata.dao.ConnectionDAOWebServices.findByName(ConnectionDAOWebServices.java:222)
    at com.goldengate.veridata.dao.ConnectionDAOWebServices.handleVersionControlInfo(ConnectionDAOWebServices.java:185)
    at com.goldengate.veridata.dao.ConnectionDAOWebServices.insert(ConnectionDAOWebServices.java:144)
    at com.goldengate.veridata.bu.ConnectionManagerImpl.insert(ConnectionManagerImpl.java:73)
    at com.goldengate.veridata.ui.AddConnectionWizardUI.createConnection(AddConnectionWizardUI.java:211)
    at com.goldengate.veridata.ui.AddConnectionWizardUI.getNextStep(AddConnectionWizardUI.java:120)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.apache.myfaces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:129)
    ... 40 more
    Your response is highly appreciated.
    Regards

  • ClassLoaders and Coherence

    Morning all,
    I've been playing with Coherence and Classloaders. I'm trying to start a Cluster in a single process of one Extend and 2 Storage nodes (basically for testing).
    I can get this to work : see CoherenceStarter code at the bottom, if I explicitly load Coherence in the URL Classloader.
    However, if I stick Coherence on the Classpath I suddenly get errors attached at the bottom - ie. Coherence is loading from the SystemClassPathLoader - not from the URL and hence they are colliding.
    So I've dug into the ClassLoader and, from my reading, I want a ParentLast (also called ChildFirst) classloader that is referred to by some of the AppServers.
    I've played with the findClass(String classname, boolean resolve) method, but I can't get this to work ( trying to force it to load everything beginning with "com." from the URL).
    Can anyone solve what should be a pretty simple problem.
    This would allow everyone to fire up a real cluster in their testing (and hence test all the Serialization / Comms / KeyAssoc etc. that local-only testing misses)
    and then run all their tests against it. At the moment I have a runner that loads the Test.jar / App.jar / Coherence.jar as URLs which is ugly.
    Note that the Builder/Factory stuff doesnt do what I want.
    Here's hoping! Andrew.
    public class CoherenceStarter {
    public static void main(String[] args) throws Exception {
    System.setProperty("tangosol.coherence.cacheconfig","extends.xml");
    System.setProperty("tangosol.coherence.clusterport", "1111");
    System.setProperty("tangosol.coherence.cluster", "anew1");
    System.setProperty("tangosol.coherence.log.level", "9");
    System.setProperty("tangosol.coherence.log", "stdout");
    System.setProperty("tangosol.coherence.distributed.localstorage","false");
    // Start an extend node.
    start();
    // Let the node startup.
    Thread.sleep(2000);
    System.setProperty("tangosol.coherence.distributed.localstorage","true");
    System.setProperty("tangosol.coherence.cacheconfig","server.xml");
    // Start a storage node
    start();
    Thread.sleep(2000);
    // Start another storage node.
    start();
    // Wait!
    Object lock = new Object();
    synchronized(lock) { lock.wait(); }
    private static void start() throws Exception {
    new URLClassLoader(new URL[] {new URL("file:/C:/awilson/dev/security/lib/coherence-3.5.1.p2.jar")},null).
    loadClass("com.tangosol.net.DefaultCacheServer").getMethod("startDaemon", null).invoke(null, null);
    2009-11-04 09:40:46.879/6.609 Oracle Coherence GE 3.5.1/461p2 <Error> (thread=Invocation:Management, member=3):
    java.io.IOException: Class initialization failed: java.lang.ClassCastException: com.tangosol.coherence.component.net.Member cannot be cast to com.tangosol.io.ExternalizableLite
         at com.tangosol.util.ExternalizableHelper.readExternalizableLite(ExternalizableHelper.java:1946)
         at com.tangosol.util.ExternalizableHelper.readObjectInternal(ExternalizableHelper.java:2273)
         at com.tangosol.util.ExternalizableHelper.readObject(ExternalizableHelper.java:2219)
         at com.tangosol.util.ExternalizableHelper.readObject(ExternalizableHelper.java:2198)
         at com.tangosol.coherence.component.net.management.Connector$Announce.readExternal(Connector.CDB:4)
         at com.tangosol.util.ExternalizableHelper.readExternalizableLite(ExternalizableHelper.java:1969)
         at com.tangosol.util.ExternalizableHelper.readObjectInternal(ExternalizableHelper.java:2273)
         at com.tangosol.util.ExternalizableHelper.readObject(ExternalizableHelper.java:2219)
         at com.tangosol.io.DefaultSerializer.deserialize(DefaultSerializer.java:60)
         at com.tangosol.coherence.component.util.daemon.queueProcessor.Service.readObject(Service.CDB:4)
         at com.tangosol.coherence.component.net.Message.readObject(Message.CDB:1)
         at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.InvocationService$InvocationRequest.read(InvocationService.CDB:8)
         at com.tangosol.coherence.component.util.daemon.queueProcessor.service.Grid.onNotify(Grid.CDB:123)
         at com.tangosol.coherence.component.util.Daemon.run(Daemon.CDB:42)
         at java.lang.Thread.run(Thread.java:619)
    Class: com.tangosol.coherence.component.net.Member
    ClassLoader: null
    ContextClassLoader: sun.misc.Launcher$AppClassLoader@df6ccd
         at com.tangosol.util.ExternalizableHelper.readExternalizableLite(ExternalizableHelper.java:1961)
         at com.tangosol.util.ExternalizableHelper.readObjectInternal(ExternalizableHelper.java:2273)
         at com.tangosol.util.ExternalizableHelper.readObject(ExternalizableHelper.java:2219)
         at com.tangosol.util.ExternalizableHelper.readObject(ExternalizableHelper.java:2198)
         at com.tangosol.coherence.component.net.management.Connector$Announce.readExternal(Connector.CDB:4)
         at com.tangosol.util.ExternalizableHelper.readExternalizableLite(ExternalizableHelper.java:1969)
         at com.tangosol.util.ExternalizableHelper.readObjectInternal(ExternalizableHelper.java:2273)
         at com.tangosol.util.ExternalizableHelper.readObject(ExternalizableHelper.java:2219)
         at com.tangosol.io.DefaultSerializer.deserialize(DefaultSerializer.java:60)
         at com.tangosol.coherence.component.util.daemon.queueProcessor.Service.readObject(Service.CDB:4)
         at com.tangosol.coherence.component.net.Message.readObject(Message.CDB:1)
         at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.InvocationService$InvocationRequest.read(InvocationService.CDB:8)
         at com.tangosol.coherence.component.util.daemon.queueProcessor.service.Grid.onNotify(Grid.CDB:123)
         at com.tangosol.coherence.component.util.Daemon.run(Daemon.CDB:42)
         at java.lang.Thread.run(Thread.java:619)

    Hi Andrew,
    I don't think there is any way with the URL class loader to avoid these issues if you put the coherence.jar on the process classpath.
    You have to put the coherence.jar into each url classloader only.
    I know, communication becomes a bit problematic after this, as in this case you can't link your test harness code against Coherence. You can only use classes in the parent classloader to communicate with the child classloaders.
    A great help with this could be if you used a scripting language, e.g. Groovy to write your code which does operations on the Cluster nodes, passed the Groovy code as a String to the appropriate Cluster node (e.g. by a ConcurrentLinkedQueue which is consumed by a thread with the context class loader set to the cluster nodes classloader), and compiled that String in the cluster node. Any object you returned must also be composed of classes which reside in the parent classloader.
    Also remember to use different override files in the classpath of the child nodes and not in the parent node if you want to control things like ports, or description, or any settings which need to differ on the three nodes, as system properties are shared.
    Best regards,
    Robert

  • SLF4J and Coherence ?

    Hi,
    I saw some posts regarding coherence and SLF4J. Does anyone know if this is supported or likely to be in the near future ?.
    Thanks
    Martin

    Hi,
    I saw some posts regarding coherence and SLF4J. Does anyone know if this is supported or likely to be in the near future ?.
    Thanks
    Martin

Maybe you are looking for

  • Table columns is larger than the page.

    Post Author: krutoj_pablo CA Forum: General Hi.I've developed the report and it seems that column in the table (not crosstab) i'm using is wider than the visible area of the page. I've tried to fix this problem by changing page setup (from portrait t

  • When i put my sim in my iPhone 4 it isn't recognized why and what can i do ?

    I recently got an Iphone 4 and know when i put my own sim in it (microsim) the phone is not recognizing  it and saying i  have no service why is this i can i solve it if so .

  • Webcache.xml is not rewritten

    We have been evaluating 9iAS,including the web cache, and found that our cacheing rules were being ignored. Eventually a co-worker pointed out the existence of $ORACLE_HOME/webcache/.webcache_tmp.xml. This proved to have the changes we had been makin

  • RCF Connection Error

    Hi Everyone, here i created and configured a RFC on DEV server for Remote end system(Production Sytem) and when i click on Connection Test then got following error. Logon                     Connection Error Error Details     Error when opening an RF

  • I downloaded a trial version of LR4. When I now try to purchase, I'm directed to purchase LR5

    I'm running Mac OS 10.68. Apparently LR5 only runs with 10.7 or better. I do not want to deal with upgrading the OS. Is it no longer possible to download LR 4?