[ic] A brief discussion of UserTags and their presence in RPC server daemons

Mike Heins mike at perusion.com
Sat Jul 21 14:58:37 UTC 2012


Quoting Chris Keane (chris.keane at zzgi.com):
> Alternately, fix the code. We gone through various iterations of
> this over the last few years. Right now we're sitting with:
> in Vend::Parse
> in new()
> replace
>                add_tags($Vend::Cfg->{UserTag})
>                   unless $Vend::Tags_added++;

What is happening that the $Vend::Tags_added variable is not reset
at instance creation? It should be, as a part of the reset_vars()
routine:

	package Vend;
	reset 'A-Z';
	reset 'a-z';

This is done at the beginning of a connection. 

I really wasn't aware that this was a problem. Have you tried
checking the status of $Vend::Tags_added in Vend::Dispatch? Can
you confirm it is not being reset?

Another solution that comes to mind is the idea of an optional
permanent per-catalog UserTag instance. This would be selected
at connection start instead of the add_tags() routine. What it
would cost in memory (which would be fairly considerable, considering
it would contain all tags) would be made up for in performance.

-- 
Mike Heins
Perusion -- Expert Interchange Consulting    http://www.perusion.com/
phone +1.765.253.4194  <mike at perusion.com>

People who want to share their religious views with you
almost never want you to share yours with them. -- Dave Barry



More information about the interchange-users mailing list