Web Services: ProvideX exception when 4-5 users simultaneously...

SOLVED

Hello guys!

We have a working website with custom shopping cart made with Sage 100 ERP Web Services.

All works great except when there are some load shopping cart - like 3-5 users - web services generate an exception:

"Could not initialize ProvideX.Script: An exception occurred."

Do you know why this may happens?

I thought maybe there are session limits in web services configuration but looks like its not. Here are our settings:


But it didn't help.

What else could it be?

We use PHP soap library to connect to Web services located on Windows Server 2012 with IIS.

Please advise what to do, or at least maybe some steps how I can research this issue more better.

Thanks.

Dmitry

Parents
  • 0

    Anybody? We still have this issue :-(

  • 0 in reply to Dmitry

    Greetings Dmitry,

    I don't have a ready solution for you.  I have never seen that error with Web Services.  Have you contacted Sage 100 Customer Support about this?  If not, I would encourage you to do so so they can log the issue and escalate it appropriately if needed.

    Thank you,

    Kent Mackall

  • 0 in reply to Kent Mackall

    Hello Kent!

    Thanks for your response.

    We didn't contact Sage customer support yet, because i wanted to try all possible options ourself first and then if no luck create a ticket.

    At this time we found some interesting things:

    - client told me that he has licensed number of MAS workstation active users = 10. When we just started site and when all those users were online at their workstations - we always had ProvideX exception error because system use another user just for web services and there were no "free spot" in active users pool for it.

    - then client decided to keep one free spot and site worked.

    So we thought its related somehow to licensed users limitation.

    But then client ordered one more license just for "web services" user to be sure that there are always free spot available.

    But we still have that error when 3-5 users online on cart.

    I am not completely understand what licenses my client has for - are they licenses for usernames, or workstation IPs, etc. But maybe its related somehow to that?

    It was definitely 100% provideX error when there were all number of licensed users online before (when there were no license spot for new user: "webservices" ).

    What do you think? Can this be somehow fixed? Maybe some users take more than 1 spot or something?

    UPDATE: Here is master console screenshot:

  • 0 in reply to Dmitry

    Dmitry,

    It may be related to user licenses but that may not be the whole issue.  For Sage to properly address this issue and t understand what is happening with your web service site you really need to contact Customer Support.  That way, they can gather all the appropriate details, etc. and process the case appropriately.

    Thank you,

    Kent Mackall

  • 0 in reply to Kent Mackall

    We still don't know the solution or reason for this error, but it happens 3-5 times per day.

    I activated remote diagnostic setting and was monitoring it last day.

    I found that when the error "Could not initialize ProvideX.Script: An exception occurred." happens - it increases the number of sessionsAborted variable.

    Here is the stats from remote diagnostic call:

    And here is the configuration values from remote diagnostic call:

    Maybe someone see something wrong? Or maybe some parameter looks weird for you?

    Thanks.

    Dmitry

Reply
  • 0 in reply to Kent Mackall

    We still don't know the solution or reason for this error, but it happens 3-5 times per day.

    I activated remote diagnostic setting and was monitoring it last day.

    I found that when the error "Could not initialize ProvideX.Script: An exception occurred." happens - it increases the number of sessionsAborted variable.

    Here is the stats from remote diagnostic call:

    And here is the configuration values from remote diagnostic call:

    Maybe someone see something wrong? Or maybe some parameter looks weird for you?

    Thanks.

    Dmitry

Children
  • 0 in reply to Dmitry
    verified answer

    Hello everyone!

    We were not able to solve this on web services or server configuration level, but we fixed it with a code trick.

    Instead of single method call we made a cycle of delayed calls in case of ProvideX error.

    It looks like this:

    - make call

    - catch exception and if exception = ProvideX error then:

     - delay 3 second

     - repeat the same call again

     - catch exception and if exception = ProvideX error then:

       - delay 6 second

       - repeat the same call again

       - catch exception and if exception = ProvideX error then:

         - delay 9 second

         - repeat the same call again

    - if after 3 calls no success - show an error, otherwise proceed to the next...

    After 3 weeks of testing this cycle works. We had no user who was not able to complete a call correctly.

    Hope this will help someone.