Skip to main content
Open

Terminator improvements

Related products:Transformers
9val
rylanatsafe
siennaatsafe
david_r
+72
  • 9val
    9val
  • jlutherthomas
  • rylanatsafe
    rylanatsafe
  • siennaatsafe
    siennaatsafe
  • david_r
    david_r
  • virtualcitymatt
    virtualcitymatt
  • hkingsbury
    hkingsbury
  • danilo_fme
    danilo_fme
  • lifalin2016
    lifalin2016
  • warrendev
    warrendev
  • vxn43
    vxn43
  • j.botterill
    j.botterill
  • tomf
    tomf
  • todd_davis
    todd_davis
  • fgiron
    fgiron
  • nic_ran
    nic_ran
  • geosander
    geosander
  • kennyo
    kennyo
  • stefanh
    stefanh
  • marko
  • dhavanv2
    dhavanv2
  • tooli11
    tooli11
  • aalppa
  • zkovacs
  • adieporter
    adieporter
  • rycharg
  • david_talec
    david_talec
  • kahlen
    kahlen
  • peter_s
    peter_s
  • r5
    r5
  • neilmyoung
    neilmyoung
  • geolassi
    geolassi
  • lde
    lde
  • bertmeskens
    bertmeskens
  • cwarren
    cwarren
  • chickey
    chickey
  • lennartm
    lennartm
  • bartm
  • carlm
    carlm
  • annabayona
    annabayona
  • anderstgd
    anderstgd
  • eshepherd
    eshepherd
  • ecthelion
    ecthelion
  • johnt
    johnt
  • marnickcle
    marnickcle
  • roland.martin
    roland.martin
  • becchr
    becchr
  • mferwerda1111
    mferwerda1111
  • neilhellas
  • gav
    gav
  • joshuadamron
    joshuadamron
  • adriano
    adriano
  • geoal
    geoal
  • spatialcase
    spatialcase
  • wicki
    wicki
  • afavaccio
    afavaccio
  • svteshipley
    svteshipley
  • maplinux
    maplinux
  • divya
  • denniswilhelm
    denniswilhelm
  • petersegerstedt
  • robertsonstepha
  • warreg
    warreg
  • magic_michael
  • dinhomoura
    dinhomoura
  • schuurman
  • janr
  • battlezone77
  • yvesstjulien
  • firework_girl
  • rhansen
  • samuelvaldez
  • jipx
    jipx
  • chris.bond
  • mark2atsafe
    mark2atsafe
  • DanAtSafe
    DanAtSafe
  • laurawatsafe
    laurawatsafe

geosander

Some general improvements for the Terminator transformer I am thinking of:

  • The ability to terminate with a FME_FAILURE or ABORTED or maybe even a new TERMINATED status (relevant for Server). An FME_FAILURE happens when FME crashes or experiences some other problem (e.g. missing transformer). When the Terminator caused the workspace to quit, this typically happens because of a "user handled exception", which might also be interpreted as a cancellation, but now it's always FME_FAILURE as well. Either way, it gives me better insight in what went wrong if this status type could be changed.
  • The ability to set custom data that should be sent upon failure, which can then be used as the "Data To Post" for notification topics. Upon failure, nothing gets written to the "Data To Post" writer, but it would be nice if we could at least get something back. In this case, that would be the custom data that was set in the Terminator.
  • I would like the error message that I specified in the Terminator to stay exactly the way it is. When a job terminates on Server, it passes the Termination Message on to the statusMessage attribute from the job result. Just like in workbench, it always prefixes this message with "<Transformer Name>: Aborting Translation as directed by mapping file. Message is ...". I would love to see that prefix removed, because now I need to remove it myself since it is confusing to an end user who is not familiar with FME.
  • Might as well officially integrate the functionality of the MessageLogger by 1Spatial.

  • Any other suggestions...?

11 replies

jdh
Contributor
Forum|alt.badge.img+28
  • Contributor
  • February 4, 2016

