4 Replies Latest reply on Jul 10, 2017 2:53 AM by nickorr

    FMSE crash

    Vincent_L

      Hi,

      FMSE, the server side script running process (fmsased) crashed

      FMS 15.0v3, Sierra 12.0.0, MacBook Pro 15" Retina 2014, 16 GB of RAM, 512 GB SSD

      Base element 3.3.4 installed on server, and probably used in server side scripts

       

      Crashed only occurred once the 4th of July, didn't have problem before that so far

       

      here's the crash log

      Dropbox - fmsased_2017-07-04-113014_FMPServer.crash.zip

       

      This triggered that idea, because this happened just 2 days before going to holidays, and now I fear about having to manually restart FMSE. Doesn't make sense, there should be an auto-restart option :

      FMS engines auto-restart on quit/crash

       

      But the bottom line is that a crash is the result of a bug, that's why I'm reporting it here.

        • 1. Re: FMSE crash
          TSGal

          Vincent_L:

           

          Thank you for your post.

           

          The crash log does show Base Elements being part of the crash thread (Thread 57, lines 5-7).  I have sent the crash report to Development and Testing for more interpretation of the crash.  When I receive any feedback, I will let you know.

           

          TSGal

          FileMaker, Inc.

          • 2. Re: FMSE crash
            monkeybreadsoftware

            On cleanup of CURL data structures in BaseElements plugin crashes here.

            A memory block is freed which was never allocated.

             

            As this is within a standard C++ class, I expect some memory corruption, e.g. one function overwrite memory it doesn't own.

            1 of 1 people found this helpful
            • 3. Re: FMSE crash
              TSGal

              Vincent_L:

               

              Development has looked over the open source code for the free version of the Base Elements plug-in:

              BaseElements-Plugin/BECurl.cpp at master · GoyaPtyLtd/BaseElements-Plugin · GitHub

               

              In essence, there is no thread protection on a global string that is being used by the functions doing the curl commands, so if two scripts running at the same time performed curl operations, it could have caused the type of crash in your crash log.

               

              TSGal

              FileMaker, Inc.

              1 of 1 people found this helpful
              • 4. Re: FMSE crash
                nickorr

                Thanks TSGal.

                 

                Vincent,

                 

                I can confirm that the BE plugin has never been coded to be thread safe, so it can't be run in multiple server side sessions simultaneously.  You need to structure your PSOS or schedules to run a single process at a time.

                 

                There's lots of ways of doing this, depending on the situation itself, so a bit beyond this thread.

                 

                Cheers,

                Nick

                 

                PS Interesting example of the power of open source that this could be checked and verified in the code before I'd even had a chance to respond.

                1 of 1 people found this helpful