Enforce filtering from EO Cache

I have a entity based view object which shows Data in a adf read only table.
On page load some Data will be shown and will be part of the EO Cache.
When a change happens on database side, i dont want this to reflect in the Cache. It should be possible to filter only from the cache, unless a refresh operation will be done (refreshing (iterating VO) the hole page, not requery).
Anyone an idea?
Thanks.

Hello Jabr,
thank you for the repsone.
in the post is telling: "The executeQuery visited the database every time it is executed even if the user made no changes on the JSF"
What in case, the view criterias "query execution mode" is set to "In memory" (using RowMatch)?
I am not using execute_query explicitly. Let me try to explain what I am doing in Application.
Just to make use of the EO Cache mechanism, i create a EO Object which is not referencing to a DB Schema Object (Non existing Object) and create a View Object with the specific Query (keep the referenz of EO and VO Attributes).
When i query particular rows, and do a change on databse side, ADF throws an exception telling that DB Object is not existing.
Only when the column will not be persistent, then directly changed DB Value will be retrieved and shown, without errors. But i want to keep the Cache, until i again iterate through the View Object and execute query.
Maybe someone tell me another way to achieve this requirement.
Thank you!
Using JDEV 11.1.1.3
DataSource: MySQL 5.0.27

Similar Messages

  • Getting All Entries from a cache

    Hi Folks,
         Just a small interesting observation. In an attempt to get back all the data from my partitioned cache I tried the following approaches:
         //EntrySet
         NamedCache cache = NamedCache.getCache("MyCache");
         Iterator<Entry<MyKeyObj, MyObj>> iter = cache.entrySet().iterator();
         //iterator over objects and get values
         //KeySet & getAll
         NamedCache cache = NamedCache.getCache("MyCache");
         Map results = cache.getAll(cache.keySet());
         Iterator<Entry<MyKeyObj, MyObj>> iter = results.iterator();
         //iterate over objects and get values
         Retrieving ~47k objects from 4 nodes takes 21 seconds using the entryset approach and 10 seconds for the keyset/getal approach.
         does that sound right to you? That implies that the entryset iterator is lazy loaded using get(key) for each entry.
         Regards,
         Max

    Hi Gene,
         I actually posted the question, because we are currently performance-tuning our application, and there are scenarios where (due to having a large amount of badly organized legacy code with the bottom layers ported to Coherence) there are lots of invocations getting all the entries from some caches, sometimes even hundreds of times during the processing of a HTTP request.
         In some cases (typically with caches having a low cache-size) we found, that the entrySet-AlwaysFilter solution was way faster than the keyset-getall solution, which was about as fast as the solution iterating over the cache (new HashMap(cache)).
         I just wanted to ask if there are some rules of thumb on how long is it efficient to use the AlwaysFilter on distributed caches, and where it starts to be better to use the keyset-getall approach (from a naive test-case keyset-getall seemed to be better upwards from a couple-of-thousand entries).
         Also, as we are considering to move some of the caches (static data mostly, with usually less than 1000 entries, sometimes even as few as a dozen entries in a named cache, and in very few cases as many as 40000 entries) to a replicated topology, that is why I asked about the effect of using replicated caches...
         I expect the entrySet-AlwaysFilter to be slower than the iterating solution, since it effectively does the same, and also has some additional filter evaluation to be done.
         The keySet-getall will be something similar to the iterating solution, I guess.
         What is to be known about the implementation of the values() method?
         Can it be worth using in some cases? Does it give us an instant snapshot in case of replicated caches? Is it faster than the entrySet(void) in case of replicated caches?
         Thanks and best regards,
         Robert

  • Any way to retrieve this image from my cache? When saved it only saves as a 1.7KB blank file.

    I'm trying to retrieve an image from Firefox's cache but so far have had no luck in doing so. The picture was hosted on imageshack and I had it open in a window but when I refreshed the page several hours later it was gone. I refreshed the page several more times, tried messing with the url to see if that did anything, but no luck. I haven't cleared anything on Firefox so I'm hoping there's some way I can recover it from the cache.
    I followed the instructions on this page: http://groups.google.com/group/mozilla.support.firefox/msg/73bab3fb55ac5b42
    However, when I right clicked the URL and chose "Save Link As..." it only saved a 1.7KB file that none of my photo editing programs can recognize or open. I've tried going to cache entries for other image links and saving them and when I choose Save Link As for those they save just fine, and in full size, so I'm not sure why this one won't work...I'm using Offline Mode so I'm not sure why the picture no longer being hosted online should make a difference one way or the other. I'm just hoping that my act of refreshing the page and nothing being there didn't overwrite the cache file and thus erase the cache'd image.
    So is there any hope of retrieving this picture or is it gone for good?

    Hi.
    Once the image in question is replace with another one, the old one is erased. That is to say, if you open an image, say www.domain.com/image.png, and it's a 200x200 image, then you close it, it's still on cache, and you can access it through the cache. But if the image is changed in the server, that same exact url, and you access it again, at you see a 250x200 image (just an example), then the 200x200 is gone forever.
    Your hope is that you never accessed the same URL again, so the old cache wasn't erased. If you know the url of the image, simply select offline mode (File > Work Offline, I think) and access its url. It will load the cached version and not check for the online one. Only if there is a cached version, of course.
    I hope this helps.

  • When I attempt to open lightroom I recive this message: [ Lightroom encountered an error whenreading from itspreviw cache and needs to quit.Lightroom will atempt to fix this problem next time it launches.] I did this a few times but no resoulve

    When I attempt to open lightroom I recive this message: [ Lightroom encountered an error whenreading from itspreviw cache and needs to quit.Lightroom will atempt to fix this problem next time it launches.] I did this a few times but no resoulve

    It isn't a file, it's a folder. It will have the same name as your catalog, but will have the extension data. It will be in the same folder along with your catalog. If you need to use the search feature to search for *.lrdata.

  • Problem in getting the data from a cache in hibernate

    I am storing data inside a cache. When i am geeting the data from a cache its showing null.
    How can i retrieve the data from a cache.
    I am using EHCache

    Hi ,
    You have done one mistake while setting the input parameters for BAPI..Do the following steps for setting input to BAPI
    Bapi_Goodsmvt_Getitems_Input input = new Bapi_Goodsmvt_Getitems_Input();
    wdContext.nodeBapi_Goodsmvt_Getitems_Input().bind(input);
    Bapi2017_Gm_Material_Ra input1 = new Bapi2017_Gm_Material_Ra();
    wdContext.nodeBapi2017_Gm_Material_Ra().bind(input1);
    Bapi2017_Gm_Move_Type_Ra input2 = new Bapi2017_Gm_Move_Type_Ra();
    wdContext.nodeBapi2017_Gm_Move_Type_Ra().bind(input2);
    Bapi2017_Gm_Plant_Ra input3 = new Bapi2017_Gm_Plant_Ra();
    wdContext.nodeBapi2017_Gm_Plant_Ra().bind(input3);
    Bapi2017_Gm_Spec_Stock_Ra input4 = new Bapi2017_Gm_Spec_Stock_Ra();
    wdContext.nodeBapi2017_Gm_Spec_Stock_Ra().bind(input4);
    input1.setSign("I");
    input1.setOption("EQ");
    input1.setLow("1857");
    input2.setSign("I");
    input2.setOption("EQ");
    input2.setLow("M110");
    input3.setSign("I");
    input3.setOption("EQ");
    input3.setLow("309");
    input4.setSign("I");
    input4.setOption("EQ");
    input4.setLow("W");
    wdThis.wdGetWdsdgoodsmvmtcustController().execute_BAPI_GOODSMOVEMENT_GETITEMS();
    Finally inavidate your output node like
    wdContext.node<output node name>.invalidate();
    also put your code inside try catch to display any exception if any
    Regards,
    Amit Bagati

  • Why I can no longer save videos (*.flv) from my cache folder?

    Well, I don't speak English.
    I'm sorry.
    Até o Firefox 3.6.16 eu conseguia salvar um vídeo (*.flv), do Youtube por exemplo, a partir da pasta cache. Por que não posso mais fazê-lo no Firefox 4.0?
    A partir disso, desinstalei o Firefox 4.0, voltei para o antigo. E quando não puder mais usar a versão 3.6.16 passarei a usar o IE, já que na versão 8.0.6001.18702 ainda consigo fazer o salvamento de vídeos.
    Grato pela atenção.
    Cordialmente,
    Elson

    it is way more convenient just to get the cached videos (not just from youtube) from the cache folder... no encoding/downloading/converting because the file is already there!
    I don't get it why Mozilla decided to hide the .flv files from cache... makes me want to change browser :(

  • I have a Mac G4 with a 10.3.9 OS and I want to update without losing any filters from my Photoshop 7. Should I go to 10,4 or higher?

    I have a Mac G4 with a 10.3.9 OS and I want to update without losing any filters from my Photoshop 7. Should I go to 10.4 or higher?

    Why do you need to update at all?
    In order to upgrade you will have to purchase a retail copy of either Tiger or Leopard neither of which are easy to come by, and they tend to be a bit expensive.  And, there's no assurance that the version of PS you now use will be compatible with a newer version of OS X.

  • I am running windows 8 and have lightroom 5.5 and i have a error that says cant read from previous cache?  help

    I am running windows 8 and have lightroom 5.5 and i have a error that says cant read from previous cache?  help

    Using Windows Explorer, navigate to the folder that contains your catalog it's probably located in Pictures\Lightroom. In that folder you will find another folder with the extension .lrdata. You need to delete that folder and its contents, then start Lightroom again. And new previews folder will be created automatically, and you should be able to start using Lightroom normally.

  • Essbase cannot union filters from multiple groups

    Hi All,
    I got a problem to provisioning on Shared Service.
    In some case, I need to grant multiple filters to a Essbase users, say user01.
    However, each user can associated one Essbase filter only.
    For better management, I create multiple groups with different filters and assign the user, user01, into the groups.
    For first two groups are working normally. However, Essbase cannot "union" all filters from multiple groups after the users join the third groups.
    However, I try to combine the three filter into a filter with three rows. It is working!!!
    It is because there are large number of users in external LDAP. It is unmanageable when combining multiple filters into a filters. Is there any way to solve this problem? or is there any better approach to do the security ?
    Thanks in advance!!!
    Regards,
    TKC

    Thanks for your reply.
    I have following structure in Essbase. I try to make it simple to understand.
    Dept (dimension)
    |_C00
    |_CTTL
    |_C01
    |_C02
    Project (dimension)
    |_GEN
    |_P01
    |_P02
    |_P03
    |_PI
    |_A
    |_P01 (shared member)
    |_B
    |_P02 (shared member)
    |_P03 (shared member)
    Group A with Filter F01
    Read - CTTL, IDESCENDENT(A)
    Group B with Filter F02
    Read - C01, P01, P02
    User joins A and B group.
    The end result of user is that
    he can access CTTL of P01 only
    he can access C01 of P01 and P02 only
    he cannot access C02 of any Project dimension
    he cannot access CTTL of P03
    However, I found that when I change to metaread. The result is going wrong.
    he can access C01 of P01, P02 and P03 only.
    It is because I need to block user to view members which he cannot access.
    I need "metaread" function.
    So somebody tell me how to achieve this? Thanks in advance.
    Edited by: user070322 on Jan 4, 2009 8:37 PM
    Edited by: user070322 on Jan 5, 2009 6:04 PM

  • Data fetch from live cache

    How can I retrieve data from live cache?This is in Demand Planning : SCM APO.
    Please suggest ways.
    Thanks & Regards,
    Savitha

    Hi,
    some time ago I worked on SAP APO.
    To read live cache, you first have to open a SIM session.
    You can do this as shown in this function module:
    FUNCTION ZS_SIMSESSION_GET.
    *"*"Local Interface:
    *"  IMPORTING
    *"     REFERENCE(IV_SIMID) TYPE  /SAPAPO/VRSIOID
    *"  EXPORTING
    *"     REFERENCE(EV_SIMSESSION) TYPE  /SAPAPO/OM_SIMSESSION
    CONSTANTS:
      lc_simsession_new       TYPE c LENGTH 1 VALUE 'N'.
    DATA:
      lt_rc                   TYPE /sapapo/om_lc_rc_tab,
      lv_simsession           LIKE ev_simsession.
      IF NOT ev_simsession IS INITIAL.
        EXIT.
      ENDIF.
    *--> create Simsession
      CALL FUNCTION 'GUID_CREATE'
        IMPORTING
          ev_guid_22 = lv_simsession.
    *--> create transactional simulation
      CALL FUNCTION '/SAPAPO/TSIM_SIMULATION_CONTRL'
        EXPORTING
          iv_simversion            = iv_simid
          iv_simsession            = lv_simsession
          iv_simsession_method     = lc_simsession_new
          iv_perform_commit        = space
        IMPORTING
          et_rc                    = lt_rc
        EXCEPTIONS
          lc_connect_failed        = 1
          lc_com_error             = 2
          lc_appl_error            = 3
          multi_tasim_registration = 4.
      IF sy-subrc > 0.
        CLEAR ev_simsession.
    *   error can be found in lt_rc
      ENDIF.
    * return simsession
      ev_simsession = lv_simsession.
    ENDFUNCTION.
    Then you can access the live cache.
    In this case we read an order (if I rememver correctly, it's a plan order):
    DATA:
      lv_vrsioid                  TYPE /sapapo/vrsioid,
      lv_simsession           TYPE /sapapo/om_simsession.
    * Get vrsioid
      CALL FUNCTION '/SAPAPO/DM_VRSIOEX_GET_VRSIOID'
        EXPORTING
          i_vrsioex_fld = '000'  "By default
        IMPORTING
          e_vrsioid_fld = lv_vrsioid
        EXCEPTIONS
          not_found     = 1
          OTHERS        = 2.
    CALL FUNCTION 'ZS_SIMSESSION_GET'
          EXPORTING
            iv_simid      = iv_vrsioid
          IMPORTING
            ev_simsession = lv_simsession.
      CALL FUNCTION '/SAPAPO/RRP_LC_ORDER_GET_DATA'
        EXPORTING
          iv_order      = iv_orderid
          iv_simversion = iv_vrsioid
        IMPORTING
          et_outputs    = lt_outputs
          et_inputs     = lt_inputs.
    If you change something in your simsession, you have to merge it back afterwards, so that your changes become effective.
    You can do this like that:
    * Merge simulation version (to commit order changes)
      CALL FUNCTION '/SAPAPO/TSIM_SIMULATION_CONTRL'
        EXPORTING
          iv_simversion                = lv_vrsioid
          iv_simsession                = lv_simsession
          iv_simsession_method         = 'M'
        EXCEPTIONS
          lc_connect_failed            = 1
          lc_com_error                 = 2
          lc_appl_error                = 3
          multi_tasim_registration     = 4
          target_deleted_saveas_failed = 5
          OTHERS                       = 6.
    I hope this helps...

  • How to remove blocks from buffer cache for a specific object

    hi everybody,
    is it possible to remove blocks which belogns to a specific object (a table for ex) from buffer cache.
    as you know, there is
    alter system flush buffer_cache;command but it does it's job for all buffer cache. if you ask me why i want this, for tuning reasons. I want to test some plsql codes when they run as if they are running for the first time (reading from disk).
    ps: I use oracle 11g r2

    Hi mustafa,
    Your performance will not degrade if you run the query second time ( if i understood correctly, you worry about the performance if you execute the procedure second time). Executing/running the code/sql statements over and over again will have following two good benefits.
    1) This will avoid hard parsing (Hard parsing is resource intensive operation and this generally increase the overall processing time.
    2) This will avoid physical read IO (You gonna see the benefits if data blocks already cached and you dont have to spend time in reading blocks from disk. Reading from disk is much costlier and time consuming operation as compared to data in RAM)
    Having that said sometime bad written queries will acquire more blocks then required and consume most part of buffer cache, and this can some times effect the other important blocks and force to flush out from buffer cache.
    Oracle have built some intelligence for large full table scan operations for e.g will doing full table scan(I hope you already know what is fts) oracle will put its blocks at end of LRU chain. So these will be the buffers will would flush out first then any other.
    From oracle documentation:
    "When the user process is performing a full table scan, it reads the blocks of the table into buffers and puts them on the LRU end (instead of the MRU end) of the LRU list. This is because a fully scanned table usually is needed only briefly, so the blocks should be moved out quickly to leave more frequently used blocks in the cache.
    You can control this default behavior of blocks involved in table scans on a table-by-table basis. To specify that blocks of the table are to be placed at the MRU end of the list during a full table scan, use the CACHE clause when creating or altering a table or cluster. You can specify this behavior for small lookup tables or large static historical tables to avoid I/O on subsequent accesses of the table."
    Regards
    Edited by: 909592 on Feb 6, 2012 4:37 PM

  • Does coherence cache the value from the cache?

    Hi, I have the question about if the coherence caches the value from the cache? I believe it does from my test, just want to get the confirmation.
    I like to use an example to describe my question. For example:
    If (key1, value1) are in the cache1, (value1 is an object),
    for the first time, if cache1.get(key1), coherence will deserialize value1 and return. But if in the same JVM, when cache1.get(key1) is invoked again, coherence will return value1, which I believe is cached by coherence in the current JVM, and return; instead of deserializing and return it. Is that right?
    I am asking this question because I found a problem in our project when use coherence. As the above example, if I use value1 = cache1.get(key1), and in our project, value1 object has a set method to change one of its internal attributes, and this method was indeed invoked after value1 get from cache1. Then in another class, value2 = cache1.get(key1) is called again, and I found out that value2's attribute will have the modified value, even cache1.put(key1, value1) is never invoked in the first place.
    Of course, this kind of behavior matches the java.util.Map. But coherence cache is a cluster/distributed environment. In the above example, if on another data node, value3 = cache1.get(key1) will get the original attribute value in value3, since the deserialize object will always get the original value, unless the new value is put in explicitly by cache1.put(key1, value1).
    In this case, should cache1.get(key1) always return a clone object make more sense?
    Thanks

    You observation is correct. More specifically for cache topologies which include an in-process cache Coherence may return the same object reference for repeated get requests on the same key. I say "may" because for any variety of reasons we may also have to retrieve a fresh copy from a remote cache server. When possible we will return existing objects for performance reasons avoiding costly things like network hops, and de-serialization. Any modifications made to an object returned from the cache will not be made automatically available to other cluster members. Additionally if these modifications are made concurrently with another thread performing a cache.put() on the same value could result in a corrupt cached value if your serialization methods are not thread-safe. Best practice dictates that unless you are sure that you are using a cache topology which does not include an in-process cache that you treat the values returned from the cache as immutable, and instead deep clone() it before making any modifications.
    The distributed-scheme and remote-scheme are the only types of caches which do not include in-process caching, and thus always return "mutation safe" values. The most common in-process cache topology is near-scheme, but others include replicated-scheme, optimistic-scheme, local-scheme, and the programatically created ContinuousQueryCache.
    thanks,
    mark

  • Prevent JNLP from being cached in the Java Web Start cache

    Hi,
    when i launch a JNLP it's always being cached in the Java Web Start cache. Is there a way to prevent it from being cached? Some attribute/property inside it?
    Thanks!

    Set the http headers in the response from the server when the client downloads the jnlp file.
    eg Cache-control no-cache
    Expires (use same date as "date" header)
    Note that over SSL on Internet Explorer 8 this will not work. All other configurations should be ok.

  • Filters from BW in HANA Calculation View

    Hi, Gurus!
    We start using HANA modeling and faced with some issues in filtering. Hope someone can help us, maybe anybody faced with same error and give us they expirience.
    Well, we have following model
    On this model we create Virtual Cube in BW. All objects mapped.
    So, when we try to open query for 1 day, or for 1 month, or even for 1 quarter time of execution the same. Of course in simple models (one analytic view on them projection and after aggregation) this situation not occurred.
    We tried to find some information about this case, but all in vain. As we think filter from BEX Query or ABAP cube preview must transfer to all objects in calculation view but in fact, we fully sure about it, block 1 (look at picture above) not limited...
    Maybe this happen because our usage this block (type of join, or maybe characteristics which joined) :
    So any help about how to understand this behaviour of system, or how correctly create CALC View to using all filters from BEX, or how debug in HANA call of CALC view from BEX, will be very useful!
    Thanks in advance!
    Best regard,
    Alex

    I'm not sure I understand your question, but I think you are saying that your execution time is the same for any query, even if you filter heavily.
    This can be the case if you join between two fact tables. Avoid this by using Attribute Views or a Union with Constant Values.

  • How to Export Security Filters from ASO

    Hi everyone,
    I would like to export the security filters from our reporting application which is ASO. Through my research I have struggled to find a good method for doing this. I ran the Display Filter MAXL script to produce an output but the output cannot be manipulated for use.
    Does anyone have a good way extract these filters?
    Please and thank you in advance for any advice you may have!
    John

    You could have a look at the advanced security manager which is a free tool - http://www.appliedolap.com/free-tools/advanced-security-manager
    There is also the option at look at using one of the API's
    I would say LCM but I don't think that extracts it in a format that then can be manipulated.
    Cheers
    John
    http://john-goodwin.blogspot.com/

