BaseElements Plugin on FileMaker Server

 

BaseElements Plugin is compatible with FileMaker server, with some caveats :

 

Server Compatible Functions

Some functions will return error 3 when called on platforms they do not work, on but not all functions can be relied on to work in every environment.  Access to the environment is different on different platforms, and can be affected by permissions, operating system and other factors beyond the control of the plugin.  Testing on multiple platforms is critical.

 

BaseElements Plugin and threads

The BaseElements plugin is currently thread safe as of version 4.0.4 for all functions.  

 

If you're using older versions of the plugin prior to 4.0.4

In previous versions of the plugin, an instance of the plugin had a single store of temporary storage that it's using during and in between operations ( things like storing the SMTP settings, before the SMTP send, or the HTTP headers before a call ).

Because of this, if you're running two instances of the plugin on a single machine, they can interfere with each other and step on each other's toes in terms of threads and operations, and therefore cause issues.  Again, running in this way is not documented or tested, and is not recommended.

If you're calling scripts via PSOS or Schedules that use the BE plugin, we recommend that you do this in a way that limits the scripting to one process at a time.  So either you a system to flag when other processes are active and pauses until the flag is cleared.  Or you run a single process via schedule, that repeats and waits for a queue of "event" records to process.  Each one can be different actions to run, but they run in sequence as they come in.

Either of these methods work to keep the plugin to a single instance, and therefore reduce the dependency issues that may come up and so prevent crashes or other issues.

Upgrading to version 4.0.4 will negate the need for any of these precautions.

Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.