[ic] Strange behavior when using CGI values as loop list elements

Mike Heins mike at perusion.com
Thu Feb 26 20:05:30 UTC 2009


Quoting Marty Tennison (marty at dripdepot.com):
> Mike Heins wrote:
> > Quoting Marty Tennison (marty at sediva.com):
> >   
> > I can duplicate it. I don't know what is causing it yet. It may have
> > something to do with restrict/allow -- it is not happening when the value
> > is parsed.
> >
> > You can work around it with:
> >
> > 	[loop list=`$CGI->{looplist}`]
> >
> >   
> 
> Thanks, Mike I appreciate your help. This may end up being a local issue
> for me and not affect anyone else. But just in case it is not, I did
> some more digging and came up with some interesting info.  I'll post it
> here for archiving in the event it is useful for others.
> 
> The problem only occurs if I use Interchange::Link.  It does not occur
> if I use vlink or tlink.

It occurs for me using tlink or vlink, either one. And it happens
on 5.4 as well.

> So, I uncommented the warn statements in
> Link.pm and found out that it is hanging while trying to read the
> socket. (see details below)
> 
> Beyond that is over my head.  Interestingly, while the hang occurs that
> CPU is pegged at 100%, so interchange is searching for something, I'm,
> just not sure what.
> 
> ==== BEGIN Link.pm output ========
> [Thu Feb 26 10:58:38 2009] -e: Got environment.
> [Thu Feb 26 10:58:38 2009] -e: Got entity.
> [Thu Feb 26 10:58:38 2009] -e: Getting location /
> [Thu Feb 26 10:58:38 2009] -e: InterchangeServer=/var/run/interchange/socket
> [Thu Feb 26 10:58:38 2009] -e: vlink /var/run/interchange/socket
> RandomServer=
> [Thu Feb 26 10:58:38 2009] -e: Ready to connect.
> [Thu Feb 26 10:58:38 2009] -e: reading from SOCK
> (it hangs here........Notice the times)
> [Thu Feb 26 10:58:45 2009] -e: GOT header read from SOCK: HTTP/1.0 200 OK
> [Thu Feb 26 10:58:45 2009] -e:
> [Thu Feb 26 10:58:45 2009] -e: GOT header read from SOCK: Content-Type:
> text/html; charset=ISO-8859-1
> [Thu Feb 26 10:58:45 2009] -e:
> [Thu Feb 26 10:58:45 2009] -e: GOT header read from SOCK:
> [Thu Feb 26 10:58:45 2009] -e:
> [Thu Feb 26 10:58:45 2009] -e: Returning OK
> ==== END Link.pm output ========
> 
> Some more clues for anyone interested. (not sure if any of these matter)
> 
> This may sound odd, but coincidentally the issue arose when I commented
> out the #Variable  UI  1 in my interchange.cfg file.  I was doing some
> testing and noticed it and when I uncommented the line the problem
> persisted and I got some strange ichelp.txt errors ( Vend::Data export:
> non-existent database ichelp)  that I had to dig into.  I'm not sure if
> they are related but it happed at the same time and it stuck in my mind. :)
> 
> I recently added.
> 
> Variable MV_HTTP_CHARSET ISO-8859-1
> 
> to my interchange.cfg file, it does not fix the problem if I comment it out.
> 
> I recently started using FullUrl yes and Interchange::Link together so I
> can specify a <location /> in my httpd.conf file for each virtual host. 
> As mentioned above, going back to vlink or tlink solves the problem.
> (but I dislike using thos pesky rewrite rules) :)
> 
> I've been doing a lot of Mysql work lately but I don't see how that
> could affect this issue.
> 
> I've tried rpc, low and high with no effect.
> 
> Thats about it.  Now; committed to the archives forever. :)

I will be working on this as I get a chance. It may be the impetus for
me to clean up the $CGI --> %CGI::values mess.

Note to self -- look for Tie statements....

-- 
Mike Heins
Perusion -- Expert Interchange Consulting    http://www.perusion.com/
phone +1.765.328.4479  tollfree 800-949-1889 <mike at perusion.com>

Getting old is tough. It's frustrating when you know all the
answers and nobody bothers to ask the questions. -- unknown



More information about the interchange-users mailing list