Adding indexes with Extensible environment

#1 in the list of objectives for the Extensible environment is: "an application establishing the domain-specific cache index entry" on the page of common consistency: http://coherence.oracle.com/display/INC10/Extensible+Environments+-backgroundand + Motivation #.

However, without more information, it is somewhat misleading. Attempt to add index inside the workspace names Manager of an extensible environment leads to this error:

2012-02-07 12:46:13.251 [ERROR] consistency: 2012-02-07 12:46:13.251/9.489 OracleCoherence GE 3.6.1.0 < error > (thread = main Member, = n/a): an attempt to recursively loading and a Configuration of Cache coherence process has occurred. This is usually caused by accessing a Service (via the CacheFactory) or a NamespaceContentHandler, an ElementContentHandler or AttributeContentHandler NamedCache. Class: com. Oracle.Coherence.Environment.extensible.ExtensibleEnvironment

I don't know what approach would allow this use case for the addition of index. I think in a separate thread that sleeps for a while and add the index more later from spawning.

I like to communicate with people in consistency common to this subject to update their wiki a little, but I don't know how to get their hands on them. Anyone know?

Hello

Yes, the incubator is a little lack of documentation. You can not add indexes in the namespace manager as it is for the handling of reading in the cache configuration file and to the point that your handler is called without caches have been created - in fact factory cache is always being configured.

There are a few ways to do this, a solution to this...

First write a class EventProcessor like that...

public class CacheIndexAdder implements EventProcessor {

    @Override
    public void process(EventDispatcher eventDispatcher, NamedCacheStorageRealizedEvent event) {
        ExecutorService executorService = eventDispatcher.getEnvironment().getResource(ExecutorService.class);
        executorService.submit(new IndexJob(eventDispatcher, event));
    }

    private static class IndexJob implements Runnable {

        private EventDispatcher eventDispatcher;
        private NamedCacheStorageRealizedEvent event;

        private IndexWrapJob(EventDispatcher eventDispatcher, NamedCacheStorageRealizedEvent event) {
            this.eventDispatcher = eventDispatcher;
            this.event = event;
        }

        @Override
        public void run() {
            ConfigurableCacheFactory cacheFactory = (ConfigurableCacheFactory)eventDispatcher.getEnvironment();
            String cacheName = event.getCacheName();
            NamedCache cache = cacheFactory.ensureCache(cacheName, null);

            // Add the indexes to the cache...

        }
    }
}

Then a namespace like this Manager...

public class IndexAdderContentHandler implements ElementContentHandler {

    @Override
    public Object onElement(ConfigurationContext configurationContext, QualifiedName qualifiedName, XmlElement xmlElement) throws ConfigurationException {
        EventDispatcher eventDispatcher = configurationContext.getEnvironment().getResource(EventDispatcher.class);
        eventDispatcher.registerEventProcessor(NamedCacheStorageRealizedEventFilter.INSTANCE, new CacheIndexAdder());
        return null;
    }

}

Then, in your configuration just put the XML element that you have registered the namespace handler. Of course, you can add more element XML configuration to configure the Adder to index in the onElement method.

What is happening now is that when the configuration is read that your IndexAdderContentHandler is called whenever the relevant XML element is encountered and saves the EventProcessor CacheIndexAdder with the EventDispatcher. Every time that a cache is created the CacheIndexAdder then gets and callback method to process event. The CacheIndexAdder uses the ExecutorService environment to actually make the index adding on another Thread that we do not want delay event processing in the EventDispatcher.

JK

Tags: Fusion Middleware

