[
https://issues.apache.org/jira/browse/CASSANDRA-18862?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Stefan Miklosovic updated CASSANDRA-18862:
------------------------------------------
Description:
Sometimes I see this in the logs:
{code}
INFO [loadSavedCache:1] 2023-09-18 08:53:05,395 AutoSavingCache.java:214 -
Reading saved cache:
/home/fermat/dev/cassandra/cassandra-instaclustr/cassandra/data/saved_caches/KeyCache-g.db,
/home/fermat/dev/cassandra/cassandra-instaclustr/cassandra/data/saved_caches/KeyCache-g.crc,
/home/fermat/dev/cassandra/cassandra-instaclustr/cassandra/data/saved_caches/KeyCache-g.metadata
INFO [loadSavedCache:1] 2023-09-18 08:53:05,403 AutoSavingCache.java:277 -
Harmless error reading saved cache
/home/fermat/dev/cassandra/cassandra-instaclustr/cassandra/data/saved_caches/KeyCache-g.db
java.lang.RuntimeException: Cache schema version
e40b993e-88c0-314c-8a5e-c76871f0a144 does not match current schema version
f1884cc9-7d66-3b5f-85e5-4bc0d647c885
at
org.apache.cassandra.cache.AutoSavingCache.loadSaved(AutoSavingCache.java:228)
at org.apache.cassandra.concurrent.FutureTask.call(FutureTask.java:61)
at org.apache.cassandra.concurrent.FutureTask.run(FutureTask.java:71)
at
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at
io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Thread.java:829)
{code}
Well if the log says it is harmless, why do we need to log the exception? There
is no reason to print that stacktrace, it is just enough to print the
mismatching versions. It should be also changed from INFO to WARN, or maybe
better to DEBUG? I mean ... it is harmless, right? Why should I see, by
default, that something harmless has happened?
was:
Sometimes I see this in the logs:
{code}
INFO [loadSavedCache:1] 2023-09-18 08:53:05,395 AutoSavingCache.java:214 -
Reading saved cache:
/home/fermat/dev/cassandra/cassandra-instaclustr/cassandra/data/saved_caches/KeyCache-g.db,
/home/fermat/dev/cassandra/cassandra-instaclustr/cassandra/data/saved_caches/KeyCache-g.crc,
/home/fermat/dev/cassandra/cassandra-instaclustr/cassandra/data/saved_caches/KeyCache-g.metadata
INFO [loadSavedCache:1] 2023-09-18 08:53:05,403 AutoSavingCache.java:277 -
Harmless error reading saved cache
/home/fermat/dev/cassandra/cassandra-instaclustr/cassandra/data/saved_caches/KeyCache-g.db
java.lang.RuntimeException: Cache schema version
e40b993e-88c0-314c-8a5e-c76871f0a144 does not match current schema version
f1884cc9-7d66-3b5f-85e5-4bc0d647c885
at
org.apache.cassandra.cache.AutoSavingCache.loadSaved(AutoSavingCache.java:228)
at org.apache.cassandra.concurrent.FutureTask.call(FutureTask.java:61)
at org.apache.cassandra.concurrent.FutureTask.run(FutureTask.java:71)
at
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at
io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Thread.java:829)
{code}
Well if the log says it is harmless, why do we need to log the exception? There
is no reason to print that stacktrace, it is just enough to print the
mismatching versions. It should be also changed from INFO to WARN, or maybe
better to DEBUG? I mean ... it is harmless, right?
> Fix logging / exception output on mismatched cache and schema version
> ---------------------------------------------------------------------
>
> Key: CASSANDRA-18862
> URL: https://issues.apache.org/jira/browse/CASSANDRA-18862
> Project: Cassandra
> Issue Type: Improvement
> Components: Local/Caching
> Reporter: Stefan Miklosovic
> Priority: Normal
>
> Sometimes I see this in the logs:
> {code}
> INFO [loadSavedCache:1] 2023-09-18 08:53:05,395 AutoSavingCache.java:214 -
> Reading saved cache:
> /home/fermat/dev/cassandra/cassandra-instaclustr/cassandra/data/saved_caches/KeyCache-g.db,
>
> /home/fermat/dev/cassandra/cassandra-instaclustr/cassandra/data/saved_caches/KeyCache-g.crc,
>
> /home/fermat/dev/cassandra/cassandra-instaclustr/cassandra/data/saved_caches/KeyCache-g.metadata
> INFO [loadSavedCache:1] 2023-09-18 08:53:05,403 AutoSavingCache.java:277 -
> Harmless error reading saved cache
> /home/fermat/dev/cassandra/cassandra-instaclustr/cassandra/data/saved_caches/KeyCache-g.db
> java.lang.RuntimeException: Cache schema version
> e40b993e-88c0-314c-8a5e-c76871f0a144 does not match current schema version
> f1884cc9-7d66-3b5f-85e5-4bc0d647c885
> at
> org.apache.cassandra.cache.AutoSavingCache.loadSaved(AutoSavingCache.java:228)
> at org.apache.cassandra.concurrent.FutureTask.call(FutureTask.java:61)
> at org.apache.cassandra.concurrent.FutureTask.run(FutureTask.java:71)
> at
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
> at
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
> at
> io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
> at java.base/java.lang.Thread.run(Thread.java:829)
> {code}
> Well if the log says it is harmless, why do we need to log the exception?
> There is no reason to print that stacktrace, it is just enough to print the
> mismatching versions. It should be also changed from INFO to WARN, or maybe
> better to DEBUG? I mean ... it is harmless, right? Why should I see, by
> default, that something harmless has happened?
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]