Indexes: Indexing Compare Exchange Values
-
Compare exchange values can be loaded within an index using the value's key.
-
The index will update when the compare exchange value is updated, as well as when documents are modified in the indexed collection(s).
-
In this page:
Syntax
For javascript indexes, use the method
cmpxchg(<key>)
.
Parameter | Type | Description |
---|---|---|
key | string |
The key of a particular compare exchange value. |
Examples
These indexes map the rooms in a hotel, as well as compare exchange values representing the guests in those rooms.
class Compare_Exchange_Index extends AbstractCsharpIndexCreationTask {
constructor() {
super();
this.map = `docs.HotelRooms.Select(room => new {
RoomID = room.RoomID,
Guests = cmpxchg(room.RoomID)
})`;
}
}
Querying the Index
const VIPRooms = await session
.advanced.rawQuery<HotelRoom>(
" from Hotelrooms as room\n"+
" where room.Guests == cmpxchg('VIP')"
)