fileServices defaulting to first esp in the environment

Description

We had an issue where we had to pull down one of the esp of several in the environment

Spray jobs started failing because they getenv kept pulling back the IP address of the same esp that was down.

Do you know how we can set environment values that are fetched via GETENV, such as GETENV('ws_fs_server') ?

Conclusion

None

Activity

Show:

Richard Chapman November 19, 2015 at 9:26 AM

Looks to me that there are a couple of issues with the way that the fileServices plugin identifies the ESP to connect to:

1. It looks for an esp in the environment that implements the ws+fs service, but does not check that the esp is running.
2. Once it selects an ESP to use it continues using it... this might not be appropriate if we fix issue 1 above...
3. The way that it caches the ESP to use is not threadsafe (unlikely to cause issues in practice, but should probably be fixed

Anthony Fishbeck November 17, 2015 at 4:47 PM

GETENV gets the value of a system environment variable, so you would just set them like you would any other environment variable for the hpcc user.

Roxie will first look in its package file, so you can override environment variables for roxie there.

By the sound of the behavior Tony described, you may also be able to change the enviornment xml in some way to have the Fileservices plugin not select that ESP when there is nothing defined by the ws_fs_server variable.

Tony Kirk November 17, 2015 at 3:56 PM

I'll defer to platform team, but it appears to be coming from getEspServerURL in the FileServices plug-in. If the server is not passed and that GETENV is blank, it searches for the first ESP in Dali's Environment that has "ws_fs" listed.

Fixed
Pinned fields
Click on the next to a field label to start pinning.

Details

Components

Assignee

Reporter

Priority

Fix versions

Affects versions

Created November 17, 2015 at 3:19 PM
Updated March 17, 2017 at 1:29 PM
Resolved March 17, 2017 at 1:29 PM