<P> The main categories of concurrency control mechanisms are: </P> <Ul> <Li> Optimistic - Delay the checking of whether a transaction meets the isolation and other integrity rules (e.g., serializability and recoverability) until its end, without blocking any of its (read, write) operations ("...and be optimistic about the rules being met ..."), and then abort a transaction to prevent the violation, if the desired rules are to be violated upon its commit . An aborted transaction is immediately restarted and re-executed, which incurs an obvious overhead (versus executing it to the end only once). If not too many transactions are aborted, then being optimistic is usually a good strategy . </Li> <Li> Pessimistic - Block an operation of a transaction, if it may cause violation of the rules, until the possibility of violation disappears . Blocking operations is typically involved with performance reduction . </Li> <Li> Semi-optimistic - Block operations in some situations, if they may cause violation of some rules, and do not block in other situations while delaying rules checking (if needed) to transaction's end, as done with optimistic . </Li> </Ul> <Li> Optimistic - Delay the checking of whether a transaction meets the isolation and other integrity rules (e.g., serializability and recoverability) until its end, without blocking any of its (read, write) operations ("...and be optimistic about the rules being met ..."), and then abort a transaction to prevent the violation, if the desired rules are to be violated upon its commit . An aborted transaction is immediately restarted and re-executed, which incurs an obvious overhead (versus executing it to the end only once). If not too many transactions are aborted, then being optimistic is usually a good strategy . </Li> <Li> Pessimistic - Block an operation of a transaction, if it may cause violation of the rules, until the possibility of violation disappears . Blocking operations is typically involved with performance reduction . </Li>

Describe the lock based concurrency control in detail