Why should avoid OLTP compression on tables with massive update/insert?

Dear expert,
We are planning oracle OLTP compression on a IS-U system, could you tell me
Why should avoid OLTP compression on tables with massive update/insert?
What kind of impact on the performance in the worst case?
Best regards,
Kate

Hi
When updating compressed data Oracle has to read it, uncompress it and update it.
The compression is then performed again later asynchronously. This does require a lot more CPU than for a simple update.
An other drawback is that compression on highly modified tables will generate a major increase in redo / undo log generation. I've experienced it on an DB where RFC tables where by mistake compressed, the redo increase was over 15%.
Check the remark at the end of  Jonathan Lewis post.
Regards
http://allthingsoracle.com/compression-in-oracle-part-3-oltp-compression/
Possibly this is all part of the trade-off that helps to explain why Oracle doesn't end up compressing the last few rows that get inserted into the block.
The effect can be investigated fairly easily by inserting about 250 rows into the empty table - we see Oracle inserting 90 rows, then generating a lot of undo and redo as it compresses those 90 rows; then we insert another 40 rows, then generate a lot of undo and redo compressing the 130 rows. Ultimately, by the time the block is full we have processed the first 90 rows into the undo and redo four or five times.

Similar Messages

  • Issues in Table with Multi-Row Insert

    I have created a master detail screens using jheadstart on 2 separate pages, Master in the Form layout and detail in the Table Layout with multi-row insert, update and delete flags ON. Have set the New Rows count = 2.
    Issue 1
    If I try to delete any existing rows, it gives error for new rows saying value is required for the mandatory fields. It should just ignore the new rows if I have not updated any values for any attributes in the those row(As it does for non Master-Detail Table layout). I guess this might be happening because the jheadstart code is setting the foreign key for new rows the detail, but not resetting the status of the rows back to INITIALIZED.
    I also noticed that the create() of underlying EO is getting called for those blank rows when I click on 'Save' button, even if I have not changed any data in those rows.
    Issue 2
    When I try to select the new rows also for deletion, I am getting a '500 Internal Server Error' with following stack trace... This is also happening for normal (non Master-Detail) Table layout.
    java.lang.IllegalStateException: AdfFacesContext was already released or had never been attached.     at oracle.adf.view.faces.context.AdfFacesContext.release(AdfFacesContext.java:342)     at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:253)     at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:87)
    Issue 3
    I have put some validation code in the validate() method in the MyEntityImpl.java class.
    The validate method seems tobe getting called lots of times, in my case 20 times, where the new rows are just 2.
    Environment:
    Jdeveloper 10.1.3, JHeadStart 10.1.3 build 78, Windows XP
    thanks

    Thanks for the reply.
    Issue 1:
    What I have observed that in case of multi-row select enabled tables, the blank rows do not have any data. This is because the EO's create() method is called only when we post the data using 'Save' button. Thus the Foreign Keys are also not setup. This is a correct behavior since create() and FK setups etc should get done only if the user has inputted any value in the new rows and thus intend to insert new data into the table.
    I am able to find the exact cause of this issue. It is happening because in the details table, I have a column which needs tobe shown as checkbox. Since we can only bind checkbox to an Boolean attribute in VO, I have created a transient attribute of type Boolean, which basically calls the getter/setter of actual attribute doing the String "Y"/"N" to true/false conversion. Here is code for the transient attribute getter/setter
    public Boolean getDisplayOnWebBoolean() {
    return "Y".equals(getDisplayOnWeb()) ? Boolean.TRUE : Boolean.FALSE;
    public void setDisplayOnWebBoolean(Boolean value) {
    if(Boolean.TRUE.equals(value))
    setDisplayOnWeb("Y");
    else
    setDisplayOnWeb("N");
    Now when I click on the "Save" button, the setter for the boolean field is getting called with the value = false and this is resulting into the row being maked as dirty and thus the validation for the required attributes is getting executed and failing.
    Issue 2:
    Confirmed that correct filter-mapping entries are present in the web.xml.
    Now when I select the new blank rows for deletion and click save, following exception is thrown:
    java.lang.ClassCastException: oracle.jheadstart.controller.jsf.bean.NewTableRowBean at oracle.jheadstart.controller.jsf.bean.JhsCollectionModel.getRowsToRemove(JhsCollectionModel.java:412) at oracle.jheadstart.controller.jsf.bean.JhsCollectionModel.doModelUpdate(JhsCollectionModel.java:604) at oracle.jheadstart.controller.jsf.lifecycle.JhsPageLifecycle.processModelUpdaters(JhsPageLifecycle.java:541) at oracle.jheadstart.controller.jsf.lifecycle.JhsPageLifecycle.validateModelUpdates(JhsPageLifecycle.java:571)
    thanks - rutwik

  • [ADF BC | ADF Faces] Updating a table with values updated in transaction

    Summary: A table is based on a view with a bind variable. Based on some action, I update rows in the view so that they no longer satisfy the query. How do I update the table to reflect this?
    I have an ADF Faces page with a multi-select table component on it, mapped to an ADF Business Components view object. The view object has a bind variable (:Status), which is used in the query to only retrieve rows with a specific status.
    The user selects rows in the table that should have their status changed, and then hits a button to perform the action. In the backing bean for the page, the button click is processed and the selected rows are updated to a different status. At this point the transaction is not committed.
    Changing the status of these rows now means that they no longer match the where clause of the view object, yet they still appear in the table.
    My question is, how can I update the table so that rows which don't match the where clause are removed?
    This is a simplified version of the problem I am working on - this needs to work when rows that aren't in the table are being updated so that they now MATCH the where clause and rows may also be added or completely removed.

    Quite an interesting little problem....
    I have created a simple test case to illustrate your scenario - perhaps Steve M could comment...
    My scenario:
    1). create an EO based on the HR.EMPLOYEES table
    2). create an updatable VO based upon the aforementioned EO. Add "COMMISSION_PCT IS NULL" to the where clause.
    3). Add the VO to an app module as usual.
    4). Create an ADF Faces page by dropping the VO from the data control as an ADF table. Show only first name, last name, and commission pct.
    5). Add a command button to the page so I can call various code from the backing bean.
    Now, when I update the commision for the first record to ".1" and press the submit button (the one in the table actions facet), the update "takes" - I assume that it's just in the EO cache at this point. The record still shows on the screen, even though it no longer meets the where clause criteria.
    When I add some code to the command button (#5) to perform a commit - the record STILL shows on the screen after committing to the DB. I can make the record disappear by either (in the same backing-bean method that does the commit)
    a). Re-execute the iterator after the commit
    b). Call "clearVOCaches" on the application module (forces the iterator to re-execute)
    I even tried programmatically adding the where clause back in (via addWhereClause) and re-executing the iterator - no go. I suspect that the only way to do this would be to post the changes to the DB (without committing them) and then re-execute the query. This, however, would be a killer from a scalability perspective.
    John

  • Af: table with dialog while insert

    hi experts,
    am using jdev 11.1.1.5.0
    my usecase,
    i want to show a datacontrol as af:table.
    so i drag drop as table.
    here give luk.
    <af:table> appear like this
                  top of the table tool bar ---  these are available. Insertbutton  Commitbutton   Deletebutton
    column1 ||   column 2      column n
      data1   ||    data2           Entry Complete command button  - Each row has this button.
      data3   ||    data4           Entry Complete command button  - Each row has this button.
    <af:table>i want to do. like this.
    if i click insert button means one dialog wants to open in that dialog i want enter the all those details of table and save all those deatils in that area.
    and save datas is to be display be in af: table which is exist. (as shown above).
    important thing:
    usually if i click insert button it provide a empty row for the user in my af:table. //this also restricted and i dont want like this.
    usually if give a cursor to any of the column in af:table make some edit operation //and this also restricted and i dont want like this.
    instead of this.
    i want like this as i said ealier.
    if i click insert button means one dialog wants to open in that dialog i want enter the all those details of table and save all those details in that area.
    another thing:
    as i said earlier top table hold af:table delete operation presents.
    if i press delete button row level data in af:table should be deleted.
    simple ,
    insertion of af:table should be handled in af:dialog.
    deletion of af:table should be handled in usual.
    i hope u all understud.

    thankz for instant reply,
    insert operation not performs . here something i wnet wrong pls correct me,
    here want i did means.
    step : i drag drop the datacontrol gllvlaccounts1 as af: table and drag drop insert and delete operation as revalent to that
    step2: insert operation code is registered in bean.
    step3: while insert operation for show the dialog. for this reason. i use popupbehavoiur n popup n af:dialog.
    step4: in that dialog i drag n gllvlaccounts1 as af:panelformlayout in there is place commit operation.
    step5: while running jspx page af:table appears, i select a row press insert operation. the dialog appears
    with that row data. i can get empty form for insertion.
    this my code while clicking insertion operation.
    <af:commandButton text="Insert"
            disabled="#{!bindings.CreateInsert6.enabled}"
            binding="#{pageFlowScope.managedbean_GeneralLedger.cb22}"
            id="cb22"
            action="#{pageFlowScope.managedbean_GeneralLedger.cb22_action2}" >
             <af:showPopupBehavior popupId="p2"/>
             </af:commandButton>
             <af:popup binding="#{pageFlowScope.managedbean_GeneralLedger.p2}"
                                 id="p2">
             <af:dialog binding="#{pageFlowScope.managedbean_GeneralLedger.d3}"
                          id="d3" type="cancel">
              <af:panelFormLayout binding="#{pageFlowScope.managedbean_GeneralLedger.pfl1}"
                                      id="pfl1">
                <af:inputListOfValues id="inputListOfValues1"
                           popupTitle="Search and Select: #{bindings.GlalPlant.hints.label}"
                                                          value="#{bindings.GlalPlant.inputValue}"
                                                          label="#{bindings.GlalPlant.hints.label}"
                                                          model="#{bindings.GlalPlant.listOfValuesModel}"
                                                          required="#{bindings.GlalPlant.hints.mandatory}"
                                                          columns="#{bindings.GlalPlant.hints.displayWidth}"
                                                          shortDesc="#{bindings.GlalPlant.hints.tooltip}"
                                                          binding="#{pageFlowScope.managedbean_GeneralLedger.inputListOfValues1}">
                                      <f:validator binding="#{bindings.GlalPlant.validator}"/>
                                    </af:inputListOfValues>
                                    <af:inputText value="#{bindings.GlalPlantDesc.inputValue}"
                                                  label="#{bindings.GlalPlantDesc.hints.label}"
                                                  required="#{bindings.GlalPlantDesc.hints.mandatory}"
                                                  columns="#{bindings.GlalPlantDesc.hints.displayWidth}"
                                                  maximumLength="#{bindings.GlalPlantDesc.hints.precision}"
                                                  shortDesc="#{bindings.GlalPlantDesc.hints.tooltip}"
                                                  partialTriggers="glalPlantId"
                                                  binding="#{pageFlowScope.managedbean_GeneralLedger.it38}"
                                                  id="it38">
                                      <f:validator binding="#{bindings.GlalPlantDesc.validator}"/>
                                    </af:inputText>
                                    <af:inputListOfValues id="inputListOfValues2"
                                                          popupTitle="Search and Select: #{bindings.GlalLvl1.hints.label}"
                                                          value="#{bindings.GlalLvl1.inputValue}"
                                                          label="#{bindings.GlalLvl1.hints.label}"
                                                          model="#{bindings.GlalLvl1.listOfValuesModel}"
                                                          required="#{bindings.GlalLvl1.hints.mandatory}"
                                                          columns="#{bindings.GlalLvl1.hints.displayWidth}"
                                                          shortDesc="#{bindings.GlalLvl1.hints.tooltip}"
                                                          binding="#{pageFlowScope.managedbean_GeneralLedger.inputListOfValues2}">
                                      <f:validator binding="#{bindings.GlalLvl1.validator}"/>
                                    </af:inputListOfValues>
                                    <af:inputText value="#{bindings.GlalLvl1Desc.inputValue}"
                                                  label="#{bindings.GlalLvl1Desc.hints.label}"
                                                  required="#{bindings.GlalLvl1Desc.hints.mandatory}"
                                                  columns="#{bindings.GlalLvl1Desc.hints.displayWidth}"
                                                  maximumLength="#{bindings.GlalLvl1Desc.hints.precision}"
                                                  shortDesc="#{bindings.GlalLvl1Desc.hints.tooltip}"
                                                  partialTriggers="glalLvl1Id"
                                                  binding="#{pageFlowScope.managedbean_GeneralLedger.it39}"
                                                  id="it39">
                                      <f:validator binding="#{bindings.GlalLvl1Desc.validator}"/>
                                    </af:inputText>
                                    <af:inputListOfValues id="inputListOfValues3"
                                                          popupTitle="Search and Select: #{bindings.GlalLvl2.hints.label}"
                                                          value="#{bindings.GlalLvl2.inputValue}"
                                                          label="#{bindings.GlalLvl2.hints.label}"
                                                          model="#{bindings.GlalLvl2.listOfValuesModel}"
                                                          required="#{bindings.GlalLvl2.hints.mandatory}"
                                                          columns="#{bindings.GlalLvl2.hints.displayWidth}"
                                                          shortDesc="#{bindings.GlalLvl2.hints.tooltip}"
                                                          binding="#{pageFlowScope.managedbean_GeneralLedger.inputListOfValues3}">
                                      <f:validator binding="#{bindings.GlalLvl2.validator}"/>
                                    </af:inputListOfValues>
                                    <af:inputText value="#{bindings.GlalLvl2Desc.inputValue}"
                                                  label="#{bindings.GlalLvl2Desc.hints.label}"
                                                  required="#{bindings.GlalLvl2Desc.hints.mandatory}"
                                                  columns="#{bindings.GlalLvl2Desc.hints.displayWidth}"
                                                  maximumLength="#{bindings.GlalLvl2Desc.hints.precision}"
                                                  shortDesc="#{bindings.GlalLvl2Desc.hints.tooltip}"
                                                  partialTriggers="glalLvl2Id"
                                                  binding="#{pageFlowScope.managedbean_GeneralLedger.it40}"
                                                  id="it40">
                                      <f:validator binding="#{bindings.GlalLvl2Desc.validator}"/>
                                    </af:inputText>
                                    <af:inputListOfValues id="inputListOfValues4"
                                                          popupTitle="Search and Select: #{bindings.GlalLvl3.hints.label}"
                                                          value="#{bindings.GlalLvl3.inputValue}"
                                                          label="#{bindings.GlalLvl3.hints.label}"
                                                          model="#{bindings.GlalLvl3.listOfValuesModel}"
                                                          required="#{bindings.GlalLvl3.hints.mandatory}"
                                                          columns="#{bindings.GlalLvl3.hints.displayWidth}"
                                                          shortDesc="#{bindings.GlalLvl3.hints.tooltip}"
                                                          binding="#{pageFlowScope.managedbean_GeneralLedger.inputListOfValues4}">
                                      <f:validator binding="#{bindings.GlalLvl3.validator}"/>
                                    </af:inputListOfValues>
                                    <af:inputText value="#{bindings.GlalLvl3Desc.inputValue}"
                                                  label="#{bindings.GlalLvl3Desc.hints.label}"
                                                  required="#{bindings.GlalLvl3Desc.hints.mandatory}"
                                                  columns="#{bindings.GlalLvl3Desc.hints.displayWidth}"
                                                  maximumLength="#{bindings.GlalLvl3Desc.hints.precision}"
                                                  shortDesc="#{bindings.GlalLvl3Desc.hints.tooltip}"
                                                  partialTriggers="glalLvl3Id"
                                                  binding="#{pageFlowScope.managedbean_GeneralLedger.it41}"
                                                  id="it41">
                                      <f:validator binding="#{bindings.GlalLvl3Desc.validator}"/>
                                    </af:inputText>
                                    <af:inputListOfValues id="inputListOfValues5"
                                                          popupTitle="Search and Select: #{bindings.GlalLvl4.hints.label}"
                                                          value="#{bindings.GlalLvl4.inputValue}"
                                                          label="#{bindings.GlalLvl4.hints.label}"
                                                          model="#{bindings.GlalLvl4.listOfValuesModel}"
                                                          required="#{bindings.GlalLvl4.hints.mandatory}"
                                                          columns="#{bindings.GlalLvl4.hints.displayWidth}"
                                                          shortDesc="#{bindings.GlalLvl4.hints.tooltip}"
                                                          binding="#{pageFlowScope.managedbean_GeneralLedger.inputListOfValues5}">
                                      <f:validator binding="#{bindings.GlalLvl4.validator}"/>
                                    </af:inputListOfValues>
                                    <af:inputText value="#{bindings.GlalLvl4Desc.inputValue}"
                                                  label="#{bindings.GlalLvl4Desc.hints.label}"
                                                  required="#{bindings.GlalLvl4Desc.hints.mandatory}"
                                                  columns="#{bindings.GlalLvl4Desc.hints.displayWidth}"
                                                  maximumLength="#{bindings.GlalLvl4Desc.hints.precision}"
                                                  shortDesc="#{bindings.GlalLvl4Desc.hints.tooltip}"
                                                  partialTriggers="glalLvl4Id"
                                                  binding="#{pageFlowScope.managedbean_GeneralLedger.it42}"
                                                  id="it42">
                                      <f:validator binding="#{bindings.GlalLvl4Desc.validator}"/>
                                    </af:inputText>
                                    <af:inputListOfValues id="inputListOfValues6"
                                                          popupTitle="Search and Select: #{bindings.GlalAcct.hints.label}"
                                                          value="#{bindings.GlalAcct.inputValue}"
                                                          label="#{bindings.GlalAcct.hints.label}"
                                                          model="#{bindings.GlalAcct.listOfValuesModel}"
                                                          required="#{bindings.GlalAcct.hints.mandatory}"
                                                          columns="#{bindings.GlalAcct.hints.displayWidth}"
                                                          shortDesc="#{bindings.GlalAcct.hints.tooltip}"
                                                          binding="#{pageFlowScope.managedbean_GeneralLedger.inputListOfValues6}">
                                      <f:validator binding="#{bindings.GlalAcct.validator}"/>
                                    </af:inputListOfValues>
                                    <af:inputText value="#{bindings.GlalAcctDesc.inputValue}"
                                                  label="#{bindings.GlalAcctDesc.hints.label}"
                                                  required="#{bindings.GlalAcctDesc.hints.mandatory}"
                                                  columns="#{bindings.GlalAcctDesc.hints.displayWidth}"
                                                  maximumLength="#{bindings.GlalAcctDesc.hints.precision}"
                                                  shortDesc="#{bindings.GlalAcctDesc.hints.tooltip}"
                                                  partialTriggers="glalAcctId"
                                                  binding="#{pageFlowScope.managedbean_GeneralLedger.it43}"
                                                  id="it43">
                                      <f:validator binding="#{bindings.GlalAcctDesc.validator}"/>
                                    </af:inputText>
                                    <af:inputText value="#{bindings.GlalDesc1.inputValue}"
                                                  label="#{bindings.GlalDesc1.hints.label}"
                                                  required="#{bindings.GlalDesc1.hints.mandatory}"
                                                  columns="#{bindings.GlalDesc1.hints.displayWidth}"
                                                  maximumLength="#{bindings.GlalDesc1.hints.precision}"
                                                  shortDesc="#{bindings.GlalDesc1.hints.tooltip}"
                                                  binding="#{pageFlowScope.managedbean_GeneralLedger.it44}"
                                                  id="it44">
                                      <f:validator binding="#{bindings.GlalDesc1.validator}"/>
                                    </af:inputText>
                                    <af:inputListOfValues id="inputListOfValues7"
                                                          popupTitle="Search and Select: #{bindings.GlalClId.hints.label}"
                                                          value="#{bindings.GlalClId.inputValue}"
                                                          label="#{bindings.GlalClId.hints.label}"
                                                          model="#{bindings.GlalClId.listOfValuesModel}"
                                                          required="#{bindings.GlalClId.hints.mandatory}"
                                                          columns="#{bindings.GlalClId.hints.displayWidth}"
                                                          shortDesc="#{bindings.GlalClId.hints.tooltip}"
                                                          binding="#{pageFlowScope.managedbean_GeneralLedger.inputListOfValues7}">
                                      <f:validator binding="#{bindings.GlalClId.validator}"/>
                                    </af:inputListOfValues>
                                    <af:inputText value="#{bindings.GlalClassDesc.inputValue}"
                                                  label="#{bindings.GlalClassDesc.hints.label}"
                                                  required="#{bindings.GlalClassDesc.hints.mandatory}"
                                                  columns="#{bindings.GlalClassDesc.hints.displayWidth}"
                                                  maximumLength="#{bindings.GlalClassDesc.hints.precision}"
                                                  shortDesc="#{bindings.GlalClassDesc.hints.tooltip}"
                                                  partialTriggers="glalClIdId"
                                                  binding="#{pageFlowScope.managedbean_GeneralLedger.it45}"
                                                  id="it45">
                                      <f:validator binding="#{bindings.GlalClassDesc.validator}"/>
                                    </af:inputText>
                                    <af:selectOneChoice value="#{bindings.GlalOptType.inputValue}"
                                                        label="#{bindings.GlalOptType.label}"
                                                        required="#{bindings.GlalOptType.hints.mandatory}"
                                                        shortDesc="#{bindings.GlalOptType.hints.tooltip}"
                                                        binding="#{pageFlowScope.managedbean_GeneralLedger.soc4}"
                                                        id="soc4">
                                      <f:selectItems value="#{bindings.GlalOptType.items}"
                                                     binding="#{pageFlowScope.managedbean_GeneralLedger.si4}"
                                                     id="si4"/>
                                    </af:selectOneChoice>
                                    <af:selectOneChoice value="#{bindings.GlalStatus.inputValue}"
                                                        label="#{bindings.GlalStatus.label}"
                                                        required="#{bindings.GlalStatus.hints.mandatory}"
                                                        shortDesc="#{bindings.GlalStatus.hints.tooltip}"
                                                        binding="#{pageFlowScope.managedbean_GeneralLedger.soc5}"
                                                        id="soc5">
                                      <f:selectItems value="#{bindings.GlalStatus.items}"
                                                     binding="#{pageFlowScope.managedbean_GeneralLedger.si5}"
                                                     id="si5"/>
                                    </af:selectOneChoice>
                                    <af:selectBooleanCheckbox value="#{bindings.GlalBudFlag.inputValue}"
                                                              label="#{bindings.GlalBudFlag.label}"
                                                              shortDesc="#{bindings.GlalBudFlag.hints.tooltip}"
                                                              binding="#{pageFlowScope.managedbean_GeneralLedger.sbc4}"
                                                              id="sbc4"/>
                                    <f:facet name="footer">
                                      <af:panelGroupLayout layout="vertical"
                                                           binding="#{pageFlowScope.managedbean_GeneralLedger.pgl8}"
                                                           id="pgl8">
                                        <af:commandButton text="Commit"
                                                          binding="#{pageFlowScope.managedbean_GeneralLedger.cb29}"
                                                          id="cb29"
                                                          actionListener="#{bindings.Commit.execute}"
                                                          disabled="#{!bindings.Commit.enabled}"/>
                                      </af:panelGroupLayout>
                                    </f:facet>
                                  </af:panelFormLayout>
                                </af:dialog>
                              </af:popup>
    bean - insert code
        public String cb22_action2() {
            BindingContainer bindings = getBindings();
           OperationBinding operationBinding = bindings.getOperationBinding("CreateInsert6");
            Object result = operationBinding.execute();
            if (!operationBinding.getErrors().isEmpty()) {
                return null;
            return null;
    here  i want mention out. important thing .
    in the af:dialog i dont want any createinsert operation.
    thing is while am pressing createinsert operation on af:table the af:diaog sould be apperad as empty row for flling datas and pressing save.
    save data appered in af:table. this is usecase reapeted out clearly.
    Edited by: Erp on Oct 12, 2011 4:28 AM

  • Why did you ruin the perfect phone with an update to Lollipop? It wasn't broken---why did you feel the need to "fix" it?

    The S5 was PERFECT until Lollipop installed. Now? I have no end of glitches and it drains my battery much faster. What is the obsession that companies have with "improving" something when, in fact, they rarely do? When my last phone went to Kit Kat it was, essentially, a paperweight which is why I switched to the S5. I HATE!!!!!!!!!!!!!!!!! iPhones but at least you only have to deal with the update nightmare once a year with them. STOP! Or at the very least, make it an option. If people are happy with the OS they have...leave us alone!

    I agree. Verizon and Samsung both blamed each other and then they blamed Google.  In my eyes, shame on all of them for releasing and rolling out an update that clearly wasn't ready, nor was it properly beta-tested by ANY of the companies.  It's completely preposterous in this day and age to release a product of such subpar standard! I've worked for engineering companies where anything happening like this (even HALF as bad) would result in heads rolling (immediate job loss). Everyone I know that updated to lollipop is suffering

  • Best way to implement oracle TEXT on multiple tables with regular updates

    Hi,
    I have the following situation:
    5 tables where we want full text search on multiple columns.
    Some of the tables have a master/detail relation. (1 to 1000, or more)
    because of the number of transactions on these tables we can't have a lag in the sync time.
    Currently I have create a dummy table just for the search with 2 columns: for the primary key to all the other tables and one for the update trigger.
    I use the user_datastore with a procedure to join all the necessary columns resulting in a clob.
    My question is regarding the update.
    Of course I can create triggers to update the dummy field in the search table, but this will give lot of updates on that table with possible locking issues.
    What would be the best approach to have this search functionality working?
    I am open for any ideas!
    Thanks,
    Edward

    Ok, I will focus on building a solution on 12c.
    right now I have used a USER_DATASTORE with a procedure to glue all the field together in one document.
    This works fine for the search.
    I have created a dummy table on which the index is created and also has an extra field which contains the key related to all the tables.
    So, I have the following tables:
    dummy_search
    contracts
    contract_ref
    person_data
    nac_data
    and some other tables...
    the current design is:
    the index is on dummy_search.
    When we update contracts table a trigger will update dummy_search.
    same configuration for the other tables.
    Now we see locking issues when having a lot of updates on these tables as the same time.
    What is you advice for this situation?
    Thanks,
    Edward

  • Why does my iPhone 4 get slower with every update? (iPod app special)

    When i tab ipod and then movies i almost have to wait longer than with my old iPhone 3G. And it get worst with every update. ***? I am thinking about downdating to 3.something then my iPhone 4 was really quick.

    Here is my update on this issue. This isn't normal. I spoke to several tech support people, sr tech support people, etc and we found out that somehow my battery was damaged during the update. They found this out by sending me a diagnostic file via sms. I was sent into the apple store to replace my phone. I had it a little under a year, with 40 days left on my warranty. When I went to the store I was able to show the rep at the store the issue described in this thread. He just scratched his head. It was a quick swap. I spent a lot of time trying to fix this issue. I tried everything. Removing itunes_control files, several restores, starting from scratch. I could duplicate the issue every time. It's a bug and I'm sure it will be addressed. If you are still under warranty, I would recommend getting it checked by an apple tech to see if it messed up your battery and perhaps get it replaced. Battery issues on these devices cause lots of problems. 

  • Advanced Table Compression Create Table with LOBs

    Hi,
    I need some help with the Advanced Table Compression when creating a table especially when they contain a LOB.
    Here are 3 examples:
    Exp#1
    CREATE TABLE emp (
          emp_id NUMBER, 
          first_name VARCHAR2(128), 
          last_name VARCHAR2(128)
    ) COMPRESS FOR OLTP;
    This one is ok - all elements are compressed.
    Exp#2
    CREATE TABLE photos (
          photo_id NUMBER,
          photo BLOB)
          LOB(photo) STORE AS SECUREFILE (COMPRESS LOW);
    This one I am confused - is it just the LOB(photo) that is compressed or the whole table. If it is just the LOB then what syntax do I need for the whole table?
    I also assume that the LOB is being stored in the default tablespace associated with this table - correct me if I am wrong!
    Exp#3
    CREATE TABLE images (
          image_id NUMBER,
          image BLOB)
          LOB(image) STORE AS SECUREFILE (TABLESPACE lob_tbs COMPRESS);
    This one I am confused - I think it is telling me that LOB(image) is being compresses and stored in tablespace lob_tbs and the other elements are being stored uncompressed in the default tablespace.
    Again if it is just the LOB then what syntax do I need for the whole table?
    Thanks & regards
    -A

    Welcome to the forums !
    Pl post details of OS, database and EBS versions. Pl be aware that Advanced Compression is a separately licensed product. Pl see if these links help
    http://blogs.oracle.com/stevenChan/2008/10/using_advanced_compression_with_e-business_suite.html
    http://blogs.oracle.com/stevenChan/2008/11/early_benchmarks_using_advanced_compression_with_ebs.html
    http://blogs.oracle.com/stevenChan/2010/05/new_whitepaper_advanced_compression_11gr1_benchmar.html
    HTH
    Srini

  • Captivate5: Why should I use a pause option with a button?

    I am sure this is a rookie question, but the book I got with my training does not explain it, just hand holds me through examples. I would appreciate any resource you use that goes over the basics of Captivate and the WHY and HOW behind each application within the software. I just want to look up something like "button" and read about what I should think about when implementing a button.
    So, can someone please explain what the pause is used for when using a button. I am guessing that it is use to pause the slide so the user can take his/her time to choose a button to click on. I appreciate you helping me with my rookie question.

    Hi there
    In addition to what was offered there is often a misunderstanding about the button pause point and the associated action.
    Imagine the Captivate playhead as being like a boat floating along a river. When a pause is encountered the boat is stationary and doesnt float further down the river. Now the default action associated with the interactive objects is to "Continue". So lets assume that each entry point to a slide is similar to a port the boat may stop at. When the pause is released, the boat may float along to the next port (continue). Or, if you have selected the action of "Go to the next slide" it's like a helicopter picks up the boat and carries it over the remaining river bit and it is placed at the next port where it will then continue.
    Hopefully this helps... Rick
    Helpful and Handy Links
    Captivate Wish Form/Bug Reporting Form
    Adobe Certified Captivate Training
    SorcererStone Blog
    Captivate eBooks

  • Why is Firefox now wiping my profile with each update?

    When I upgraded to Firefox 30.0, all of my data was wiped: history, add-ons, bookmarks etc. It's not just that Firefox is using a different profile - my Profiles folder had nothing in it.
    Exactly the same thing has now happened in upgrading to 31.0.

    These can't get your data back, but will help in the future.
    These add-ons can be a great help by backing up and restoring Firefox
    '''[https://addons.mozilla.org/en-US/firefox/addon/febe/ FEBE (Firefox Environment Backup Extension)]''' {web link}
    FEBE allows you to quickly and easily backup your
    Firefox extensions, history, passwords, and more.
    In fact, it goes beyond just backing up -- It will actually rebuild
    your saved files individually into installable .xpi files.
    It will also make backup of files that you choose.
    '''[https://addons.mozilla.org/en-US/firefox/addon/opie/ OPIE]''' {web link}
    Import/Export extension preferences

  • Why is Firefox getting worse an worse with every update???

    Bugs (like the "Download&Crash"-bug) are never fixed, but a lot of useful addons do not work suddenly!
    It has become a nightmare!
    You shold take more care of these problems.
    I'm no longer willing to make my yearly donation under these circumstances. Sorry...

    ReneMacon, I am sorry to hear about the frustration. Some add ons become incompatible after updates. However contacting the developers of these add ons can further investigate the issue.

  • Why am I not able to text with new update

    not everyone I test is getting the message.  I am not getting all of text sent to me.  this is only happened since the new ios 7 update.

    Mac computers do not have any means of texting.
    As for the iPad, you can NOT text anyone in the world. You can only text people who are enrolled in iMessage, since iMessage is the only way to text on the iPad.

  • Finding a table with a like %name% in a schema

    What is the query I should use to find a table with a like %name% in a schema?
    Thank you for any help

    select * from all_tables
    where owner = 'YOUR_SCHEMA' and lower(table_name) like '%name%'
    /Regards
    Dmytro

  • Fact table  with different  granularity

    I have a fact table , the measure with different granualrity , for example, there are a fact table named project, and in the project , there are some columns measure like project value, Opportunity value, (one opporuntity have many project). so I have to sum the project value and Opportuntity value
    by month, how to sum opportuntity value? (I want to sum the value distinct Opportuntity ). anyone have suggetion. thanks in advance.

    The purist answer is that you should NEVER have a fact table with multiple levels of granularity - it's asking for trouble. Better solution is to split off a new fact table at the proper level of granularity. Having said that, I've worked with BI Apps before so I understand the pain you're going through. In the long run though we found it better to add new fact tables and track the data at the proper levels. Less confusing (long run) than trying to kludge round data to fit in a square fact table.
    Thx,
    Scott

  • Export - only tables with data

    Hai Everybody!
    I have a database in Oracle, which is having hundreds of tables. When i export the database, all the tables will be exported into the .dmp file.
    i want to export only the tables, which are having atleast one row to the .dmp file.
    Can anyone help me by providing the solution.
    Thanks
    JD

    JayaDev(JD) wrote:
    version 10gIn 11g, there is feature called "deferred segment creation". It means, if you create a new table and do not insert any data into it, Oracle will not create segment for that table, hence it will not be displayed in dba_segments.
    That is why, if you try export that table with exp utility, it will not be exported.

Maybe you are looking for

  • Arabic characters are not getting displayed in oracle pdf output

    Hi, I am trying to print arabic characters in report output but junk characters are getting displayed in output. Using 10g report builder, added the arabic labels in report layout. Followed below steps: 1. Set NLS_LANG=ARABIC_United Arab Emirates.AR8

  • My Phone Cannot Place Calls or Receive them

    This is the Second Time this Problem has Happened. Each Time followed a Plane Trip from Detroit to Kansas City MO. The Phone Was Turned OFF while on the plane both times. I can Text and Receive DATA ONLY! Any call Place results with a message "The Nu

  • How to add multiple images to panel

    Hi, i am trying to add more than 1 image to a panel, but i cant work out how. have the following code, but it means i have to create a new panel each time. i only want to use 1 panel, and add images to this one panel. the images are transparent and i

  • Can  not send mail using wifi at a motel .I can receive mail fine

    can  not send mail using wifi at a motel .I can receive mail fine

  • Data Uploading again and again  Mail - RFC ?

    Hi friends ,                   My scenario is Mail to RFC .  I am reading the  mail and sending data to RFC .               Some times i am facing situation like Once mail succesfully read and sent data to R3.    (The mail becomes unread  )