The customers got the shared memory 80error on AIX environment; utility truss is used to track the debug info,eXtremeDB.registry access error is found.  Release notesdescribed as follows: These names are constructed using the memory segment'snames and the
database name.  eXtremeDB creates these name-files in the user'shome directory with the following naming scheme.

kwrite(1," S o c k e t   d o m a i"..,43)     = 43

Node 20.0.7.5, rank 21234

kwrite(1, "         N o d e   2 0 .".., 30)     = 30

Node 20.0.7.6, rank 21234

kwrite(1, "         N o d e   2 0 .".., 30)     = 30

Node 20.0.8.5, rank 21234

kwrite(1, "         N o d e   2 0 .".., 30)     = 30

Node 20.0.8.6, rank 21234

kwrite(1, "         N o d e   2 0 .".., 30)     = 30

kopen("/app/eXtremeDB_registry",O_WRONLY|O_CREAT|O_TRUNC, ) Err#13 EACCES

statx("/app/eXtremeDB_registry",0x0FFFFFFFFFFFECA0, 176, 010) Err#2 ENOENT

kopen("/app/eXtremeDB_registry",O_WRONLY|O_CREAT|O_TRUNC, ) Err#13 EACCES

statx("/app/eXtremeDB_registry",0x0FFFFFFFFFFFECB0, 176, 010) Err#2 ENOENT

kopen("/usr/share/lib/zoneinfo//Asia/Shanghai",O_RDONLY) = 3

kread(3, " T Z i f2\0\0\0\0\0\0\0".., 41448)   = 405

close(3)                                        = 0

__libc_sbrk(0x0000000000010020)                 = 0x000000011002EFE0

kopen("/usr/share/lib/zoneinfo//posixrules",O_RDONLY) Err#2  ENOENT

kopen("/app/eXtremeDB_registry",O_WRONLY|O_CREAT|O_TRUNC, ) Err#13 EACCES

statx("/app/eXtremeDB_registry",0x0FFFFFFFFFFFEBF0, 176, 010) Err#2 ENOENT

kopen("/app/eXtremeDB_registry",O_WRONLY|O_CREAT|O_TRUNC, ) Err#13 EACCES

statx("/app/eXtremeDB_registry",0x0FFFFFFFFFFFEC00, 176, 010) Err#2 ENOENT

_nsleep(0x0FFFFFFFFFFFEEE0,0x0FFFFFFFFFFFEFB0) = 0

connecting rc=80        createbefore rc=80Database and memory alloc in 1 msecs

kwrite(1, "\t   c o n n e c t i n g".., 76)     = 76

kwrite(1, "\n", 1)                              = 1

Error connecting database :

Return Code kwrite(1, "\t E r r o r   c o n n e".., 43) = 43

80: MCO_E_SHM_ERROR - Failed tocreate/attach to shared memory

kwrite(1, " 8 0 :   M C O _ E _ S H".., 63)     = 63

kopen("/app/eXtremeDB_registry",O_WRONLY|O_CREAT|O_TRUNC, ) Err#13 EACCES

statx("/app/eXtremeDB_registry",0x0FFFFFFFFFFFECA0, 176, 010) Err#2 ENOENT

kopen("/app/eXtremeDB_registry",O_WRONLY|O_CREAT|O_TRUNC, ) Err#13 EACCES

statx("/app/eXtremeDB_registry",0x0FFFFFFFFFFFECB0, 176, 010) Err#2 ENOENT

kfcntl(1, F_GETFL, 0x00000000150B0293)          = 67110914

kfcntl(2, F_GETFL, 0x00000000150B0293)          = 67110914

_exit(1)

$

Question: How could we change customize the paththrough eXtremeDB to the currende eXtremeDB directory.

Answer:

On linux (and most other Unix-es) when using a shared memory database, eXtremeDB uses SysV synchronization primitives and the shared memory API.  Both of these APIs require the names of existing files to identify the sync. primitives and
memory segments.  These names are constructed using the memory segment's names and the database name.  eXtremeDB creates these name-files in the user's home directory with the following naming scheme:

“<dbname>.lock” for sync. primitives,

“eXtremeDB.<dbname>” for memory segments,

“eXtremeDB_registry” for the registry.

Normally eXtremeDB will remove all these files when the database is closed, but if the program fails it has no chance to do so.  In this case the developer must provide some other means to clear the lock files form this directory.

It is possible to change the lock files location by exporting the "EXTREMEDB_DIR" environment variable to setup the path instead of the home directory by entering a command line like one of the following to run a program called “sample”:

