You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Matthew F. Dennis (JIRA)" <ji...@apache.org> on 2011/03/14 22:22:29 UTC

[jira] Created: (CASSANDRA-2325) invalidateKeyCache / invalidateRowCache should remove saved cache files from disk

invalidateKeyCache / invalidateRowCache should remove saved cache files from disk
---------------------------------------------------------------------------------

                 Key: CASSANDRA-2325
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2325
             Project: Cassandra
          Issue Type: Improvement
            Reporter: Matthew F. Dennis
            Priority: Minor


the invalidate[Key|Row]Cache calls don't remove the saved caches from disk.

It seems logical that if you are clearing the caches you don't expect them to be reinstantiated with the old values the next time C* starts.

This is not a huge issue since next time the caches are saved the old values will be removed.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-2325) invalidateKeyCache / invalidateRowCache should remove saved cache files from disk

Posted by "Edward Capriolo (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2325?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Edward Capriolo updated CASSANDRA-2325:
---------------------------------------

    Attachment: cassandra-2325-1.patch.txt

Patch off trunk that clears out cache files when invalidate is called

> invalidateKeyCache / invalidateRowCache should remove saved cache files from disk
> ---------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-2325
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2325
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Matthew F. Dennis
>            Assignee: Edward Capriolo
>            Priority: Minor
>         Attachments: cassandra-2325-1.patch.txt
>
>
> the invalidate[Key|Row]Cache calls don't remove the saved caches from disk.
> It seems logical that if you are clearing the caches you don't expect them to be reinstantiated with the old values the next time C* starts.
> This is not a huge issue since next time the caches are saved the old values will be removed.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Resolved] (CASSANDRA-2325) invalidateKeyCache / invalidateRowCache should remove saved cache files from disk

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2325?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis resolved CASSANDRA-2325.
---------------------------------------

       Resolution: Not A Problem
    Fix Version/s:     (was: 0.8.5)
         Assignee:     (was: Edward Capriolo)

> invalidateKeyCache / invalidateRowCache should remove saved cache files from disk
> ---------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-2325
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2325
>             Project: Cassandra
>          Issue Type: Improvement
>    Affects Versions: 0.6
>            Reporter: Matthew F. Dennis
>            Priority: Minor
>         Attachments: cassandra-2325-1.patch.txt, cassandra-2325-3.patch.txt, cassandra-2325.patch.2.txt
>
>
> the invalidate[Key|Row]Cache calls don't remove the saved caches from disk.
> It seems logical that if you are clearing the caches you don't expect them to be reinstantiated with the old values the next time C* starts.
> This is not a huge issue since next time the caches are saved the old values will be removed.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2325) invalidateKeyCache / invalidateRowCache should remove saved cache files from disk

Posted by "Edward Capriolo (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2325?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Edward Capriolo updated CASSANDRA-2325:
---------------------------------------

    Attachment: cassandra-2325.patch.2.txt

> invalidateKeyCache / invalidateRowCache should remove saved cache files from disk
> ---------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-2325
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2325
>             Project: Cassandra
>          Issue Type: Improvement
>    Affects Versions: 0.7.8, 0.8.2
>            Reporter: Matthew F. Dennis
>            Assignee: Edward Capriolo
>            Priority: Minor
>         Attachments: cassandra-2325-1.patch.txt, cassandra-2325.patch.2.txt
>
>
> the invalidate[Key|Row]Cache calls don't remove the saved caches from disk.
> It seems logical that if you are clearing the caches you don't expect them to be reinstantiated with the old values the next time C* starts.
> This is not a huge issue since next time the caches are saved the old values will be removed.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2325) invalidateKeyCache / invalidateRowCache should remove saved cache files from disk

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2325?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13083479#comment-13083479 ] 

Hudson commented on CASSANDRA-2325:
-----------------------------------

Integrated in Cassandra-0.8 #272 (See [https://builds.apache.org/job/Cassandra-0.8/272/])
    cache invalidate removes saved cache files
patch by Ed Capriolo; reviewed by jbellis for CASSANDRA-2325

jbellis : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1156772
Files : 
* /cassandra/branches/cassandra-0.8/CHANGES.txt
* /cassandra/branches/cassandra-0.8/src/java/org/apache/cassandra/db/ColumnFamilyStore.java


