getLobDetail()

语法

db.collectionspace.collection.getLobDetail(<oid>)

获取集合中的大对象被读写访问的详细信息。

参数描述

参数名参数类型描述是否必填
oidstring大对象的唯一描述符。

返回值

返回大对象被读写访问的详细信息。出错抛异常,并输出错误信息,可以通过getLastErrMsg()获取错误信息或通过getLastError()获取错误信息码。

大对象被读写访问的详细信息格式为:

字段名描述
Oid大对象的唯一描述符。
AccessInfo被读写访问的详细信息。
ContextID本次操作的上下文标识。

其中 AccessInfo 的详细信息格式为:

字段名描述说明
RefCount大对象当前被引用的总个数。RefCount 为 ReadCount, WriteCount, ShareReadCount 之和。
ReadCount大对象当前被以只读模式打开的个数。
WriteCount大对象当前被以写模式打开的个数。以读写模式打开的计数也计算在此项。
ShareReadCount大对象当前被以共享读模式打开的个数。getLobRuntimeDetail 命令本身会增加一次 ShareReadCount
LockSections记录大对象中被加锁的区域,以及进行加锁操作的上下文标识。可以通过该项查看大对象是被哪些上下文持有锁。S 为读锁;X 为写锁

错误

错误码

示例

  • 列取 00005deb85c5350004743b09 的 lob 当前被访问的详细信息

    1. > db.sample.employee.getLobDetail('00005deb85c5350004743b09')
    2. {
    3. "Oid": "00005deb85c5350004743b09",
    4. "AccessInfo": {
    5. "RefCount": 3,
    6. "ReadCount": 0,
    7. "WriteCount": 1,
    8. "ShareReadCount": 2,
    9. "LockSections": [
    10. {
    11. "Begin": 10,
    12. "End": 30,
    13. "LockType": "X",
    14. "Contexts": [
    15. 11
    16. ]
    17. },
    18. {
    19. "Begin": 30,
    20. "End": 50,
    21. "LockType": "S",
    22. "Contexts": [
    23. 12
    24. ]
    25. }
    26. ]
    27. },
    28. "ContextID": 14
    29. }