When a child workspace fails due to a terminator, the failure status message returned to the workspaceRunner/ServerJobSubmitter is `A fatal error has occurred. Check the logfile above for details'.

 

 

I would much rather get the message from the terminator.

geosander
Forum|alt.badge.img+7
  • Author
  • February 4, 2016

Yes, I noticed that too. In asynchronous mode however (so if you not wait for the job to complete), it does return the error message you specified in the Terminator (along with that prefix I mentioned above).


Forum|alt.badge.img
  • February 22, 2016

Add a string at the end of the translation that contains the value of "Hasta la vista, baby" ... and for every transformer do one that says "Auto bots, roll out!".


geosander
Forum|alt.badge.img+7
  • Author
  • March 1, 2016

It might also be a good idea if a (custom) error code could be set by the Terminator that can be fetched in the job result (e.g. in an errorCode attribute). That way, the actual message is basically irrelevant, as the FME developer can then display a custom (localized) message to the end user based upon that code.


tim_wood
Contributor
Forum|alt.badge.img+8
  • Contributor
  • January 18, 2017
Why should it be different for "Wait for Job to Complete" = "Yes"? In any case, I've tried this in FME 2016.1 and I don't get the termination message in the parent Workspace log. All that happened was that the child FME Workspace FME.exe crashed and the parent Workspace log said translation was successful.

 

I've got a parent Workspace sending 2 Excel file names at a time to a child Workspace. In the child Workspace, the 2 files are read with separate FeatureReaders, then there's an AttributeValidator that checks if the Excel file has the expected column headings. If it doesn't, the Workspace is terminated. In the parent Workspace log, I'd like to be able to differentiate between the child Workspace terminating because of the AttributeValidator or something else.

 

 


peter_s
Contributor
Forum|alt.badge.img+1
  • Contributor
  • April 26, 2018

I really agree, this would be extremely useful for developing nice behaving workspaces to be executed by people that may not be FME developers.


denniswilhelm
Contributor
Forum|alt.badge.img+11

Especially "The ability to set custom data that should be sent upon failure" sounds really interesting. This could be very helpful to create custom error messages for applications calling FME. Currently, I'm using a second workspace evaluating the job log in order to do that.


mferwerda1111
Participant
Forum|alt.badge.img+2

An option to have a Terminated status instead of the generic FME_FAILURE status in FME Server would be really helpful, under certain circumstances I want to stop the process, but that is intentional and not a failure


anwe
Forum|alt.badge.img
  • March 12, 2019

Has there been any update on how to provide more information in the RESULT DATA window on fme server? I currently only get FMEL_FAILURE and A fatal error has occured. Check the logfile above for more details. Would like for the message from the terminator or logger to be wieved here.

 


todd_davis
Supporter
Forum|alt.badge.img+20
  • Supporter
  • October 7, 2020

The terminator certainly needs a few different statuses (success, abort, failure etc), because we may terminate for a range of reasons and the level that we care about that specific termination varies. For instance, I have terminators in an automation and some terminate because the process should not run because of some specific factor or it may terminate because the data is not correct. Any termination immediately comes out the failure port and recorded in the automation log, but I may only want this for a data issue and not for a specific factor. I may instead want it to come out of the success port, or no port at all.


romar
Contributor
Forum|alt.badge.img+3
  • Contributor
  • October 20, 2022

I would like to second the ability for the terminator output a success message for automation, In order for the automation application to continue as if the workspace succeeded normally. I would also like for the transformer to be able to function as: normal, blocking or lowest priority.

Normal: as it works now, when a feature enters the terminator activates

Blocking: Features can only enter when all upstream transformers have finished, such as a merger

Lowest priority: Features can only enter when all other transformers have no available tasks.

 

Currently I am working on a workspace that finishes everything within the workspace, but gives no completion signal to the automation application(Neuron), to force the WS to finish I use a transformer. Which I made blocking through a samper, and (simulated) lowest priority through a decelerator. After which it has performed its job, but will still give a failed message to Neuron.

 

Ideally I can make it so that everything else in the workspace has completed before the terminator can be activated, at which point the workspace is terminated with a succes message to Neuron.

 


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings