ConflictResolutionPolicy Klasse
- java.
lang. Object - JsonSerializable
- com.
microsoft. azure. cosmosdb. ConflictResolutionPolicy
- com.
public class ConflictResolutionPolicy extends JsonSerializable
Stellt die Konfliktlösungsrichtlinienkonfiguration dar, in der angegeben wird, wie Konflikte gelöst werden sollen, falls Schreibvorgänge aus verschiedenen Regionen zu Konflikten für Dokumente in der Sammlung im Azure Cosmos DB-Dienst führen.
Eine Sammlung mit benutzerdefinierter Konfliktlösung ohne vom Benutzer registrierte gespeicherte Prozedur.
DocumentCollection collectionSpec = new DocumentCollection();
collectionSpec.setId("Multi-master collection");
ConflictResolutionPolicy policy = ConflictResolutionPolicy.createCustomPolicy();
collectionSpec.setConflictResolutionPolicy(policy);
DocumentCollection collection = client.createCollection(databaseLink, collectionSpec, null)
.toBlocking().single().getResource();
Eine Sammlung mit benutzerdefinierter Konfliktlösung mit einer vom Benutzer registrierten gespeicherten Prozedur.
DocumentCollection collectionSpec = new DocumentCollection();
collectionSpec.setId("Multi-master collection");
ConflictResolutionPolicy policy = ConflictResolutionPolicy.createCustomPolicy(conflictResolutionSprocName);
collectionSpec.setConflictResolutionPolicy(policy);
DocumentCollection collection = client.createCollection(databaseLink, collectionSpec, null)
.toBlocking().single().getResource();
Eine Sammlung mit dem letzten Writer gewinnt die Konfliktlösung basierend auf einem Pfad in den in Konflikt stehenden Dokumenten. Eine Sammlung mit benutzerdefinierter Konfliktlösung mit einer vom Benutzer registrierten gespeicherten Prozedur.
DocumentCollection collectionSpec = new DocumentCollection();
collectionSpec.setId("Multi-master collection");
ConflictResolutionPolicy policy = ConflictResolutionPolicy.createLastWriterWinsPolicy("/path/for/conflict/resolution");
collectionSpec.setConflictResolutionPolicy(policy);
DocumentCollection collection = client.createCollection(databaseLink, collectionSpec, null)
.toBlocking().single().getResource();
Zusammenfassung zum Konstruktor
Konstruktor | Beschreibung | |
---|---|---|
ConflictResolutionPolicy(String jsonString) |
Methodenzusammenfassung
Modifizierer und Typ | Methode und Beschreibung |
---|---|
Conflict |
createCustomPolicy()
Erstellt einen Benutzerdefiniert ConflictResolutionPolicy ohne StoredProcedure. Benutzer sollten Konflikte manuell beheben. Die Konflikte werden im Konfliktfeed registriert, und der Benutzer sollte sie manuell beheben. |
Conflict |
createCustomPolicy(String conflictResolutionSprocName)
Erstellt einen Benutzerdefiniert ConflictResolutionPolicy , der die angegebene gespeicherte Prozedur zum Ausführen der Konfliktlösung verwendet. Diese gespeicherte Prozedur kann erstellt werden, nachdem die DocumentCollection erstellt wurde, und kann bei Bedarf geändert werden.
|
Conflict |
createLastWriterWinsPolicy()
Erstellt einen LastWriterWins-Wert ConflictResolutionPolicy mit "/_ts" als Auflösungspfad. Im Falle eines Konflikts in einem Dokument wird das Dokument mit dem höheren ganzzahligen Wert im Standardpfad getTimestamp()verwendet, d. h. "/_ts". |
Conflict |
createLastWriterWinsPolicy(String conflictResolutionPath)
Erstellt einen LastWriterWins-Wert ConflictResolutionPolicy mit Pfad als Auflösungspfad. Der angegebene Pfad muss in jedem Dokument vorhanden sein und muss ein ganzzahliger Wert sein. Im Falle eines Konflikts mit einem Dokument wird das Dokument mit dem höheren ganzzahligen Wert im angegebenen Pfad ausgewählt. |
Conflict |
getConflictResolutionMode()
Ruft den ConflictResolutionMode im Azure Cosmos DB-Dienst ab. Standardmäßig ist dies LastWriterWins. |
String |
getConflictResolutionPath()
Ruft den Pfad ab, der in jedem Dokument im Azure Cosmos DB-Dienst für den letzten Writer vorhanden ist. Dieser Pfad muss in jedem Dokument vorhanden sein und muss ein ganzzahliger Wert sein. Im Falle eines Konflikts mit einem Dokument wird das Dokument mit dem höheren ganzzahligen Wert im angegebenen Pfad ausgewählt. Wenn der Pfad nicht angegeben ist, wird standardmäßig der getTimestamp() Pfad verwendet. Dieser Wert sollte nur festgelegt werden, wenn LastWriterWins |
String |
getConflictResolutionProcedure()
Ruft die ab, die StoredProcedure für die Konfliktlösung im Azure Cosmos DB-Dienst verwendet wird. Diese gespeicherte Prozedur kann erstellt werden, nachdem die DocumentCollection erstellt wurde, und kann bei Bedarf geändert werden.
|
Geerbte Elemente
Details zum Konstruktor
ConflictResolutionPolicy
public ConflictResolutionPolicy(String jsonString)
Parameter:
Details zur Methode
createCustomPolicy
public static ConflictResolutionPolicy createCustomPolicy()
Erstellt einen Benutzerdefiniert ConflictResolutionPolicy ohne StoredProcedure. Benutzer sollten Konflikte manuell beheben.
Die Konflikte werden im Konfliktfeed registriert, und der Benutzer sollte sie manuell beheben.
Gibt zurück:
createCustomPolicy
public static ConflictResolutionPolicy createCustomPolicy(String conflictResolutionSprocName)
Erstellt einen Benutzerdefiniert ConflictResolutionPolicy , der die angegebene gespeicherte Prozedur zum Ausführen der Konfliktlösung verwendet.
Diese gespeicherte Prozedur kann erstellt werden, nachdem die DocumentCollection erstellt wurde, und kann bei Bedarf geändert werden.
<li>
<p>In case the stored procedure fails or throws an exception, the conflict resolution will default to registering conflicts in the conflicts feed </p>
</li>
<li>
<p>The user can provide the stored procedure </p>
</li>
Parameter:
Gibt zurück:
createLastWriterWinsPolicy
public static ConflictResolutionPolicy createLastWriterWinsPolicy()
Erstellt einen LastWriterWins-Wert ConflictResolutionPolicy mit "/_ts" als Auflösungspfad.
Im Falle eines Konflikts in einem Dokument wird das Dokument mit dem höheren ganzzahligen Wert im Standardpfad getTimestamp()verwendet, d. h. "/_ts".
Gibt zurück:
createLastWriterWinsPolicy
public static ConflictResolutionPolicy createLastWriterWinsPolicy(String conflictResolutionPath)
Erstellt einen LastWriterWins-Wert ConflictResolutionPolicy mit Pfad als Auflösungspfad.
Der angegebene Pfad muss in jedem Dokument vorhanden sein und muss ein ganzzahliger Wert sein. Im Falle eines Konflikts mit einem Dokument wird das Dokument mit dem höheren ganzzahligen Wert im angegebenen Pfad ausgewählt.
Parameter:
Gibt zurück:
getConflictResolutionMode
public ConflictResolutionMode getConflictResolutionMode()
Ruft den ConflictResolutionMode im Azure Cosmos DB-Dienst ab. Standardmäßig ist dies LastWriterWins.
Gibt zurück:
getConflictResolutionPath
public String getConflictResolutionPath()
Ruft den Pfad ab, der in jedem Dokument im Azure Cosmos DB-Dienst für den letzten Writer vorhanden ist. Dieser Pfad muss in jedem Dokument vorhanden sein und muss ein ganzzahliger Wert sein. Im Falle eines Konflikts mit einem Dokument wird das Dokument mit dem höheren ganzzahligen Wert im angegebenen Pfad ausgewählt. Wenn der Pfad nicht angegeben ist, wird standardmäßig der getTimestamp() Pfad verwendet.
Dieser Wert sollte nur festgelegt werden, wenn LastWriterWins
Gibt zurück:
getConflictResolutionProcedure
public String getConflictResolutionProcedure()
Ruft die ab, die StoredProcedure für die Konfliktlösung im Azure Cosmos DB-Dienst verwendet wird. Diese gespeicherte Prozedur kann erstellt werden, nachdem die DocumentCollection erstellt wurde, und kann bei Bedarf geändert werden.
<li>
<p>This value should only be set when using <xref uid="com.microsoft.azure.cosmosdb.ConflictResolutionMode.Custom" data-throw-if-not-resolved="false" data-raw-source="ConflictResolutionMode#Custom"></xref></p>
</li>
<li>
<p>In case the stored procedure fails or throws an exception, the conflict resolution will default to registering conflicts in the conflicts feed </p>
</li>
<li>
<p>The user can provide the stored procedure </p>
</li>
Gibt zurück:
Gilt für:
Azure SDK for Java