cassandra.bat выбрасывает java.io.IOException: не удалось переименовать LocationInfo-e -1-Data.db в 0.7rc1 - PullRequest
1 голос
/ 27 ноября 2010

Я следовал инструкциям Getting Started для одного узла, и он хорошо работал в cassandra-0.7beta2.Но при попытке сделать то же самое для cassandra-0.7rc1 он выдает следующую трассировку стека:

INFO 20:21:37,771 Starting up server gossip
 INFO 20:21:37,786 switching in a fresh Memtable for LocationInfo at CommitLogContext(file='/var/lib
/cassandra/commitlog\CommitLog-1290885697489.log', position=700)
 INFO 20:21:37,786 Enqueuing flush of Memtable-LocationInfo@29247351(227 bytes, 4 operations)
 INFO 20:21:37,786 Writing Memtable-LocationInfo@29247351(227 bytes, 4 operations)
ERROR 20:21:38,161 Fatal exception in thread Thread[FlushWriter:1,5,main]
java.io.IOError: java.io.IOException: rename failed of D:\var\lib\cassandra\data\system\LocationInfo-e-1-Data.db
        at org.apache.cassandra.io.sstable.SSTableWriter.rename(SSTableWriter.java:214)
        at org.apache.cassandra.io.sstable.SSTableWriter.closeAndOpenReader(SSTableWriter.java:184)
        at org.apache.cassandra.io.sstable.SSTableWriter.closeAndOpenReader(SSTableWriter.java:167)
        at org.apache.cassandra.db.Memtable.writeSortedContents(Memtable.java:161)
        at org.apache.cassandra.db.Memtable.access$000(Memtable.java:49)
        at org.apache.cassandra.db.Memtable$1.runMayThrow(Memtable.java:174)
        at org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:662)
Caused by: java.io.IOException: rename failed of D:\var\lib\cassandra\data\system\LocationInfo-e-1-Data.db
        at org.apache.cassandra.utils.FBUtilities.renameWithConfirm(FBUtilities.java:359)
        at org.apache.cassandra.io.sstable.SSTableWriter.rename(SSTableWriter.java:210)
        ... 12 more

Кто-то опубликовал эту проблему в списке рассылки cassandra .Кажется, есть проблема при попытке переименовать файлы tmp (например, LocationInfo-tmp-e-1-Data.db).Это происходит в FBUtilities.java:

public static void renameWithConfirm(String tmpFilename, String filename) throws IOException
    {
        if (!new File(tmpFilename).renameTo(new File(filename)))
        {
            throw new IOException("rename failed of " + filename);
        }
    }

Следует отметить, что File.renameTo (), как известно, забавно работает в Windows.

В любом случае ... Справка?

1 Ответ

1 голос
/ 28 ноября 2010

Пожалуйста, создайте отчет об ошибке здесь: https://issues.apache.org/jira/browse/CASSANDRA

...