Loading ...
Sorry, an error occurred while loading the content.

RE: [soaplite] Figuring out SOAP::Lite dependencies

Expand Messages
  • Joe Tseng
    I think I found my problem!!! I wrote a short script to loop my SOAP call and then have the SOAP::Lite dump its contents when it used the on_fault handler.
    Message 1 of 6 , Oct 8, 2013
    • 0 Attachment
      I think I found my problem!!!  I wrote a short script to loop my SOAP call and then have the SOAP::Lite dump its contents when it used the on_fault handler.  After perusing through the aftermath, I found the error that looked a lot like this:

      Missing newline after chunk data: <your data here> at /usr/share/perl5/Net/HTTP/Methods.pm line 481.

      http://bit.ly/1fgrj26 

      I've updated my Net::HTTP module via CPAN (v6.02 from Ubuntu v12.04/libnet-http-perl to v6.06) and restarted my daemon.  Hope this is it...


      If you type "Google" into Google, you can break the Internet.  -- Jen Barber



      From: joe_tseng@...
      To: soaplite@yahoogroups.com
      Subject: RE: [soaplite] Figuring out SOAP::Lite dependencies
      Date: Mon, 7 Oct 2013 09:50:15 -0400

      ...And the error came back, despite the fact I upped the length value to 99999 (and I haven't seen anything larger than that).  I have a test system that NEVER errors out, even when running in parallel with prod, so I don't think the problem is with my code.  And I can't figure out what's the diff re: modules between my test and prod systems.

      Couple of observations:
      1. The people who run the feed I use tell me their data is updated once an hour.  Whenever I see a msg from my script saying I'm getting an error and I'm sitting at my console, I manually rerun my script after no more than 5 minutes and there's no problem, and I've done this numerous times.  I do plan on making my script poll repeatedly until successful, but I still want to know the source of the problem.  I did attempt to get more information by making my on_fault handler provide more details.  Turns out my error msg came from $soap->transport->status.  Are there any other details available from $soap that might prove useful?
      2. When I looked at my modules, the one immediate difference I found was that SOAP::Lite on my test system (v0.716) was different than that on my prod box (v0.714).  I updated both (v1.06) but the problem still persists.  What other dependencies might be needed to be updated as well?


      If you type "Google" into Google, you can break the Internet.  -- Jen Barber



      From: joe_tseng@...
      To: soaplite@yahoogroups.com
      Subject: RE: [soaplite] Figuring out SOAP::Lite dependencies
      Date: Fri, 27 Sep 2013 10:42:20 -0400

      Looks like upping the value might have did the trick!  I just got a feed with an object of size 13178.  Thank you for the tip!

      (I say might because I'm still sporadically getting the "200 OK" errors, but if I manually trigger my job a minute later, it runs normally.  I suspect this time it's my feed provider; I'll be keeping an eye out on this for a while.)

       - Joe


      If you type "Google" into Google, you can break the Internet.  -- Jen Barber



      Date: Fri, 6 Sep 2013 08:20:25 -0700
      From: qglex@...
      Subject: Re: [soaplite] Figuring out SOAP::Lite dependencies
      To: joe_tseng@...

      If the length of the envelope/xml is truncating to 10000, take a look at

      $SOAP::Constants::MAX_CONTENT_SIZE

      By default it's set to 10,000.


       
      -Jeff


      From: Joe Tseng <joe_tseng@...>
      To: "soaplite@yahoogroups.com" <soaplite@yahoogroups.com>
      Sent: Wednesday, September 4, 2013 6:41 AM
      Subject: RE: [soaplite] Figuring out SOAP::Lite dependencies

       
      Some additional details:

      The first symptom of this issue was when I saw an email that was sent from my SOAP object's on_fault handler; the error said "200 OK".  When I looked further into it, it turns out I was still indeed pulling down XML content from the feed, but for whatever reason was being truncated.  So yes, the remote system was still up and working properly, but the problem was with one of my modules.

      Regarding symptoms, the only issue I've seen that *might* be a/the cause (and is definitely repeatable) is the amount of data is too large to be handled completely in one pass.  I get a msg saying there's an issue regarding my XML data at position 8192 - that's where the data is truncated.
      [...]


    Your message has been successfully submitted and would be delivered to recipients shortly.