Serializzazione e accodamento di transazioni concorrenti, transazioni esplicite
Una transazione esplicita è una transazione inquadrata in un'istruzione " BEGIN. Se il sistema raggiunge un limite di 63 transazioni simultanee di lettura/scrittura, le nuove richieste di transazione inquadrate da un'istruzione " BEGIN vengono messe in coda finché le transazioni simultanee non scendono sotto le 63, a quel punto sono consentite le operazioni di modifica dei dati.
Anche una transazione esplicita di sola lettura che emette solo istruzioni " SELECT si accoda, a meno che non venga eseguito un " SET SESSION READ ONLY nella sessione prima dell'istruzione " BEGIN.
La tabella seguente riassume le differenze di risposta del sistema nell'accodamento delle transazioni implicite ed esplicite quando il numero di transazioni di lettura/scrittura raggiunge 63. Nella tabella, si noti il significato dei seguenti simboli.
- X = inizia l'esecuzione
- E = messaggio di errore
- Q = code di richiesta
| Implicito | Esplicito begin_queue_if_full=T (predefinito) | Explicit begin_queue_if_full=T imposta la sessione in sola lettura | Esplicito begin_queue_if_full=F | |
|---|---|---|---|---|
| INIZIA | Non applicabile | Q | X (solo lettura) | X (solo lettura) |
| SELEZIONA | X | X (dopo i proventi di BEGIN) | X | X |
| CREA | X | X | E | E |
| CREARE UNA TABELLA COME | X | X | E | E |
| RILASCIA | X | X | E | E |
| troncare | X | X | E | E |
| INSERISCI | Q | X | E | E |
| ELIMINA | Q | X | E | E |
| AGGIORNA | Q | X | E | E |
| CREARE/MODIFICARE UNA TABELLA TEMPORANEA | X | X | X | X |