Main Content

flush

Write all locally modified keys to the persistence service

Description

modKeys = flush(c) writes all locally modified data in c to the persistence service and returns a list of keys that have been modified.

flush does not clear the list of retained keys.

example

Examples

collapse all

Start a persistence service that uses Redis™ as the persistence provider. The service requires a connection name and an open port. Once the service is running, you can connect to the service using the connection name and create a cache.

ctrl = mps.cache.control('myRedisConnection','Redis','Port',4519);
start(ctrl)
c = mps.cache.connect('myCache', 'Connection', 'myRedisConnection');

Add keys and values to the cache and display them as a MATLAB® table.

put(c,'keyOne',10,'keyTwo',20,'keyThree',30,'keyFour',[400 500],'keyFive',magic(5))
tt = table(keys(c), get(c,keys(c))','VariableNames',{'Keys','Values'})
tt =

  5×2 table

       Keys          Values   
    __________    ____________

    'keyFive'     [5×5 double]
    'keyFour'     [1×2 double]
    'keyOne'      [        10]
    'keyThree'    [        30]
    'keyTwo'      [        20]

Retain a single key locally and verify that it shows up as a local key in the cache object.

retain(c,'keyOne')
display(c)

c = 

RedisCache with properties:

          Host: 'localhost'
          Port: 4519
          Name: 'myCache'
    Operations: "read | write | create | update"
     LocalKeys: {'keyOne'}
    Connection: 'myRedisConnection'

Use getp instead of dot notation to access properties.

Modify the local key and flush it to the remote cache. Display the keys and values in the cache as a MATLAB table.

put(c,'keyOne',rand(3))
modKeys = flush(c)
tt = table(keys(c), get(c,keys(c))','VariableNames',{'Keys','Values'})
modKeys =

  1×1 cell array

    {'keyOne'}

tt =

  5×2 table

       Keys          Values   
    __________    ____________

    'keyFive'     [5×5 double]
    'keyFour'     [1×2 double]
    'keyOne'      [3×3 double]
    'keyThree'    [        30]
    'keyTwo'      [        20]

Input Arguments

collapse all

A data cache represented by a persistence provider specific data cache object.

Currently, Redis and MATLAB are the only supported persistence providers. Therefore, the cache objects will be of type mps.cache.RedisCache or mps.cache.MATFileCache.

Example: c

Output Arguments

collapse all

A list of the modified keys that were written to the persistence service, returned as a cell array of character vectors.

Version History

Introduced in R2018b