4つのノードで動作するmnesiaクラスタを持っています。テーブル名学生は7個のフラグメントで存在します。 mnesiaの文書によれば、読み込み時に、mnesiaは、キーのハッシュ値から、レコードが属する断片からどれかを判断します。読み込みは、mnesia:activity/4関数を介して行われます。パーティショニングをテストするために、1-512のキーを持つ512レコードを挿入しました。私はサイズのmnesiaの断片化されたテーブルの属性を見ます:table_info/2 in mnesia:activity/4 context;これはフラグメントに512レコードがあることを確認します。 問題は、テーブルに存在する(1-512)の範囲のキーでレコードを読み取ると、そのキーが最初のフラグメントに存在するキーの範囲内にある場合にのみレコードを取得したことです。言い換えれば、記憶喪失は最初の断片からのみ読んでいる。私が間違って何をしたのか分からない。私はあなたの助けが必要です。ありがとうMesia activity/4は最初のフラグメントからのみ読み取ります
0
A
答えて
0
私は問題を発見しました。私はmnesia ダーティーの読み取り操作をmnesia:activity/4関数の機能オブジェクトパラメーターとして使用していました。 AccessContextパラメータでコンテキストを判断できるので、この関数はダーティーなオペレーションではないはずです。例えば。
これは最初のフラグメントから読み取ります
KeysFun = fun() -> mnesia:dirty_all_keys(Tab) end,
mnesia:activity(sync_dirty, KeysFun,[],mod_frag).
これは、すべてのフラグメントから読み取ります
KeysFun = fun() -> mnesia:all_keys(Tab) end,
mnesia:activity(sync_dirty, KeysFun,[],mod_frag).
関連する問題
- 1. NetworkStreamから最初の6バイトを読み込みますか?
- 2. XmlReaderでxmlファイルを読み取ると、最初の要素のみが読み取られます。
- 3. ファイルから最初の数行のテキストのみを読み込みます。
- 4. C++「cin」は最初の単語のみを読み取る
- 5. テキストファイルからの読み込みの最初の文字:
- 6. 私のSQL文はデータベースから最初の行を読み込みます
- 7. 反応ネイティブバーコードスキャナは、最初のコード読み取り後にコードを読み取ることを停止します。
- 8. XMLDocumentから最初のノードを読み取る
- 9. Erlangファイルから最初の5行を読み取る
- 10. Python - txtファイルから最初の2行を読み取る
- 11. open loop on oracle:検索する;現在の読み取り、次の読み取り、最後の読み取り?
- 12. Three.js MTLLoader()は最初のオブジェクトの色のみを読み込みますか?
- 13. 最初のページの読み込みと最初の読み込みボタンをクリックしました。
- 14. Spark Streamingの最初からKafkaトピックからレコードを読み取る方法は?
- 15. Python readline - 最初の行のみを読み取る
- 16. ConfigurationManager.AppSettings最初のキーのみを読み取る
- 17. ネストされたforループ - 最初の "if"ステートメントの読み取りのみ
- 18. 多次元配列の最初の列からSpinnerを読み込みます
- 19. タブ付きフラグメントのみ最初のフラグメントを表示する
- 20. ファイルは、最初の行のみを読み込み、その後
- 21. 削除はリポジトリパターンで最初に読み取る必要がありますか?
- 22. ファイルからの読み取りを試みています。
- 23. ログイン後最初のページの読み込み時に最初のページの読み込み時にコードを追加
- 24. $ http.getリクエストは最初のページの読み込みでのみ成功します
- 25. Yaccはルールの最初の一致のみを読み込みます
- 26. QSqlRelationalTableModelは、最初の256個のレコードのみを取り込みます
- 27. Java GUIアプリケーションでは、サーバーは最初の要求のみを読み取ります。
- 28. jquery masonryはクロム/サファリでブレークします(最初の読み込み時のみ)
- 29. データテーブルのみ最初の行はjqueryを受け取ります。
- 30. Firebase子の最初のデータ値を読み込みます