The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Oracle OCCI при подключении Segmentation fault"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Oracle OCCI при подключении Segmentation fault" 
Сообщение от sergf Искать по авторуВ закладки on 21-Сен-05, 13:01  (MSK)
Подключение к БД как-то влияет на разделяемую память???
Oracle 9.2.0, Linux RH 7.2.
-------------------------------------------------------------------
int main(int argc, char* argv[])
{
Environment* env;
env = Environment::createEnvironment(Environment::OBJECT);
}
проходит нормально.
-------------------------------------------------------------------
int main(int argc, char* argv[])
{
int fp, i;
int id[5];  
char *shm[5];      
// подключение к RRP
if ( (fp = open ( "/tmp/shmem.dat",O_RDONLY)) == -1 ) return ( 2 );                    
read ( fp, id, sizeof ( id ));
read ( fp, shm, sizeof ( shm ));
close ( fp );

for ( i = 0; i < 5; i++ )
{
    if ( shm[i] != shmat ( id[i], shm[i], 0 ) ) return ( 3 );
    printf("\n id[%d] = %d, shm[%d] = %d", i, id[i], i, shm[i] );
}
}
-------------------------------------------------------------------
Тоже проходит нормально.

А когда вместе:

int main(int argc, char* argv[])
{
int fp, i;
int id[5];  
char *shm[5];      

Environment* env;
env = Environment::createEnvironment(Environment::OBJECT);

if ( (fp = open ( "/tmp/shmem.dat",O_RDONLY)) == -1 ) return ( 2 );                    
read ( fp, id, sizeof ( id ));
read ( fp, shm, sizeof ( shm ));
close ( fp );
for ( i = 0; i < 5; i++ )
{
    if ( shm[i] != shmat ( id[i], shm[i], 0 ) ) return ( 3 );
    printf("\n id[%d] = %d, shm[%d] = %d", i, id[i], i, shm[i] );
}
}

после запуска выводит 4-е строки, а на 5-ой
даёт: Segmentation fault.
------------------------------------------------------------------------
Получается, что createEnvironment как то влияет на SHARED MEM?
Подскажите хотябы где копать?


  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]

1. "Re: Oracle OCCI при подключении Segmentation fault" 
Сообщение от DeadMustdie emailИскать по авторуВ закладки(??) on 22-Сен-05, 09:43  (MSK)
Я не совсем понимаю, чего там с общей памятью делается,
но проблема явно связана не с OCI, а именно с этими операциями.
Ошибки при работе с памятью (не только общей) часто вылезают
при добавлении в программу блока операций с памятью же.
Инициализация Ораклового окружения к таким блокам операций
явно относится.
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "Oracle OCCI при подключении Segmentation fault" 
Сообщение от sergf Искать по авторуВ закладки on 19-Дек-05, 15:49  (MSK)
Так в том то и дело, что в данном примере
ничего с разд памятью не делается.
Выполняется только подключение к ней и всё.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру