Skip to main content

Increase the VFIELDSIZE

VFIELDSIZE is an environment variable that tells UniData how much memory it may use when evaluating virtual files. It exists only on UniData systems. Occasionally a very complex virtual field does not display in Informer because VFIELDSIZE is not large enough to evaluate it, even though the field evaluates fine from TCL. That happens because VFIELDSIZE is usually set in the user's profile, not globally. Before changing it, check the VFIELDSIZE to confirm this is the cause.

When Informer connects to the database server through the uniRPC service, the user's profile is not run, so a profile-only VFIELDSIZE does not apply. The fix is to set VFIELDSIZE globally before UniData starts.

Unix / Linux servers

First, confirm the current value. Telnet to the database server and either view the user's profile:

cd ~
more .bash_profile

or echo the variable:

echo $VFIELDSIZE

Then set it globally:

  • UniData before version 8: add the VFIELDSIZE setting to the startunirpcd script (its location varies by version, often under ../unirpc/unirpcservices/).

  • UniData 8 and higher: add this line to the startud script, right before the call to unirpcd. The value 10000 is an example; Entrinsik recommends matching whatever the user has in their profile:

    export VFIELDSIZE=10000

Restart the UniData server for the change to take effect. If you cannot restart the server, at minimum restart the UniData and UniRPC services. Then check the report again to see if the field displays.

Windows servers

For UniData on Windows, add or adjust the VFIELDSIZE environment variable:

  1. Go to Control Panel > System > Advanced System Settings > Environment Variables.
  2. Add a new System Variable named VFIELDSIZE with the value 10000.
  3. Restart UniData.