問題タブ [couchbase-sync-gateway]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
couchbase - Couchbase Mobile で特定のチャネルの交差のみを複製する方法
私のアプリケーションには、A、B、C、D の 4 つのチャネルがあります。一部のアプリケーション ユーザーは、チャネル A と B の両方に含まれるドキュメントのみに関心があります。次のように表現することもできますA ∩ B
。他の人は、次のような別の組み合わせに興味があるかもしれません: A ∩ B ∩ D
.
アップデート
とにかく次はうまくいかないと思います
これまでに提案されたのは、組み合わせごとに新しいチャネル (A_B や A_B_D など) を作成し、それに応じて交差基準を満たすドキュメントにタグを付けることができるということです。しかし、たった 4 つのチャネルで 15 の組み合わせ (11 の余分なチャネル) になるため、これがいかに簡単に手に負えなくなるかがわかります。
チャネルまたはおそらくCouchbaseで見逃した他の機能でこれを行う方法はありますか?
synchronization - PouchDB 同期での複数のリクエスト
同期機能を備えたCouchbase Sync Gateway 1.2でPouchDB 5.3を使用しています。小さなレコード セット (20 .. 50) を使用する場合、問題なく動作します。しかし、3K を使用すると問題が発生します。最初に同期しようとすると、サーバーへの要求が約 17K になるためです。
これは、この問題のある構成です。
また、この 17k リクエストがいつ完了したかを検出することはできません。
live メソッドを false に設定すると、約 3k のリクエストしかありませんが、その後、両側のいずれかで何らかの変更が加えられたときに同期できません。
これは、繰り返されるリクエストのセットです (異なる uuid を使用)
この 17k リクエストを防ぐ方法について何か考えはありますか??
そして、これが必須である場合、一度検出する方法についてのアイデアはありますか?
ありがとう!
https://github.com/pouchdb/pouchdb/issues/4975でこの問題に従ってください
android - カウチベースのレプリケーション中にレプリケートされたリビジョンを保持するには?
私の Android アプリでは、sync_gateway でプル レプリケーションをセットアップしました。
特定のアプリのロジックにより、競合が検出されるたびに、サーバーからレプリケートされたドキュメントのリビジョンだけを保持する必要があります。
どの競合バージョンがレプリケーション (サーバー) からのもので、どれがローカル変更 (モバイル アプリ) からのものかを定義できます。
複製リビジョンからのデータを使用してトゥームストーンと新しいリビジョンを作成すると (これが推奨されるアプローチです)、ローカル リビジョン ID がサーバー上の ID とは常に異なるため、継続的な競合が発生します (選択に使用される新しいリビジョンはすべて、 currentRevision の ID は異なります)。
私の最善の解決策は、サーバーのリビジョンのみを現在のリビジョンとして保持し、他のリビジョンを破棄することです。
これどうやってするの?
リビジョンをパージすることは可能ですか? または、サーバーのリビジョンのみを含むオブジェクトを作成して、競合の解決後に競合のない他のプルがドキュメントを更新するようにすることは可能ですか? オーバーライドに似た動作が必要です。
apache-spark - Spark Couchbase コネクタ DCP
DCP ベースのストリーミングが Spark Couchbase 公式コネクタで安定しているかどうかを知りたいですか? ドキュメントには、まだ本番環境で使用する準備ができていないと記載されています。Java の例はありますか?
また、私が解決しようとしているユースケースと、スパークコネクタがここで意味があるかどうかについて誰かが光を当てることができれば:
いくつかのバッジに関する更新情報は、couchbase lite db から同期ゲートウェイに毎日届きます。現在、10 日間のウィンドウで、誰かが 5 つ以上のバッジを獲得した場合、お祝いのバッジをプッシュする必要があります。これは、10 日ごとに行う必要があります。
そこで、私が計画していたのは、DCP を使用して、毎日変更を確認し、ジョブを実行してから同期ゲートウェイにプッシュすることでした。10 日以内に 5 つ以上のバッジを獲得した場合は、それを同期ゲートウェイにプッシュします。
これはこれを行う正しい方法ですか、それともこれを行うためのより良い方法はありますか?
使用できるもう1つのことは次のとおりです。
では、どのアプローチがここでより良いでしょうか?
couchbase - リモート同期ゲートウェイでプル レプリケーション (または同期) が失敗する
私は現在、CouchBase lite 同期機能 (Java アプリケーションを使用) を理解するために PoC に取り組んでいます。同期ゲートウェイが私のマシンでローカルに実行されている場合、プルとプッシュのレプリケーションはまったく問題なく機能しました。
同期ゲートウェイをリモート マシンに移動すると、プル レプリケーターが機能しません。しかし、プッシュはうまく機能します。クライアントの次のログから、プル レプリケーターで何らかのエラーが発生したようです。
以下は私のsync-gatewayログです
さらに、私は Cookie 認証を使用しており、以下は私の同期ゲートウェイ構成です。
誰が何が間違っているのか考えていますか?