ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » IBM MQ Installation/Configuration Support » Problems installing MQSeries 5.3 on RedHat 9.

Post new topic  Reply to topic
 Problems installing MQSeries 5.3 on RedHat 9. « View previous topic :: View next topic » 
Author Message
mstrello
PostPosted: Tue Apr 29, 2003 11:00 am    Post subject: Problems installing MQSeries 5.3 on RedHat 9. Reply with quote

Newbie

Joined: 10 Apr 2002
Posts: 6
Location: Chile

Hi,

I'm trying to install MQSeries 5.3 (I read other thread in this forum about installing MQ 5.2 on RedHat 9 succesfully).

I had to set LD_ASSUME_KERNEL=2.2.5 for mqlicense.sh stuff.
The rpm's were installed succesfully.

But when I need to do something, specifically

crtmqm -q SOME.SILLY.QUEUE.MANAGER.NAME

the program enter in a infinite loop (I need to kill-9 the pid).

I run the command with the strace utility. The relevant part follows:

Code:

open("/etc/group", O_RDONLY)            = 5
fcntl64(5, F_GETFD)                     = 0
fcntl64(5, F_SETFD, FD_CLOEXEC)         = 0
fstat64(5, {st_mode=S_IFREG|0644, st_size=616, ...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40023000
_llseek(5, 0, [0], SEEK_CUR)            = 0
brk(0)                                  = 0x80bb000
brk(0x80c4000)                          = 0x80c4000
read(5, "root:x:0:root\nbin:x:1:root,bin,d"..., 4096) = 616
read(5, "", 4096)                       = 0
_llseek(5, 616, [616], SEEK_SET)        = 0
read(5, "", 4096)                       = 0
_llseek(5, 616, [616], SEEK_SET)        = 0
read(5, "", 4096)                       = 0


The /etc/group was opened and closed a couple of time before in the execution of this command.

Some ideas? Are there someone with luck that installed this configuration (I mean RedHat 9 and MQSeries 5.3?

I know that there are some issues because the kernel in the RedHat 9 use NTPL.

Regards,
--
Mauricio.
Back to top
View user's profile Send private message Send e-mail
bduncan
PostPosted: Tue Apr 29, 2003 3:29 pm    Post subject: Reply with quote

Padawan

Joined: 11 Apr 2001
Posts: 1554
Location: Silicon Valley

Perhaps you should try creating the "mqm" group and "user" before installing MQSeries, rather than letting MQSeries create them automatically for you...
_________________
Brandon Duncan
IBM Certified MQSeries Specialist
MQSeries.net forum moderator
Back to top
View user's profile Send private message Visit poster's website AIM Address
mstrello
PostPosted: Wed Apr 30, 2003 7:15 am    Post subject: Reply with quote

Newbie

Joined: 10 Apr 2002
Posts: 6
Location: Chile

bduncan wrote:
Perhaps you should try creating the "mqm" group and "user" before installing MQSeries, rather than letting MQSeries create them automatically for you...


Thanks for your response, but it didn't work.

Anyway, I am working now with MQ 5.2. I suspect something about the new features of kernel in RedHat 9 (specifically NTPL).

Regards,
--
Mauricio.
Back to top
View user's profile Send private message Send e-mail
Danhelka
PostPosted: Thu May 29, 2003 5:34 am    Post subject: Reply with quote

Newbie

Joined: 24 Sep 2002
Posts: 1

Problem is, that getgrent_r library call used in crtmqm doesn't set errno variable in Redhat 9, and therefore command enters infinite loop. I wrote program, which fixes this problem.
Compile program using

gcc -fPIC -rdynamic -g -c -Wall newgetgrent.c
gcc -shared -WI,-soname,libmy.so.1 -olibmy.so.1.0.1 newgetgrent.o -lc -ldl

and set variable LD_PRELOAD to the full path of libmy.so.1.0.1 library and LD_ASSUME_KERNEL=2.2.5 before issuing an MQ command in my case

export LD_PRELOAD=/tmp/getgrent_r/libmy.so.1.0.1
export LD_ASSUME_KERNEL=2.2.5
crtmqm -q testqm


Regards

Vaclav

Code:

/******************************************************************************/
/*                                                                            */
/* Program fixes infinite loop problem in MQ commands (runmqsc...) on         */
/* Redhat 9 linux distribution. On Redhat 9 getgrent library call             */
/* doesn't set errno variable, which is checked in MQ programs.               */
/*                                                                            */
/* Program compilation:                                                       */
/* gcc -fPIC -rdynamic -g -c -Wall newgetgrent.c                              */
/* gcc -shared -WI,-soname,libmy.so.1 -olibmy.so.1.0.1 newgetgrent.o -lc -ldl */
/*                                                                            */
/* Set variable LD_PRELOAD to the full path of libmy.so.1.0.1 library         */
/* before issuing an MQ command, in my case                                   */
/*                                                                            */
/* export LD_PRELOAD=/tmp/getgrent_r/libmy.so.1.0.1                           */
/* export LD_ASSUME_KERNEL=2.2.5                                              */
/* crtmqm -q testqm                                                           */
/*                                                                            */
/* Vaclav Danhelka 26.5.2003 V.Danhelka@cz.ibm.com                            */
/*                                                                            */
/******************************************************************************/


#include <dlfcn.h>
#include <stdio.h>
#include <stdlib.h>
#include <grp.h>
#include <errno.h>

  int getgrent_r(struct group * presultbuf,
     char * pbuffer, size_t pbuflen,
     struct group ** presult) {
  void *handle;
  int (*orig_getgrent_r)(struct group * resultbuf,
  char * buffer, size_t buflen,
  struct group ** result );
  int getgrent_return;

  char *error;

  handle=dlopen("/lib/libc.so.6",RTLD_LAZY);
  if (!handle) {
    fputs(dlerror(),stderr);
    exit(EXIT_FAILURE);
  }

  orig_getgrent_r=dlsym(handle,"getgrent_r");
  if ((error=dlerror())!=NULL) {
    fprintf(stderr,"%s\n",error);
    exit(EXIT_FAILURE);
  }

  getgrent_return=orig_getgrent_r(presultbuf,pbuffer,pbuflen,presult);
 
  errno=getgrent_return;

  return getgrent_return;

}
Back to top
View user's profile Send private message
chuanchen
PostPosted: Thu Oct 02, 2003 1:30 pm    Post subject: redhat 9 and MQ 5.3 Reply with quote

Novice

Joined: 11 Jul 2001
Posts: 11

Hi,
Does anybody know if IBM have the fixes (crtmqm with AMQ8101)for MQ 5.3 for Redhat Linux ?



Thanks!


--Chuan
Back to top
View user's profile Send private message
kris_mq
PostPosted: Wed Oct 15, 2003 2:06 am    Post subject: Reply with quote

Newbie

Joined: 19 Sep 2003
Posts: 6
Location: India

The crtmqm worked fine after incorporating your fix.

Thanks Vaclav !
Back to top
View user's profile Send private message
mstrello
PostPosted: Fri Nov 14, 2003 8:10 pm    Post subject: Finally ... Reply with quote

Newbie

Joined: 10 Apr 2002
Posts: 6
Location: Chile

Finally, the CSD05 fix the trouble ...
Of course, you must use the LD_ASSUME_KERNEL env variable ...

Regards,
--
Mauricio.
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » IBM MQ Installation/Configuration Support » Problems installing MQSeries 5.3 on RedHat 9.
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.