Maybe you are looking for

  • Updated to 10.10.3 and now iPhoto won't open

    I upgraded the OS 10.10.3 and now iPhoto won't open. It says "the version of iPhoto installed on this Mac is not compatible with OS X Yosemite.  Download the latest version for free from the Mac App Store."  However, when I go to the Mac App Store, t

  • Problem in Threading

    Hai to all of you, I am new to Threads Programming, we are developing a module in which the file is uploaded by the customer and we are sending that data to it client in form of SMS. Here all are working perfectly. But there is also a assumptions tha

  • OSX 10.8.5 Update HDMI sound not output after source switch

    Upgraded my Mac Mini this morning with latest update. Ever since, everytime I switch source on my TV from one to another, I'm not garanteed to have sound being output on my Mac Mini. Only solution is to reboot. Am I the only one facing this kind of i

  • Agentry - Disable Double Click Action on Individual Row

    Is it possible to disable the double click action on a single row in a list screen?  I wanted to have a rule that would disable a row if it has already been updated.  Let me know if that is possible.

  • How to Avoid Grouping for some conditions?

    Hi, I am facing a problem in Sales_commission Report. In this report I am grouping data Based upon first by salesman and then by customer. And also some sorting conditions. I designed all grouping by using report wizard. The problem is: If sort_by Pa