Skip to content

Commit

Permalink
Fix typo (#468)
Browse files Browse the repository at this point in the history
  • Loading branch information
timothycoleman authored May 6, 2021
1 parent 5bbef60 commit ebe4c31
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion docs/_docs/20-fasterkv-basics.md
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ Apart from Key and Value, the IFunctions interface is defined on three additiona
`IFunctions<>` encapsulates all callbacks made by FASTER back to the caller, which are described next:

1. SingleReader and ConcurrentReader: These are used to read from the store values and copy them to Output. Single reader can assume that there are no concurrent operations on the record.
2. SingleWriter and ConcurrentWriter: These are used to write values to the store, from a source value. Concurrent writer can assume that there are no concurrent operations on the record.
2. SingleWriter and ConcurrentWriter: These are used to write values to the store, from a source value. Single writer can assume that there are no concurrent operations on the record.
3. Completion callbacks: Called by FASTER when various operations complete after they have gone "pending" due to requiring IO.
4. RMW Updaters: There are three updaters that the user specifies, InitialUpdater, InPlaceUpdater, and CopyUpdater. Together, they are used to implement the RMW operation.
5. Locking: There is one property and two methods; if the SupportsLocking property returns true, then FASTER will call Lock and Unlock within a try/finally in the four concurrent callback methods: ConcurrentReader, ConcurrentWriter, ConcurrentDeleter (new in IAdvancedFunctions), and InPlaceUpdater. FunctionsBase illustrates the default implementation of Lock and Unlock as an exclusive lock using a bit in RecordInfo.
Expand Down

0 comments on commit ebe4c31

Please sign in to comment.