2012-10-07 4 views

答えて

8

Objectifyは自動的に500文字以上の文字列をネイティブテキストストレージに変換します。文字列にインデックスを付ける場合は注意してください。テキストオブジェクトは索引付けされないため、> 500文字の文字列は索引付けされません。

+0

が表示されます。文字列が> 500文字でインデックスに登録されていると、保存に失敗します。 com.googlecode.objectify.SaveException:コール情報の保存中にエラーが発生しました::パス 'notes'に:インデックスに登録できない値のインデックスを要求:このための回避策はありますか? – Patrick

4

the documentation、500文字。 Objectifyはラッパーでありデータを変更しないため、データサイズの制限は変わりません。

5

この回答は古くなっていると思いますので、更新しています。私はGAEバージョン1.9.22を使用しており、エラーログでこれを受け取りました。

文字列プロパティはバイト以下である必要があります。代わりに、任意の長さの文字列を格納できるcom.google.appengine.api.datastore.Textを使用します。 com.google.appengine.api.datastore.Textを使用して

はあなたのコードのサーバ側にテキスト(例えば、新しいテキスト(thisString)にStringオブジェクトを変換することにより、うまく機能。com内のライブラリへの参照。 google.appengine.api.datastore。*クライアント側では動作しません。クラスが見つかりません。

0

を10月、2016年からGoogleのデータストアのドキュメントの更新に基づき、ここでの制限はの

最大サイズですインデックス付き文字列プロパティのUTF-8エンコーディング:1,500バイト

インデックス付けされていないプロパティの

最大サイズ:1048487バイト(1つのMIB - 89バイト)

だから、索引付けされていないStringプロパティでサイズが1MBに近い文字列を格納することができます。

関連する問題