✒️SAP BASIS El proceso de bloqueo
SAP BASIS El proceso de bloqueo
Unidad 2
Leccion 6
Transacciones de base de datos
Desde la perspectiva de BD, cada paso de dialogo forma una unidad fisica y logica: el sistema de base de datos.
Transacciones SAP
las transacciones SAP se forman por una secuencia logica de pasos de trabajo relacionados que son consistentes en terminos de negocio, los cuales se forman generalmente de varios paso de dialogo.
El sistema SAP necesita administrar su propio concepto de BLOQUEO. Esto se logra utilizando el work process de enqueue (encolado). Esto tambien asegura la independia de la plataforma utilizada para el sistema.
Sistema de bloqueo SAP
El bloqueo de SAP funciona sobre el principio de que los programas SAP realizan entrada de registros en la tabla de bloqueo (lock table).
Solo puede generarse nuevas entradas en la tabla sino existen otras ya para el objeto que intenta bloquearse.
Enqueue work process
Este maneja los BLOQUEOS LOGICOS de las transacciones de SAP de la tabla de bloqueos.
Esta tabla se situa en la memoria principal de la instancia donde el proceso corre.
Un work process de dialogo que corre en la misma instacia que el enqueue work process puede acceder directamente a la tabla de bloqueo en la memoria principal para chequear si un nuevo bloqueo puede generarse, esto es, si no ocurrira un conflicto con un bloqueo ya establecido.
al crearse un bloqueo el work process de dialogo creara una entrada a la tabla y se le entregara una llave (key) al usuario la cual se mantiene en la memoria de contexto de usuario.
Si el work process de dailogo y el enqueue work process corren en diferentes instancias se comunicaran a traves del message server. En ese caso la solicitud de bloqueo se reenvia desde el work process de dialogo al enqueue work process atraves de los respectivos dispatcher y message server.
Modos de bloqueos
El sistema verifica si el bloqueo generara un conflictocon alguna de las entradas que ya pudiesen existir en la tabla, si eso ocurre la solicitud de bloqueo es rechazada.
Los desarrolladores son quienes deciden el modo de bloqueo para la aplicacion:
- Bloqueo de escritura Exclusivo (exclusive write lock): denominado con la letra E en la tabla de los bloqueos. los datos solo pueden ser editados por un usuario. E rechaza cualquier otro tipo de bloqueo por otra transaccion.
- Bloqueo de Lectura compartido (shared lock mode): estos bloqueos se identifican con la letra S en la tabla de bloqueo. Se aceptan solicitudes adicionales de lectura. Una solicitud de escritura es rechazada
- Bloqueo de Escritura mejorado (exclusive noncumulative write lock): identificado con la letra X , solo pude ser solicitado una vez, todas las demas solicitudes se rechazan.
- Bloqueo optimistico (optimistic lock): identificado con la letra O, al comienzo se establecen como bloqueos de lectura y luego pueden transformarse en bloqueos de escritura. Permite bloqueos adicionales del mismo tipo sobre un objeto
Cuando un usuario pasa al modo de modificacion en una transaccion el bloqueo pasa a tipo E. si otros bloqueos son de tipo O existen sobre el objeto estos son eliminados de la tabla.
La transaccion estandar SM12 se utiliza para la revision de bloqueos.
 
 
 
Sobre el autor
Publicación académica de Mavis Josselyn Aceituno Garcia, en su ámbito de estudios para la Carrera Consultor Basis NetWeaver.
Mavis Josselyn Aceituno Garcia
Profesión: Lic. Informatica Administrativa - Honduras - Legajo: SP40K
✒️Autor de: 13 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Mavis Aceituno