2022.03.01

Couchbase

Couchbase Lite Java 3.0.0 GA版(リリース日:2022年2月)

重要
2.xリリースからアップグレードすると、全てのCouchbase Liteデータベースは、
最初にデータベースを開いた時に自動的にインデックスが再作成されます。
これにより、データベースが使用可能になるまでに遅延が発生する可能性があります。
新機能
<SQL++/N1QL クエリ文字列>
Couchbase LiteのSQL++ for MobileクエリAPIは、
ハイブリッド/クロスプラットフォームアプリ内での
Couchbase Liteの統合を大幅に簡素化します。
N1QL for Mobileは、新しいSQL-for-JSONクエリ言語仕様(SQL++)の実装です。
ネイティブ、ハイブリッド、クロスプラットフォームのモバイルアプリ開発者に、
SQLベースの構文を使用して組み込みデータベース内のJSONドキュメントに
クエリするための一貫性のある便利で柔軟なインターフェイスを提供します。
これは、開発者がプラットフォーム間でクエリを再利用できることを意味し、
開発、テスト、およびメンテナンスのコストを削減します。
改善点
<チャネルアクセス取り消しの自動パージ>
チャネルとその中のドキュメントへのアクセスの喪失のために、自動パージ機能が
導入されています。これは、データガバナンスとデータ保持ポリシーの実施にとって
重要です。
チャネルは、Sync Gatewayを使用してアクセス制御を実施するための基本的なメカニズム
です。特定のチャネルにアクセスできるユーザーのみがそのチャネルのドキュメントに
アクセスできることを保証します。
ユーザーがチャネル(およびそのドキュメント)にアクセスできなくなると、
Couchbase Liteクライアントは、取り消されたチャネルに属するデバイス上の全ての
ローカルドキュメントを自動パージします(PullまたはPushAndPullレプリケーション中)。
ユーザーが他のチャネルを介してドキュメントにアクセスできない場合を除きます。
<JSONデータのドキュメントAPIサポート>
Couchbase Lite APIは、JSON形式のドキュメントデータのための追加設定なしの
サポートを提供するようになりました。これにより、開発者のアプリケーションが
データベース内のJSONデータを簡単に保存、変換、操作できるようになります。
APIは、Documents、MutableDocuments、Arrays、MutableArrays、
Dictionaries、MutableDictionaries、Query Resultsに対して
JSONサポートを提供します。
<レプリケータ変更リスナー>
APIが拡張され、レプリケータを再起動しなくても、いつでもレプリケータリスナーを
追加できるようになりました。
その他の改善点
・CBL-2645 – リチウムをRC-1 LiteCoreに更新
・CBL-2634 – データベースのsaveBlob()およびgetBlob() APIのサポートレベルと
 メッセージノートを更新
・CBL-2630 – 最新のLiteCoreに更新
・CBL-2628 – ソケットを開いた時にSELECTを使用しないように変更
・CBL-2551 – エラーコードの説明を追加
・CBL-2481 – CouchbaseLiteExceptionをスローするように
 database.createQuery(String query)署名を変更
・CBL-2408 – Fleece.hにkFLUndefinedValue定数を追加
・CBL-2383 – 全てのデータベースオープン接続を閉じるのに十分な時間を
 確保するために、kOtherDBCloseTimeoutSecsを増やす
・CBL-2379 – 間違った暗号化キーを使用してデータベースをコピーする時の
 ログメッセージを改善
・CBL-2358 – JSONからFLMutableDict/Arrayを作成するための関数を追加
・CBL-2292 – モバイルn1qlテストスイートを更新
・CBL-2064 – Encrypted Property(暗号化されたプロパティ)機能を実装
・CBL-2040 – QueryBuilderのATAN2(X, Y)をATAN2(Y, X)に変更
・CBL-1948 – ネイティブコンパニオンをもつオブジェクトをAutoClosableにする
・CBL-1941 – maxRetriesは、現在、再試行ではなく試行をカウントすべきである
・CBL-1935 – 非推奨のLiteCoreメソッドを削除
・CBL-1873 – 拡張設定API
・CBL-1786 – clangからのunknown-warning-option警告を無視
・CBL-1763 – kErrTruncatedJSONがkFLNoErrorを返している
・CBL-1757 – CBL SQL++機能
・CBL-1744 – 同時テストでの起動タイマーの修正
・CBL-1714 – POSIXエラードメインコードをプラットフォームに依存しないように
 リファクタリングする
・CBL-1666 – アプリがSQLiteインデックスの最適化を直接トリガーできるようにする
・CBL-1650 – 削除リビジョンがCBLに既に存在する場合、CBLはチャネル削除を
 パージしない
・CBL-1584 – レプリケータ再試行ロジック
・CBL-1581 – プロパティキーを予約
・CBL-1522 – SQL++:NULLまたはMISSINGリテラルを追加
・CBL-1350 – Replicator.resetCheckpoint() APIを非推奨
・CBL-1232 – kC4ReplicatorOptionProgressLevelを変更するための関数をサポート
・CBL-1049 – レプリケータが解放された時のゼロフリースオプション
・CBL-911 – WindowsでDEBUGコンソールとファイルロギングを使用すると、
 Couchbase Lite Javaレプリケーションがハングする
・CBL-429 – アクターにキューに入れられたメソッドをログに記録する方法を作成

Couchbase Lite Java 3.0.0 リリースノート(Couchbase社ウェブサイト):
https://docs.couchbase.com/couchbase-lite/3.0/java/releasenotes.html

Couchbaseサブスクリプション

CouchbaseCouchbaseサブスクリプションは、データベースSEによる日本語でのテクニカルサポートを付属した、公式サブスクリプションサービスです。

Couchbaseの詳細