1 2 3 Previous Next 39 Replies Latest reply on Aug 17, 2017 5:32 AM by duncanbaker

    OnTimer script consuming CPU cycles

    duncanbaker

      Product and version: FileMaker Pro Adv 14.0.5 (32-bit) - although I don't believe it is limited to this version, Pro Adv 15 exhibits the same behavior

      OS and version: Windows 10 Home Version 1607 Build 14393.693 - although this has also been tested on Windows Server 2012 R2

      Browser and version (for WebDirect only): N/A

      Hardware: Tested on Windows laptop and Azure cloud server

      Description: See below

      How to replicate: See below for details

      Workaround (if any): Close FileMaker and relaunch

       

      This was originally posted here: OnTimer script consuming CPU cycles

       

      I have a situation where we have a robot machine generating PDFs. It's the classic scenario where an OnTimer script step starts and the machine checks for records that need a PDF making, if it finds some then it proceeds to do that, if not it ends and the process starts again 60 seconds later. The search happens very quickly. It is a hosted file.

       

      What's happening is that CPU cycles on the robot machine are being consumed even when the script is not running. The CPU percentage slowly climbs the longer that the file is open running this OnTimer routine. If left for a couple days, FileMaker becomes unresponsive and I have to crash out. And even more than that, if I close the file and have no files open, FileMaker continues to consume the CPU cycles. I've put some screenshots below with explanatory text. This has been tested on multiple robot machines and with the file hosted on different servers and the same occurs.

       

      Now I have set up a new file with an OnTimer and done something very simple (Enter Find Mode then Enter Browse Mode), and this does not exhibit the same behavior. That would point to the routine in my problem file but if a script is not running then why would any CPU cycles be used, and if the file is closed then surely no cycles should be used? (I appreciate that occasional polling might result in a few but not maxing out a core.)

       

      This is the file open. Debugger is on and you can see no script is running. FileMaker is consuming 28%. The file is not actually doing anything here.

      1.png

       

      The file has been closed, I've waited a few minutes. You can see no files are open. CPU is still humming away.

      2.png

       

      Then I close FileMaker and reopen it. No files open and the CPU is at zero - what one would expect.

      3.png

       

      So then I open the file again and it starts off at 0% when it's not running the script. The OnTimer has been triggered OnOpen.

      4.png

       

      And after a few minutes the CPU starts climbing again even though there's no script running. Give it a few hours and we're back to maxing out the core.

      5.png

        1 2 3 Previous Next