“export EXTREMEDB_DIR=c:/tmp ./sample”

to keep the directory path setting only for the duration of the program execution, or

“export EXTREMEDB_DIR=c:/tmp”

“./sample”

to keep the directory path setting active until the next “export” command.

版权声明:本文博客原创文章,博客,未经同意,不得转载。

eXtremeDB -- the shared memory 80error的更多相关文章

  1. C++: Virtual Table and Shared Memory

    See at: 补充栏3: C++对象和共享内存 (叙述内容和Link1的内容基本一致) <C++网络编程 卷1:运用ACE和模式消除复杂性> <C++ Network Progra ...

  2. ORA-27101: shared memory realm does not exist

    Oracle Error Tips by Burleson Consulting Oracle docs note this about ORA-27101: ORA-27101: shared me ...

  3. shared memory realm does not exist

    有天启动ORACLE,碰到如下问题 提示ORA-01034: ORACLE not available ORA-27101: shared memory realm does not exist 解决 ...

  4. Oracle重启 error: ora-01034:oracle not available ora-27101:shared memory realm does not exist

    error: ora-01034:oracle not available ora-27101:shared memory realm does not exist 苦咖啡 他的博客中一篇文章完美的解 ...

  5. zabbix登陆问题:cannot allocate shared memory for collector

    问题说明:在一台zabbix被监控服务器上(64位centos6.8系统,64G内容)启动zabbix_agent,发现进程无法启动,10050端口没有起来! 启动zabbix_agent进程没有报错 ...

  6. ORA-27101:shared memory realm does not exist的问题

    ORA-27101:shared memory realm does not exist的问题 登陆SQLPlus时出现: ORA-01034:ORACLE not avaiable ORA-2710 ...

  7. IPC:shared memory

    #include <stdio.h> #include <sys/shm.h> #include <sys/stat.h> int main () { int se ...

  8. Android系统匿名共享内存Ashmem(Anonymous Shared Memory)在进程间共享的原理分析

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6666491 在前面一篇文章Android系统匿 ...

  9. Android系统匿名共享内存Ashmem(Anonymous Shared Memory)驱动程序源代码分析

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6664554 在上一文章Android系统匿名共 ...

随机推荐

  1. href=“file://” doesn't work

    Local Explorer 2016.6.21.0 CRX for Chrome or Chromium https://www.crx4chrome.com/extensions/eokekhgp ...

  2. [React] Cleanly Map Over A Stateless Functional Component with a Higher Order Component

    In this lesson we'll create a Higher Order Component (HOC) that takes care of the key property that ...

  3. AOP 专题

    Spring框架有两个核心思想:IOC和AOP Spring IOC指的是控制翻转,使用普通JAVA Bean,在运行时由Spring容器统一管理和串联,服务于不同的流程,在开发过程中对Spring ...

  4. thinkphp mysql 坐标按距离排序

    $cha1 = new Model(); $shops = $cha1->query("select *,(2 * 6378.137* ASIN(SQRT(POW(SIN(3.1415 ...

  5. Windows Phone 8.1 Tiles, Notifications and Action Center

    (1)Tiles Tiles 也就是磁贴,是 Windows Phone 的一大特色. 一个 Tile 其实可以看成是一个 XML,比如: <tile> <visual> &l ...

  6. [Angular Unit Testing] Testing Component methods

    import {ComponentFixture, TestBed} from '@angular/core/testing'; import {BrowserDynamicTestingModule ...

  7. MFC 之 OnClose 与 OnCancel

    在一个对话框其中.按下esc键  与 上面的红叉,默认都是调用OnCancel()函数. 如今我要在按下esc键盘后不关闭程序而是弹出一个对话框,可是这个时候点击红叉 程序也不会关闭,为了解决问题.我 ...

  8. C++ 程序延时处理的几种方法

    (—)使用_sleep()函数 例如:_sleep(200);//延时200毫秒 (二)使用delay(int time)函数 (需要自己实现,编译器里面没有) /// @brief      程序延 ...

  9. style.height、offsetHeight、clientHeight、scrollHeight的差别

    style.height 包含元素的滚动栏,不包含边框 clientHeight 不包含元素的滚动栏和边框 offsetHeight 包含元素的滚动栏和边框 scrollHeight offsetHe ...

  10. 动态创建Fragment

    在android3.0之前.每创建一个界面就要新创建一个activity. 在3.0之后引入了Fragment.相当于一个轻量级的activity.不须要在清单文件配置. 先来看下怎样创建和使用Fra ...