Similar Questions

  • My website looks fine in other browsers, but on firefox it arrives as an index with the title first and on the second line it says go to the content. This can be corrected?

    When I look at my site it loads as an index with the heading on the top line and then a link saying "go to content" and then corresponds to the navigation in the chips. I downloaded the latest version of firefox and this did not improve the situation. The site looks very well in other browsers.

    Make sure that you do not block the CSS files on this page.

    Reload Web pages, and ignore the cache.

    • Hold SHIFT and click reload.
    • Press 'Ctrl + F5' or 'Ctrl + Shift + R' (Windows, Linux)
    • Press 'Cmd + Shift + R' (MAC)

    Start Firefox in Firefox to solve the issues in Safe Mode to check if one of the extensions of the origin of the problem (switch to the DEFAULT theme: Firefox (Tools) > Add-ons > appearance/themes).

  • Problem of indexing with Google Drive sync folder

    Indexing is working in all areas on my Windows 7 computer, except for my folder of Google Sync Drive.  I have already ruled out a problem with google reader.  No there.  Seems to be an indexing problem associated with this folder.  Any suggestions to fix this problem of indexing?

    Hello

    Welcome to the Microsoft Community Forums. I understand that you are facing problem of indexing with Google Sync Drive folder.

    You did changes to the computer before the show?

    I suggest the link and follow the steps in troubleshooting.

    Improve Windows searches using the index: frequently asked questions.

    http://Windows.Microsoft.com/en-in/Windows7/improve-Windows-searches-using-the-index-frequently-asked-questions

    Refer to how to solve problems with search and indexing?

    If the problem persists after you perform the steps in troubleshooting from the link above and if you have problem in Windows, please do not hesitate to answer us, we will be happy to help you.

    Thank you.

  • explain query plan uses no unique index with where condition

    Hi all

    I use in the 10.2.0.5 oracle database Enterprise edition 64-bit on 64-bit windows server 2008.

    I'm following this tutorial on my own table

    Guide to understanding Oracle QUERY PLAN - 10 minutes

    my questions are below

    Analyze table LIB_CLASSIFICATIONS compute statistics;
    explain plan for  SELECT class_id  FROM lib_classifications WHERE class_no = '538' ;
    select * from table(dbms_xplan.display);
    

    the result is less than

    Hash value of plan: 3022072076

    -----------------------------------------------------------------------------------------

    | ID | Operation | Name                | Lines | Bytes | Cost (% CPU). Time |

    -----------------------------------------------------------------------------------------

    |   0 | SELECT STATEMENT |                     |     1.    10.     5 (0) | 00:00:01 |

    |*  1 |  TABLE ACCESS FULL | LIB_CLASSIFICATIONS |     1.    10.     5 (0) | 00:00:01 |

    -----------------------------------------------------------------------------------------

    Information of predicates (identified by the operation identity card):

    ---------------------------------------------------

    1 - filter ("CLASS_NO" = '538')

    DESC LIB_CLASSIFICATIONS

    Name of Type Null

    ----------------- -------- -------------

    CLASS_ID NOT NULL NUMBER (10)

    CLASS_DESC VARCHAR2 (50)

    REMARKS VARCHAR2 (250)

    CLASS_NO VARCHAR2 (20)

    CLASS_TYPE VARCHAR2 (10)

    CREATE_USER VARCHAR2 (10)

    MODIFY_USER VARCHAR2 (10)

    CREATE_DATE DATE

    MODIFY_DATE DATE

    CLASS_CATEGORY_ID VARCHAR2 (10)

    class_id has a primary key.

    now when I remove the condition where the query, the result is lower;

    Analyze table LIB_CLASSIFICATIONS compute statistics;
    explain plan for  SELECT class_id  FROM lib_classifications ;
    select * from table(dbms_xplan.display);
    

    the result is less than

    Hash value of plan: 262704430

    ------------------------------------------------------------------------------------

    | ID | Operation | Name | Lines | Bytes | Cost (% CPU). Time |

    ------------------------------------------------------------------------------------

    |   0 | SELECT STATEMENT |             |  1558.  6232.     2 (0) | 00:00:01 |

    |   1.  FULL RESTRICTED INDEX SCAN FAST | SYS_C005653 |  1558.  6232.     2 (0) | 00:00:01 |

    ------------------------------------------------------------------------------------

    now it's using indexes with INDEX FAST FULL SCAN.

    I need the index using the WHERE condition as well.

    How to do this?

    Thank you.

    you have indexes on the column class_id not on class_no column how u would expect index to use when there is no index on the column class_no

  • Performance problem of creating index with LOB/CLOB content

    Hello

    I have a problem with indexing performance with a table containing columns of text
    also a clob and a lob column.

    Indexing with 20,000 lines takes about 1 hour on 11.2.0.4 with the last batch of patches 12 on
    win x 64.

    on a 11.2.0.1, the process is done in a few minutes.

    So what can I do to find out where is the problem?

    I use filter auto and basic lexer.
    Operating system is W 2008 R2 SP and latest patches. OS lang is English.
    DB is installed with AL32UTF8 and German and English language packs.

    also watched and ctx_user_index_errors and pending and there is no error or waiting in lines.
    After the index is created, everything works fine. during the creation of index no other user is connected to the database.

    so why 11.2.0.1 is so much faster than 11.2.0.4?
    some advice for me?

    Thank you!

    Hello

    so I solved all my problems.

    So I made two changes:

    1. I declared the variable theNotiz2 for recording the output for the raw text of the column NOTIZ (is a clob), add the output to the Out-Clob parameter

    2. I used the same variable for the--> this blob field caused an error with line with lob is not locked... so I said a second variable for this and that solved the problem.

    normally, I think it should work with 1 variable... but is an acceptable workaround.

    Performance now is OK because the procedure, I can set on which the documents I want to do a search or not.

    Second thing, but has nothing to do with Oracle: my frontend application makes a ZIP for each insert in a column lob and if the ctxhx does not index the content, the MDC, and before calling the conversion of plain text, so I have to make a decompression of the blob...

    so for now, all problems solved. Thank you for your support.

  • stacking of several html5 as "div backgrounds" videos sent behind in Z-index with content before

    The best example I can give you is www.greygoose.com.

    The same way they have their articles on their stacked homepage, pictures sent on the z index with content in the face, I want to achieve the same with html5 video instead of a fixed image several 'objects '. I know how to include html5 videos and could easily stack on top of each other, but his envoys back and writes the content before and now have coordinated regardless of the width of the window (width = 100%) or zoom in the browser of the user (if its more or less than 100%). An example of 4 would be perfect and even better if it could include the "floating" footer navigation (which of course has a fixed = position; bottom = 0 and left = 0 of a positive Z-index), but I'm also interested him growing as it does when it reaches the bottom of the page.

    Thanks for the ideas, pointers, helps and of course answers

    Here you will see a number of tutorials that can help you http://devfloat.net/jquery-parallax-scrolling-tutorials/

    Another example brought pure CSS Parallax demo by Keith Clark with the tutorial here Pure CSS Parallax websites by Keith Clark

    Otherwise, Google the topic.

  • RH10 HTML &gt; Webhelp &gt; elements of Index with multiple entries are not displayed in IE9

    When I click on an element of Webhelp Index with entries multile, nothing happens. I had this problem with HTML RH8 too.  I tried to disable the Popup blocker, but that does not solve it.

    Can someone suggest a solution to this problem?

    Hi Karen,.

    Thanks for the workaround. Unfortunately, it has not worked for IE9 browser.

    Best regards

    Paul

  • Create indexes with NOLOGGING option

    Hello

    Can you please provide solution on the following scenario?

    If I create indexes with NOLOGGING Tablespace that is created with the LOGGING option, option can you please let me know what are the effects on the database?

    If I create indexes using NOLOGGING on Tables that are created with the LOGGING option, can you please let me know that it is to increase performance during the creation / rebuild indexes?

    Thank you

    Published by: user12088323 on December 28, 2010 12:45

    Published by: user12088323 on December 28, 2010 12:47

    user12088323 wrote:
    The database is in log mode archive. I would like to create indexes with NOLOGGING option on the tables to increase performance. The tables are created with the LOGGING option. Can you please let me know it's to create a bad effect on the database? If so, please explain.

    Thank you

    Published by: user12088323 on December 28, 2010 16:37

    NOLOGGING will cease to produce data AGAIN... for which you want to execute the instructions.
    Nothing wrong... it is created by ORACLE ;-)

    read this and cross with your process. You can do it with nologging option.

    http://www.Oracle.com/technetwork/database/RDB/0804-NOLOGGING-option-130004.PDF

    hope you understood

  • Diff bet rebuilding indexes with NOLOGGING and UNRECOVERABLE

    Hello

    What would you please tell me what is the difference beterrn rebuilding of indexes with NOLOGGING and UNRECOVERABLE.

    Thank you

    Meaning remains the same. UNRECOVERABLE has been deprecated (it is there only for backward compatibility) and he was replaced by NOLOGGING.

    Kind regards
    S.K.

  • rebuild indexes with NOLOGGING

    I like to read

    http://richardfoote.files.WordPress.com/2007/12/index-internals-rebuilding-the-truth.PDF

    and he says

    'Reconstructions of Index generate massive amounts of acetate to redo.

    which is a point just, but because we can do it with NOLOGGING, why would you ever rebuild an index with a RECORD? I mean, we can always rebuild using the table, even if our database crashed. So we should always do with NOLOGGING, and point Richard becomes rather redundant, isn't?

    I mean, Richard knows a lot more than me and I am in no way challenge his authority, I just don't see why we worry index generating a lot of when we can easily put out of service.

    Thank you

    Among other things, think about what happens if you have a recovery site after a disaster and you are using DataGuard to maintain the previous day. This will require that all elementary operations are recorded and thus eliminate your ability to make reconstructions NOLOGGING indices on the main machine.

    Justin

  • Limits of the section indexing with alphabet path group, I have

    Hello

    I have created context of text oracle of indexing with the section of trail group and was trying to retrieve an element using the slot request, but he did not give me any output

    Select / * + FIRST_ROWS * / rowid, abccolumn, xyz column, efgcolumn,.
    table xyz
    where contains (xyzcolumn, ' I INPATH (/ has: xyz / b:abc / c:efg / d: hij)', 1) > 0)

    but with the same query instead of I have if I replace with O, I get the result.
    I wanted to know the meaning of I, as I was to get all the other columns according to the search criteria.
    There are only 2 items I or O in this node.
    o I'm able to recover so wanted to know how I can recover with I

    Your XML file is not valid - you did not declare namespace "cf" and "" at the end.

    I corrected the "cf" to "ab" in the following unit test that works perfectly for the 'I' and 'o'.

    Given the number of typos in that you have posted so far, I am sure that your problem is down to typo of 99.9%. If you can give me a complete testcase - as below - I'll look at him. I'm not going to spend more time on it with only partial information.

    drop table abc;
    
    create table abc(id number, pqr xmltype);
    
    insert into abc values (1, '
    
    
    
    
    12345678
    
    I
    2004-07-14
    
    abc
    
    abc
    
    
    16:13:03Z
    
    
    
    ');
    
    insert into abc values (2, '
    
    
    
    
    12345678
    
    O
    2004-07-14
    
    abc
    
    abc
    
    
    16:13:03Z
    
    
    
    ');
    
    begin
    ctx_ddl.drop_section_group('xyz_path_group');
    end;
    /
    begin
    ctx_ddl.drop_preference('xyz_word_PREF');
    end;
    /
    begin
    ctx_ddl.drop_preference('xyz_lexer_PREF1');
    end;
    /
    begin
    ctx_ddl.create_section_group('xyz_path_group','PATH_SECTION_GROUP');
    end;
    /
    begin
    ctx_ddl.create_preference('xyz_word_PREF','BASIC_WORDLIST');
    ctx_ddl.set_attribute('xyz_word_PREF','SUBSTRING_INDEX','TRUE');
    ctx_ddl.set_attribute('xyz_word_PREF','PREFIX_INDEX','YES');
    end;
    /
    
    begin
    ctx_ddl.create_preference('xyz_lexer_pref1','BASIC_LEXER');
    ctx_ddl.set_attribute('xyz_word_PREF','WILDCARD_MAXTERMS','15000');
    end;
    /
    
    create index xyz on abc(pqr) indextype is ctxsys.context parameters
    ('datastore ctxsys.direct_datastore wordlist xyz_word_PREF FILTER ctxsys.null_filter lexer xyz_lexer_pref1
    sync(on commit)SECTION GROUP xyz_path_group MEMORY 500M stoplist ctxsys.empty_stoplist');
    
    select id from abc where contains (pqr, 'O inpath (/ab:IncidentReportGroup/ab:IncidentReport/ext:DocumentDescriptiveMetadata/j:DocumentTypeText)') > 0;
    select id from abc where contains (pqr, 'I inpath (/ab:IncidentReportGroup/ab:IncidentReport/ext:DocumentDescriptiveMetadata/j:DocumentTypeText)') > 0;
    

    Published by: Rakotondravelo on May 20, 2009 13:49

  • What is the right time to use the index with force?

    I have an EMPLOYEE table.  I join with the ROLE, and it has only about 200 distinct values on column EMPLOYEE. EMPLOYEE_TYPE_ID.

    Select / * + INDEX (an i_employee_type_id) * / b.SID as EMP_NAME, b.role_cd in the ROLE

    Of

    EMPLOYEE,

    B ROLE

    where

    a.EMPLOYEE_TYPE_ID = b.EMPLOYEE_TYPE_ID

    AND a.EFFECTIVE_END_TS > = systimestamp;

    Is it a good idea to use the index?  .. Or let the full table scan.

    SQL > select distinct EMPLOYEE_TYPE_ID of the EMPLOYEE;

    238 selected lines.

    If you don't know it will help not to use.

    Personally, I found several SQLs with index finger tips (written by programmers thinking index access is ALWAYS GOOD) end up harming performance. Oracle made a reading diluvium full table scan, single index reads as follows, according to the % of the returned array it is actually faster to do a full table scan. The optimizer did a great job to determine this.

    If you think there are cardinality estimation problems, and the optimizer expects a large number of lines when there are actually few being returned, in THIS case a suspicion was justified. Even so, in this case, I prefer that oracle manages the flag itself.

    You can do this by running the SQL tuning advisor. In fact, it will trigger the optimizer checks that the estimates are turned off and it will create a profile for you. (A profile is actually a stored set of advice that set the execution plan for you). If at the point where the underlying data changes significantly and profile ends up hurting performance, you do not need to touch the code like you would with manually added notes, you can just disable or delete the profile and let the optimizer re - analyze the statement.

    Concerning

    EDIT: In case of small tables, it is preferable to just cache the whole table in the POOL to KEEP and let oracle scan if necessary.

    Edit2: With the notable exception of index fast full scans, which are diluvium index readings. But they are only relevant when the request is quite satisfied by the index and has no need to visit the table.

  • OfficeJet Pro 8620: Question of impression WYSIWYG - alt - ñ characters printed in index with Windows 10

    Right out of the gate, I see 10 Windows isn't an option of operating system for the advice of the forum.  I have upgraded to Windows 10, bought a new HP OfficeJet Pro 8620 for its digitization, fax features.  I'm doing some legal work and have lawyers and clients who have Spanish names - I use "n" quite often.  This character is printed in the index, what's not worked for me.

    I noticed the same thing happening with my color HP LaserJet 200 M251.  When I choose printers, the color laserjet printer gives me a PCL driver option and it solves the problem.  There is no option with the OfficeJet Pro 8620.  I downloaded and installed the latest updates of pilot on both printers and it is always the case.  I feel like it is a bug of Windows 10 - someone ' one knows how to fix this?

    It's the police, my default is an old TrueType font supplied with my first HP LaserJet printer: CGTimes.  I think it is bolder and sharper than his nearest police, Times New Roman.  I'll have to give up CGTimes.  Thank you for your help.

  • Adding space with bigger hard drives with 3WARE 9650SE RAID

    My original installation of Windows 7 is on a RAID 10 set up using 4 640 GB drives on a 3Ware 9650SE RAID card.  I replaced the drives one at a time with 1 TB drives, leaving reconstruction table each time before adding another.   Now that all 4 are in place, I would have a little less than 2 TB of space, but it does not appear.  Win7 is installed on a 200 GB partition, with the rest of the disk space showing that GB 972 yet (that I use for file storage).   Any thoughts on how to extend this option to use all the available space under the name more storage RAID 2?  I does not appear under management of the reader and does not help the 3DM 2 with resizing tool.  This has worked well for the RAID migration when on the SATAs motherboard, but it's another controller.   I would prefer not to have to reload Windows to use the extra space.

    Hello

    The question you posted would be better suited in the TechNet Forums. I would recommend posting your query in the link below.

    http://social.technet.Microsoft.com/forums/en-us/w7itproinstall/threads

    Hope this information helps.

  • Identify the index with emphasis in listfield custom

    I'm working with a custom listfield. I would like to know the index of the row that has focus, access from a menu on the screen for customization possible highlight.

    I thought it would be ListField.getSelectedIndex () but it seems that a line is selected only when you click it (or switch to selection mode).

    It doesn't seem to be a simple, API unless I'm missing something?

    Tom

    ListField.getSelectedIndex () returns the index in line with development,-1 otherwise.

    Do you have the code examples to provide?

Maybe you are looking for

  • How can I get Thunderbird to switch to a new tab immediately as I can with Firefox?

    Everytime I open a new tab in Thunderbird, no matter how I do it (menu, double click, etc), it opens the content in a new tab, but keeps the focus on the current tab. How can I get Thunderbird to move immediately to a new tab when I opened a? It is q

  • El Capitan over 6 years MacBook Pro?

    My wife has a MacBook Pro bought in the summer 2010 under OS X 10.6.8 Snow Leopard. The designation of the model MacBook Pro6, 2 and it has a two-core 2.66 GHz i7 with 4 GB memory DDR3 1067 MHz. I think I saw at one time or another as a upgrade to El

  • I can't get a banner to show, but the banner tabs still work

    My home page has a banner on the top, which includes tabs for support, webmail, contact us, etc. The banner area is empty, but because I know where are the tabs in the banner I can always use them. I had the same problem on my old XP laptop. I also h

  • Update of microsoft research takes time (up to 30-60 min)

    I have windows xp sp3 and when I search for updates for the last 2 months are taking for a long time. I tried the fix without success.

  • IN BRANCH, NOT CHARGING problem

    Hello. my laptop does not load. It says PLUGGED IN, NO charging CURRENT. I thought it was the batterys foult but replace it with a new one, but still the same problem. Help, please