> invalidateKeyCache / invalidateRowCache should remove saved cache files from disk
> ---------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-2325
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2325
>             Project: Cassandra
>          Issue Type: Improvement
>    Affects Versions: 0.6
>            Reporter: Matthew F. Dennis
>            Assignee: Edward Capriolo
>            Priority: Minor
>             Fix For: 0.8.5
>
>         Attachments: cassandra-2325-1.patch.txt, cassandra-2325-3.patch.txt, cassandra-2325.patch.2.txt
>
>
> the invalidate[Key|Row]Cache calls don't remove the saved caches from disk.
> It seems logical that if you are clearing the caches you don't expect them to be reinstantiated with the old values the next time C* starts.
> This is not a huge issue since next time the caches are saved the old values will be removed.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2325) invalidateKeyCache / invalidateRowCache should remove saved cache files from disk

Posted by "Edward Capriolo (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2325?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13080194#comment-13080194 ] 

Edward Capriolo commented on CASSANDRA-2325:
--------------------------------------------

@Jonathon,

We could do this

{noformat}
    public void invalidateKeyCache()
    {
        keyCache.clear();
        if (!keyCache.getCachePath().delete()){
        	logger.error("KeyCache "+columnFamily+" delete failed.");
        }
    }
{noformat}

But I am wondering how that effects systems like the Memcache row caching that are not physical files. I was just assuming the other call was more future proof. I will dig into the code a bit.

> invalidateKeyCache / invalidateRowCache should remove saved cache files from disk
> ---------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-2325
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2325
>             Project: Cassandra
>          Issue Type: Improvement
>    Affects Versions: 0.7.8, 0.8.2
>            Reporter: Matthew F. Dennis
>            Assignee: Edward Capriolo
>            Priority: Minor
>         Attachments: cassandra-2325-1.patch.txt
>
>
> the invalidate[Key|Row]Cache calls don't remove the saved caches from disk.
> It seems logical that if you are clearing the caches you don't expect them to be reinstantiated with the old values the next time C* starts.
> This is not a huge issue since next time the caches are saved the old values will be removed.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2325) invalidateKeyCache / invalidateRowCache should remove saved cache files from disk

Posted by "Edward Capriolo (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2325?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Edward Capriolo updated CASSANDRA-2325:
---------------------------------------

    Attachment: cassandra-2325-3.patch.txt

3rd revision of a 4 line patch ::embarrassed::. Thinking about this more logging the message does not make sense. It could happen that the file could be removed by the retention policy just as we are trying to remove it. That is not a condition we need to generate a log message on.

> invalidateKeyCache / invalidateRowCache should remove saved cache files from disk
> ---------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-2325
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2325
>             Project: Cassandra
>          Issue Type: Improvement
>    Affects Versions: 0.6
>            Reporter: Matthew F. Dennis
>            Assignee: Edward Capriolo
>            Priority: Minor
>             Fix For: 0.8.5
>
>         Attachments: cassandra-2325-1.patch.txt, cassandra-2325-3.patch.txt, cassandra-2325.patch.2.txt
>
>
> the invalidate[Key|Row]Cache calls don't remove the saved caches from disk.
> It seems logical that if you are clearing the caches you don't expect them to be reinstantiated with the old values the next time C* starts.
> This is not a huge issue since next time the caches are saved the old values will be removed.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2325) invalidateKeyCache / invalidateRowCache should remove saved cache files from disk

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2325?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-2325:
--------------------------------------

    Affects Version/s:     (was: 0.7.8)
                           (was: 0.8.2)
                       0.6
        Fix Version/s: 0.8.4

> invalidateKeyCache / invalidateRowCache should remove saved cache files from disk
> ---------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-2325
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2325
>             Project: Cassandra
>          Issue Type: Improvement
>    Affects Versions: 0.6
>            Reporter: Matthew F. Dennis
>            Assignee: Edward Capriolo
>            Priority: Minor
>             Fix For: 0.8.4
>
>         Attachments: cassandra-2325-1.patch.txt, cassandra-2325.patch.2.txt
>
>
> the invalidate[Key|Row]Cache calls don't remove the saved caches from disk.
> It seems logical that if you are clearing the caches you don't expect them to be reinstantiated with the old values the next time C* starts.
> This is not a huge issue since next time the caches are saved the old values will be removed.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2325) invalidateKeyCache / invalidateRowCache should remove saved cache files from disk

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2325?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13080198#comment-13080198 ] 

Jonathan Ellis commented on CASSANDRA-2325:
-------------------------------------------

The row cache doesn't actually save row contents, just keys that are re-populated on startup.  (Otherwise every write would have to update the cache file too.)

