Dear Wiki user, You have subscribed to a wiki page or wiki category on "Cassandra Wiki" for change notification.
The "FAQ_JP" page has been changed by MakiWatanabe. The comment on this change is: Translate cleaning_compacted_tables, jna. http://wiki.apache.org/cassandra/FAQ_JP?action=diff&rev1=77&rev2=78 -------------------------------------------------- * [[#unsubscribe|メーリングリストの配信を停止するにはどうしたらいいですか?]] * [[#cleaning_compacted_tables|Compactionを実行してもディスク使用量が減らないのはなぜでしょうか?]] * [[#mmap|topコマンドの出力で,CassandraがJava heapの最大値よりも大きなメモリを使用しているのはなぜでしょうか?]] - * [[#jna|I'm getting java.io.IOException: Cannot run program "ln" when trying to snapshot or update a keyspace]] + * [[#jna|Keyspaceを更新したり、スナップショットをとろうとしたときに java.io.IOException: Cannot run program "ln" が発生します]] <<Anchor(cant_listen_on_ip_any)>> == CassandraはListenAddress設定で何故0.0.0.0(全アドレス)でリッスンできないのですか? == @@ -449, +449 @@ <<Anchor(cleaning_compacted_tables)>> == Compactionを実行してもディスク使用量が減らないのはなぜでしょうか? == - SSTables that are obsoleted by a compaction are deleted asynchronously when the JVM performs a GC. You can force a GC from jconsole if necessary, but Cassandra will force one itself if it detects that it is low on space. A compaction marker is also added to obsolete sstables so they can be deleted on startup if the server does not perform a GC before being restarted. Read more on this subject [[http://wiki.apache.org/cassandra/MemtableSSTable|here]]. - + compactionによって不要になったSSTableはJVMがGCを実行する際に非同期的に削除されます。必要ならjconsoleで強制的にGCさせることもできますが、Cassandraは空きスペースが少なくなれば自動的にGCを実行します。 + 不要になったsstableにはcompactionマーカーが付与されます。GCが実行される前にサーバーがリスタートした場合、起動時にこれらのsstableを削除します。 + 詳細については[[MemtableSSTable_JP|MemtableSSTable]]を参照してください。 <<Anchor(mmap)>> @@ -463, +464 @@ <<Anchor(jna)>> - == I'm getting java.io.IOException: Cannot run program "ln" when trying to snapshot or update a keyspace == - Updating a keyspace first takes a snapshot. This involves creating hardlinks to the existing SSTables, but Java has no native way to create hard links, so it must fork "ln". When forking, there must be as much memory free as the parent process, even though the child isn't going to use it all. Because Java is a large process, this is problematic. The solution is to install [[http://jna.java.net/|Java Native Access]] so it can create the hard links itself. + == Keyspaceを更新したり、スナップショットをとろうとしたときに java.io.IOException: Cannot run program "ln" が発生します。 == + Keyspaceを更新する場合、最初にスナップショットが取られます。これには既存のSSTあbれへのはーどりんくを生成することも含まれますが、Javaにはハードリンクをネイティブで生成する機能がないため、"ln"をforkする必要があります。forkを実行する際には、例え子プロセスがそのすべてを使用しないとしても親プロセスと同じ大きさのフリーメモリが必要です。Javaは巨大なプロセスですので、これは難しい問題です。解決策は[[http://jna.java.net/|Java Native Access]]をインストールし、ハードリンクの生成をネイティブで実行することです。
