NEED HELP FROM INFORMIX OLDTIMER
Posted in 2000
A very old I4GL/ISQL 1.10/2.10 SunOS 4.1.2 binary, working under binary-compatibility mode on Solaris 2.5.1, failed on Solaris 8 with errors 329 (database not found) and 125 (C-ISAM: can't use nfs), even though all files were local. Suggestions: recompile with a modern 4GL/engine, check permissions/environment, or stay on the older Solaris; Leffler noted the ancient CREATLOCK (.lok) locking and couldn't explain the Solaris 8 compatibility-library breakage from truss output. One poster blamed statically linked directory-reading routines not understanding the newer filesystem, suggesting an S5 filesystem under 64K inodes. No confirmed fix is recorded.
Auto-generated by DrWatson from the posts below — may be imperfect; read the full thread.
Topics: Error Codes & Troubleshooting, Connectivity: ESQL/C, 4GL & Embedded SQL, Platform-Specific Issues
Hello.
I'm trying to migrate an ancient Informix-4GL (ver 1.10.03F/2.10.03F)
application to a new machine (Ultra 5) running Solaris 8.
The binary was compiled on SunOS 4.1.2 and it is currently
running in Binary Compatibility Mode with no problems
on Solaris 2.5.1.
On the new machine, when trying to run the application (or isql)
I get the following errors:
329: Database not found or no system permission.
125: C-ISAM error: can't use nfs
However, I am not trying to run anything across the network.
I've copied all files to the local disk. Is there something
about the filesystem in Solaris 8 that has changed to cause
this problem?
I will be grateful for any help that you can provide.
Mike
mike at epcom.com
Sent via Deja.com http://www.deja.com/
Before you buy.
mdchachi@my-deja.com wrote:
>
> Hello.
>
> I'm trying to migrate an ancient Informix-4GL (ver 1.10.03F/2.10.03F)
> application to a new machine (Ultra 5) running Solaris 8.
> The binary was compiled on SunOS 4.1.2 and it is currently
> running in Binary Compatibility Mode with no problems
> on Solaris 2.5.1.
>
> On the new machine, when trying to run the application (or isql)
> I get the following errors:
>
> 329: Database not found or no system permission.
> 125: C-ISAM error: can't use nfs>
> However, I am not trying to run anything across the network.
> I've copied all files to the local disk. Is there something
> about the filesystem in Solaris 8 that has changed to cause
> this problem?
I don't know of any changes. Why not just get R4gl/C4gl 7.30 and recompile
the application. The differences from even the earliest versions should
not present a huge porting problem.
Art S. Kagel
mdchachi@my-deja.com wrote:
> Hello.
>
> I'm trying to migrate an ancient Informix-4GL (ver 1.10.03F/2.10.03F)
> application to a new machine (Ultra 5) running Solaris 8.
> The binary was compiled on SunOS 4.1.2 and it is currently
> running in Binary Compatibility Mode with no problems
> on Solaris 2.5.1.
>
> On the new machine, when trying to run the application (or isql)
> I get the following errors:
>
> 329: Database not found or no system permission.
> 125: C-ISAM error: can't use nfs>
> However, I am not trying to run anything across the network.
> I've copied all files to the local disk. Is there something
> about the filesystem in Solaris 8 that has changed to cause
> this problem?
>
> I will be grateful for any help that you can provide.
>
> Mike
> mike at epcom.com
>
> Sent via Deja.com http://www.deja.com/
> Before you buy.
What are your environment variables?
What Informix Engine?
What are the permissions on the directories where you have installed your
Informix DBMS , and your database.?
--
Compliments of QueriX
--------------------------------------------------------------------------------------------------
QueriX 4GL Compilers are Informix 4GL Compatible, and Connection to other
RDBMS such as Oracle.
Hydra 4GL Compiler (Compatible with I4GL) Compile once, run everywhere
Phoenix Windows GUI. (Front End to 4GL)
Chimera Java GUI The only GUI you will ever need... (Front End to 4GL)
Arachne Web Technology (Front End to 4GL on the Web & HTML Report
Generator)
ESQL/C Compiler
For more details visit: http://www.querix.com/
---------------------------------------------------------------------------------------------------
QueriX 4GL / Mehdi wrote:
> mdchachi@my-deja.com wrote:
> > I'm trying to migrate an ancient Informix-4GL (ver 1.10.03F/2.10.03F)
> > application to a new machine (Ultra 5) running Solaris 8.
> > The binary was compiled on SunOS 4.1.2 and it is currently
> > running in Binary Compatibility Mode with no problems
> > on Solaris 2.5.1.
> >
> > On the new machine, when trying to run the application (or isql)
> > I get the following errors:
> >
> > 329: Database not found or no system permission.
> > 125: C-ISAM error: can't use nfs> >
> > However, I am not trying to run anything across the network.
> > I've copied all files to the local disk. Is there something
> > about the filesystem in Solaris 8 that has changed to cause
> > this problem?
>
> What are your environment variables?
> What Informix Engine?
This version (1.10.03F) predates the split of I4GL and ISQL from the
engine -- that really happened with version 4.00. So sqlexec (which
became SE) was delivered with both I4GL and ISQL.
> What are the permissions on the directories where you have installed your
> Informix DBMS, and your database?
Since they can get the software running on Solaris 2.5.1 and can't
on Solaris 8 (probably Solaris 8 running in a 64-bit mode, at that),
the chances are that there is a small difference in the behaviour of
the file systems which is throwing things out. I've looked at some
output from truss and it isn't obvious why anything is going wrong,
but equally clearly, it is.
The chances that they'll either have to use a 32-bit version of
Solaris 8 or revert to Solaris 2.5.1.
I have discussed a few other options -- I still have a little work
to do on it.
This is a rather extreme case of trying for backwards/forwards
compatibility -- the software is more than 10 years old!
--
Jonathan Leffler (jleffler@informix.com, jleffler@earthlink.net)
Guardian of DBD::Informix v1.00.PC1 -- see http://www.perl.com/CPAN
#include <disclaimer.h>
I wonder why it would complain about using nfs? Given how long ago this
was built, was it that nfs-acessed files didn't support locking very
well? Perhaps that is where the difference has crept in...
Presumably the problem is being detected in the bundled engine, would
going to a later engine help? There may be a chance of it working
against a V5 SE for example.
or keep the database on a 2.5.1 box and use I-NET to access it...
Good luck.
In article <392E0833.34567779@earthlink.net>, Jonathan Leffler
<jleffler@earthlink.net> writes
>QueriX 4GL / Mehdi wrote:
>
>> mdchachi@my-deja.com wrote:
>> > I'm trying to migrate an ancient Informix-4GL (ver 1.10.03F/2.10.03F)
>> > application to a new machine (Ultra 5) running Solaris 8.
>> > The binary was compiled on SunOS 4.1.2 and it is currently
>> > running in Binary Compatibility Mode with no problems
>> > on Solaris 2.5.1.
>> >
>> > On the new machine, when trying to run the application (or isql)
>> > I get the following errors:
>> >
>> > 329: Database not found or no system permission.
>> > 125: C-ISAM error: can't use nfs>> >
>> > However, I am not trying to run anything across the network.
>> > I've copied all files to the local disk. Is there something
>> > about the filesystem in Solaris 8 that has changed to cause
>> > this problem?
>>
>> What are your environment variables?
>> What Informix Engine?
>
>This version (1.10.03F) predates the split of I4GL and ISQL from the
>engine -- that really happened with version 4.00. So sqlexec (which
>became SE) was delivered with both I4GL and ISQL.
>
>
>> What are the permissions on the directories where you have installed your
>> Informix DBMS, and your database?
>
>Since they can get the software running on Solaris 2.5.1 and can't
>on Solaris 8 (probably Solaris 8 running in a 64-bit mode, at that),
>the chances are that there is a small difference in the behaviour of
>the file systems which is throwing things out. I've looked at some
>output from truss and it isn't obvious why anything is going wrong,
>but equally clearly, it is.
>
>The chances that they'll either have to use a 32-bit version of
>Solaris 8 or revert to Solaris 2.5.1.
>
>I have discussed a few other options -- I still have a little work
>to do on it.
>
>This is a rather extreme case of trying for backwards/forwards
>compatibility -- the software is more than 10 years old!
>
>--
>Jonathan Leffler (jleffler@informix.com, jleffler@earthlink.net)
>Guardian of DBD::Informix v1.00.PC1 -- see http://www.perl.com/CPAN
>#include <disclaimer.h>
>
>
Andrew Lennard andy@kontron.demon.co.uk
Andy Lennard wrote: > I wonder why it would complain about using nfs? Given how long ago this > was built, was it that nfs-acessed files didn't support locking very > well? Perhaps that is where the difference has crept in... Well, yes, it is truly antique. NFS file locking only works if you use fcntl() locking. This code uses CREATLOCK locking -- .lok files. If you've never seen them, you haven't been around long enough. And CREATLOCK locking does not work in an NFS environment. The bigger, unresolved problem is what happened in Solaris 8 to prevent the compatability mode libraries from working. Solaris 7 is OK with the software. > Presumably the problem is being detected in the bundled engine, would > going to a later engine help? There may be a chance of it working > against a V5 SE for example. Upgrading the software would inevitably help. -- Jonathan Leffler (jleffler@informix.com, jleffler@earthlink.net) Guardian of DBD::Informix v1.00.PC1 -- see http://www.perl.com/CPAN #include <disclaimer.h>
The problem is that the old code does not understand the filesystem. They have statically linked directory reading libraries. It probably will work if you load it entirely into a S5 filesystem with less than 64K inodes. -- Geoff Johnson