> invalidateKeyCache / invalidateRowCache should remove saved cache files from disk
> ---------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-2325
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2325
>             Project: Cassandra
>          Issue Type: Improvement
>    Affects Versions: 0.7.8, 0.8.2
>            Reporter: Matthew F. Dennis
>            Assignee: Edward Capriolo
>            Priority: Minor
>         Attachments: cassandra-2325-1.patch.txt
>
>
> the invalidate[Key|Row]Cache calls don't remove the saved caches from disk.
> It seems logical that if you are clearing the caches you don't expect them to be reinstantiated with the old values the next time C* starts.
> This is not a huge issue since next time the caches are saved the old values will be removed.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Assigned] (CASSANDRA-2325) invalidateKeyCache / invalidateRowCache should remove saved cache files from disk

Posted by "Edward Capriolo (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2325?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Edward Capriolo reassigned CASSANDRA-2325:
------------------------------------------

    Assignee: Edward Capriolo

> invalidateKeyCache / invalidateRowCache should remove saved cache files from disk
> ---------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-2325
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2325
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Matthew F. Dennis
>            Assignee: Edward Capriolo
>            Priority: Minor
>
> the invalidate[Key|Row]Cache calls don't remove the saved caches from disk.
> It seems logical that if you are clearing the caches you don't expect them to be reinstantiated with the old values the next time C* starts.
> This is not a huge issue since next time the caches are saved the old values will be removed.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2325) invalidateKeyCache / invalidateRowCache should remove saved cache files from disk

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2325?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13081920#comment-13081920 ] 

Jonathan Ellis commented on CASSANDRA-2325:
-------------------------------------------

Shouldn't we check that the file exists first?  otherwise we log spurious errors.

> invalidateKeyCache / invalidateRowCache should remove saved cache files from disk
> ---------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-2325
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2325
>             Project: Cassandra
>          Issue Type: Improvement
>    Affects Versions: 0.6
>            Reporter: Matthew F. Dennis
>            Assignee: Edward Capriolo
>            Priority: Minor
>             Fix For: 0.8.4
>
>         Attachments: cassandra-2325-1.patch.txt, cassandra-2325.patch.2.txt
>
>
> the invalidate[Key|Row]Cache calls don't remove the saved caches from disk.
> It seems logical that if you are clearing the caches you don't expect them to be reinstantiated with the old values the next time C* starts.
> This is not a huge issue since next time the caches are saved the old values will be removed.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Reopened] (CASSANDRA-2325) invalidateKeyCache / invalidateRowCache should remove saved cache files from disk

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2325?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis reopened CASSANDRA-2325:
---------------------------------------


reopening because it breaks KeyCacheTest

testing is about the only use of invalidate() i can think of anyway, since we keep the cache consistent w/ the data.

should we notaproblem this?

> invalidateKeyCache / invalidateRowCache should remove saved cache files from disk
> ---------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-2325
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2325
>             Project: Cassandra
>          Issue Type: Improvement
>    Affects Versions: 0.6
>            Reporter: Matthew F. Dennis
>            Assignee: Edward Capriolo
>            Priority: Minor
>             Fix For: 0.8.5
>
>         Attachments: cassandra-2325-1.patch.txt, cassandra-2325-3.patch.txt, cassandra-2325.patch.2.txt
>
>
> the invalidate[Key|Row]Cache calls don't remove the saved caches from disk.
> It seems logical that if you are clearing the caches you don't expect them to be reinstantiated with the old values the next time C* starts.
> This is not a huge issue since next time the caches are saved the old values will be removed.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2325) invalidateKeyCache / invalidateRowCache should remove saved cache files from disk

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2325?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13080166#comment-13080166 ] 

Jonathan Ellis commented on CASSANDRA-2325:
-------------------------------------------

My understanding is that hotKeySet() is a fairly expensive call.  Can we refactor out and expose a getCachePath.delete() method instead?

> invalidateKeyCache / invalidateRowCache should remove saved cache files from disk
> ---------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-2325
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2325
>             Project: Cassandra
>          Issue Type: Improvement
>    Affects Versions: 0.7.8, 0.8.2
>            Reporter: Matthew F. Dennis
>            Assignee: Edward Capriolo
>            Priority: Minor
>         Attachments: cassandra-2325-1.patch.txt
>
>
> the invalidate[Key|Row]Cache calls don't remove the saved caches from disk.
> It seems logical that if you are clearing the caches you don't expect them to be reinstantiated with the old values the next time C* starts.
> This is not a huge issue since next time the caches are saved the old values will be removed.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira