✒️SAP BASIS El proceso de bloqueo
SAP BASIS El proceso de bloqueo
El Proceso de Bloqueo
Para asegurar la consistencia de los datos, se requiere de un administrador de bloqueos para impedir que varios usuarios puedan modificar los datos simultáneamente. Este administrador, en SAP se llama Lock Management.
Transacciones SAP
SAP usa los work process para llevar a cabo las tareas de bloqueo y asegurar la independencia del sistema.
Sistema de Bloqueo SAP
El sistema de bloqueo funciona con una tabla de bloqueo (Lock Table) que genera nuevas entradas siempre y cuando no existan entradas existentes para el objeto que intenta bloquearse
Enqueue Work Process
El Enqueue Work Process maneja los bloqueos lógicos de las transacciones SAP en la Tabla de Bloqueo. Esta Tabla está en la memoria principal de la instancia.
Un Work Process que corre en la misma instancia que el Enqueue Work Process accede a la Tabla de Bloqueo para comprobar si puede efectuar un nuevo bloqueo. Si puede efectuarse, el Work Process crea la entrada en la tabla.
Si el Work Process y el Enqueue Work Process corren en diferentes instancias, se comunicarán a través del Message Server. La solicitud de bloqueo se envía desde el Work Process al Enqueue Work Process a través de los Dispatchers y Message Server. Ahora es el Enqueue Work Process el encargado de confirmar si puede generarse un bloqueo en la Tabla.
Modos de Bloqueo
Cuando se solicita el bloqueo, el sistema comprueba si ya existe alguna entrada, s existe la solicitud es rechazada.
Los desarrolladores deciden el modo de bloqueo:
-
Bloqueo de Escritura Exclusivo (Exclusive Write Lock): identificado con la letra “E” en la Tabla de Bloqueo. El modo Exclusivo (E) rechaza cualquier tipo de bloqueo por otra transacción
-
Bloqueo de Lectura Compartido (Shared Lock Mode): identificado con la letra “S” en la Tabla de Bloqueo. Se aceptan solicitudes de lectura, las de escritura son rechazadas
-
Bloqueo de Escritura Mejorado (Exclusive Non Cumulative Write Lock): identificado con la letra “X” en la Tabla de Bloqueo. Solo puede ser solicitado una vez, todas las demás solicitudes se rechazan
-
Bloqueo Optimístico (Optimistic Lock): identificado con la letra “O” en la Tabla de Bloqueo. Al principio se establecen bloqueos de lectura y posteriormente se pueden transformar en bloqueo de escritura.
Cuando un usuario entra en modo modificación en una transacción, el bloqueo pasa a tipo “E”. Si existen otros bloqueos “O” son eliminados de la Tabla de Bloqueo.
Transacción SM12: muestra los bloqueos actuales en el sistema. Aunque los bloqueos se pueden liberar desde esta transacción, no se aconseja ya que puede generar inconsistencia en los datos.
Usuario no puede trabajar porque está bloqueado.
1.-Comprobar desde SM04 si está ejecutando las mismas tareas en paralelo. Si el usuario perdió conexión con el sistema, puede ser que los bloqueos quedaron sin liberar. Nosotros podemos liberar esos bloqueos desde SM12. Entramos por nombre de usuario, seleccionamos los bloqueos y los eliminamos.
2.-Bloque realizado por un tercero, no podremos eliminar tan fácilmente el bloqueo ya que deberemos asegurarnos de que el usuario no se encuentre trabajando, en dicho caso no podremos. Una vez nos hayamos asegurado de que el usuario no está usando el sistema o la tarea en cuestión, podremos realizar la eliminación del bloqueo.
Si existe un bloqueo significa que existe un proceso transaccional por detrás, por lo que debemos estar muy seguros a la hora de eliminarlo ya que podríamos causar inconsistencia en los datos.
 
 
 
Sobre el autor
Publicación académica de Francesc Ventura Iglesias, en su ámbito de estudios para la Carrera Consultor Basis NetWeaver.
Francesc Ventura Iglesias
Profesión: Soporte Técnico - España - Legajo: PM58X
✒️Autor de: 94 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime
Presentación:
Actualmente, me encuentro buscando empleo en el sector tecnológico, ya que me atrae y tengo la habilidad para aprender rápidamente y prosperar en este campo.
Certificación Académica de Francesc Ventura