Topic
5 replies Latest Post - ‏2008-04-24T18:25:49Z by SystemAdmin
SystemAdmin
SystemAdmin
1143 Posts
ACCEPTED ANSWER

Pinned topic Error 9793 running select checksum(1,1) from systables where tabid = 1

‏2008-04-23T20:46:57Z |
select checksum(1,1) from systables where tabid = 1 gives error 9793

9793: User Defined Routine (checksum) module load failed.

This occurs running checksum.sql or running the select statement in dbaccess.

Also in teh online.log it shows:
10:36:25 Loading Module <$INFORMIXDIR/extend/checksum/checksum.so>
10:36:25 The C Language Module
<$INFORMIXDIR/extend/checksum/checksum.so> can't
load
reason: /opt/informix/extend/checksum/checksum.so: only ET_DYN and
ET_EXEC c
an be loaded
10:36:25 (-1): ERROR: Loading Module
<$INFORMIXDIR/extend/checksum/checksum.so>
How to fix this? Please advise.

Thanks!
Updated on 2008-04-24T18:25:49Z at 2008-04-24T18:25:49Z by SystemAdmin
  • andreasl
    andreasl
    369 Posts
    ACCEPTED ANSWER

    Re: Error 9793 running select checksum(1,1) from systables where tabid = 1

    ‏2008-04-24T10:06:23Z  in response to SystemAdmin
    Hello!

    What platform are you on, please?

    Also can I ask you for a 'file', 'ldd' and 'ls -l' output on the $INFORMIXDIR/extend/checksum/checksum.so shared object?

    How exactly did you create it?

    Regards,

    Andreas
    • SystemAdmin
      SystemAdmin
      1143 Posts
      ACCEPTED ANSWER

      Re: Error 9793 running select checksum(1,1) from systables where tabid = 1

      ‏2008-04-24T12:59:49Z  in response to andreasl
      Hi,
      Actually I am an Informix engineer looking to help a customer.
      The platform is Red Hat Linux 4 (build 2.6.9-67)64bit.

      Customer did the following (sorry for the weird formatting)...
      $ gcc -m64 -shared -${INFORMIXDIR}/incl -c
      checksum.c -o checksum.64.so
      checksum.c: In function `accum_crc':
      checksum.c:108: warning: large integer implicitly truncated to unsigned
      type
      checksum.c: In function 'collection_checksum':
      checksum.c:591: warning: cast to pointer from integer of different size
      checksum.c:591: warning: cast from pointer to integer of different size
      checksum.c: In function 'row_checksum':
      checksum.c:664: warning: cast from pointer to integer of different size
      checksum.c: In function `getData':
      checksum.c:825: warning: cast from pointer to integer of different size
      ltefera@JDIS-RPTS-TEST chksum$

      But this time it created the output file which I copied under $INFORMIXDIR/extend/checksum directory owned by informix. When I run the SQL file to register it, all the routines were created. The last statement failed with:

      • ** Load checksum libraries

      select checksum(1,1) from systables where tabid = 1;
      9793: User Defined Routine (checksum) module load failed.
      Error in line 105

      Near character position 8
      I don't had the file, ldd, or ls-l outputs but will ask for them today and reply.

      Thanks,
      Bill
      • SystemAdmin
        SystemAdmin
        1143 Posts
        ACCEPTED ANSWER

        Re: Error 9793 running select checksum(1,1) from systables where tabid = 1

        ‏2008-04-24T14:01:09Z  in response to SystemAdmin
        Here is the ls -l output:

        -rwxr-xr-x 1 informix informix 13608 Apr 22 08:59 checksum.so

        an ldd checksum.so output:

        Says -- not a dynamic executable
      • andreasl
        andreasl
        369 Posts
        ACCEPTED ANSWER

        Re: Error 9793 running select checksum(1,1) from systables where tabid = 1

        ‏2008-04-24T15:07:42Z  in response to SystemAdmin
        Hi Bill,

        can you try the following?

        gcc -shared -I${INFORMIXDIR}/incl checksum.c -fPIC -o checksum.so

        Regards,

        Andreas
        • SystemAdmin
          SystemAdmin
          1143 Posts
          ACCEPTED ANSWER

          Re: Error 9793 running select checksum(1,1) from systables where tabid = 1

          ‏2008-04-24T18:25:49Z  in response to andreasl
          That worked for the customer. She still has warnings but it works.
          Thanks!