3

システムの新しいシャードを作成する際に問題が発生しました。2 つのシャードを持つ、既にシャード化されたデータベースがあります。

0-280000
280000-inf

Microsoft が提供するこのアプリケーションを使用しています。

上記のアプリを使用してシャードの追加を選択し、新しいシャードを追加して新しいハイキーとして 400000 を入力しようとすると、操作が実行され、最後に範囲マッピングを追加しようとすると、次のエラーが発生します。

エラー

{「シャード マップ 'UserID' 内のシャード '[DataSource=xxxxxxxxxxxxxx Database=xxxxxx]' を参照するマッピングは、それがカバーする範囲が既に別のマッピングによってマップされているため、追加できません。オペレーションのストアド プロシージャ '__ShardManagement.spBulkOperationShardMappingsGlobalBegin' の実行中にエラーが発生しました'AddRangeMapping'. これは、別の同時ユーザーが指定された範囲をカバーするマッピングを既に追加している場合に発生する可能性があります。"}

この点でどんな助けでも大歓迎です。

4

1 に答える 1

5

2 番目のシャードが実際には 280000-inf であり、inf が無限を意味する場合、受け取ったエラーは正しいです。2 番目のシャードには、400000 のマッピングが既に含まれています。シャードを追加する代わりに、2 番目のシャードを分割する必要があります。代わりに分割マージツールを確認してください。

于 2015-10-16T11:47:30.607 に答える