VX/LCKMGR is an VMS / OpenVMS compatible Lock Manager for Linux and UINIX. VX/LCKMGR uses Sector7 high speed AST backplane. Locks are granted and tested identically to OpenVMS. SYS$ENQ(W), SYS$DEQ(W), SYS$GETLKI(). VX/LCKMGR was stress tested in a production environment at 80,000 lock conversions per second on an old (1997) quadcore Opteron Sever.
All openVMS Lock manager functions are fully supported except that VX/LCKMGR will only work in a single node environment.
LCK$V_VALBLK | ||
LCK$V_CONVERT | ||
LCK$V_NOQUEUE | ||
LCK$V_SYNCSTS | ||
LCK$V_SYSTEM | ||
LCK$V_NOQUOTA | ||
LCK$V_CVTSYS | ||
LCK$V_RECOVER | ||
LCK$V_PROTECT | ||
LCK$V_NODLCKWT | ||
LCK$V_NODLCKBLK | ||
LCK$V_EXPEDITE | ||
LCK$V_QUECVT | ||
LCK$V_BYPASS | ||
LCK$V_NOIOLOCK8 | LCK$V_NOFORK |
LKI$C_BR_LENGTH | ||
LKI$C_LENGTH | ||
LKI$_BLOCKEDBY | ||
LKI$_BLOCKEDBY_BR | ||
LKI$_BLOCKER_BR | ||
LKI$_BLOCKING | ||
LKI$_BLOCKING_BR | ||
LKI$_BRL | ||
LKI$_CSID | ||
LKI$_CVTCOUNT | ||
LKI$_GRANTCOUNT | ||
LKI$_LASTLKB | ||
LKI$_LASTRSB | ||
LKI$_LCKCOUNT | ||
LKI$_LCKREFCNT | ||
LKI$_LKID | ||
LKI$_LOCKID | ||
LKI$_LOCKS |
SS$_NORMAL | ||
LKI$_BLOCKEDBY | ||
LKI$_BLOCKING | ||
LKI$_CSID | ||
LKI$_CVTCOUNT | ||
LKI$_GRANTCOUNT | ||
LKI$_LCKCOUNT | ||
LKI$_LCKREFCNT | ||
LKI$_LKID | ||
LKI$_LOCKID | ||
LKI$_LOCKS | ||
LKI$_MSTCSID | ||
LKI$_MSTLKID | ||
LKI$_NAMSPACE | ||
LKI$_PARENT | ||
LKI$_PID | ||
LKI$_REMLKID | ||
LKI$_RESNAM | ||
LKI$_RSBREFCNT | ||
LKI$_STATE | ||
LKI$_VALBLK | ||
LKI$_WAITCOUNT |
LKI$C_CONVERT | ||
LKI$C_GRANTED | ||
LKI$C_WAITING | ||
LKI$C_RETRY | ||
LKI$C_SCSWAIT | ||
LKI$C_RSPNOTQED | ||
LKI$C_RSPQUEUED | ||
LKI$C_RSPGRANTD | ||
LKI$C_RSPDOLOCL | ||
LKI$C_RSPRESEND | ||
LKI$C_RSBTYPE |
VX/LCKMGR has the ability to log all lock requests and to also replay them for tuning and diagnostic purposes.
VX/LCKMGR also has a real time display of all lock requests.
In the image below, The Lock Manager log is being replayed so AST's are not issued.