2017-02-08 10 views
0

以下のエラーが一見ランダムになってきました。私はレルムオブジェクトをつかんで、それをスクリーンのレンダリングに使用していますが、私は(潜在的に)バックグラウンド(ネットワーキング)スレッドでRealmObjectを更新しています。レルムBadVersionException

私はRealm Java 2.3.0を使用しています。

これをさらに調査する方法についてのヒントは素晴らしいと思います!

Gavさん

java.lang.Error: io.realm.internal.async.BadVersionException: std::exception in /home/cc/repo/realm/realm-java-release/realm/realm-library/src/main/cpp/io_realm_internal_TableQuery.cpp line 1143 
    at io.realm.AndroidNotifier.throwBackgroundException(AndroidNotifier.java:138) 
    at io.realm.RealmQuery.closeSharedRealmAndSendEventToNotifier(RealmQuery.java:2239) 
    at io.realm.RealmQuery.access$000(RealmQuery.java:62) 
    at io.realm.RealmQuery$5.call(RealmQuery.java:2179) 
    at io.realm.RealmQuery$5.call(RealmQuery.java:2153) 
    at io.realm.internal.async.BgPriorityCallable.call(BgPriorityCallable.java:36) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:237) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 
    at java.lang.Thread.run(Thread.java:818) 
Caused by: io.realm.internal.async.BadVersionException: std::exception in /home/cc/repo/realm/realm-java-release/realm/realm-library/src/main/cpp/io_realm_internal_TableQuery.cpp line 1143 
    at io.realm.internal.TableQuery.nativeFindWithHandover(Native Method) 
    at io.realm.internal.TableQuery.findWithHandover(TableQuery.java:448) 
    at io.realm.RealmQuery$5.call(RealmQuery.java:2162) 
    at io.realm.RealmQuery$5.call(RealmQuery.java:2153)  
    at io.realm.internal.async.BgPriorityCallable.call(BgPriorityCallable.java:36)  
    at java.util.concurrent.FutureTask.run(FutureTask.java:237)  
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)  
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)  
    at java.lang.Thread.run(Thread.java:818)  
+0

真実の答えは、オブジェクトストア通知システムをダイレクトコア非同期クエリと一緒に使用しないでください。したがって、非同期クエリは2.4.0が完了するまで少し不安定です。 1.2.0にはこの問題がなかったので悲しいです。 – EpicPandaForce

+0

おめでとうEpicPandaForce。私は2.3.1以来問題はなかったが、それは偶然かもしれない。私は2.4.0のために目を覚まし、何が起こるかを見ていきます。 –

+0

ちょっとエピック、 "オブジェクトストアの通知システムを直接コアの非同期クエリと一緒に使うべきではない"ということをちょっと詳しく説明しますか?私は物事を正しく構成していないのか、それともRealmにとって何か内部的なものなのか疑問に思っていますか? –

答えて

0

ステップ1:プロジェクトレベルのbuild.gradleファイルに次のクラスパスの依存関係を追加します。

`buildscript {

repositories { 

    jcenter() 

} 

dependencies { 

    classpath "io.realm:realm-gradle-plugin:2.3.0" 

} 

}`

ステップ2:アプリケーション・レベルのbuild.gradleファイルの先頭にレルムのAndroidプラグインを適用します。

+0

あなたの答えをありがとう、私は領域が稼働している(それは素晴らしいDBです!)。私はちょうどこのイライラした問題を毎回繰り返しています(現在、テスト2.3.1が私を助けてくれるかどうかを確認しています)。 –