[ic] MV_DEFAULT_MATCHLIMIT setting problem

ic at 3edge.com ic at 3edge.com
Tue Jul 8 15:35:56 UTC 2008


> Thank you Rene,
> 
>  [var MV_DEFAULT_MATCHLIMIT] returns me 100.
> 
>  I added [value mv_matchlimit] at the top of results.html.
> 
> 
> http://www.mydomain.co.jp/cgibin/inter.cgi/scan/sf=template_page/se=av/
> tf=sku.html
> show matchlimit is 50
> 
> http://www.mydomain.co.jp/cgibin/inter.cgi/scan/sf=template_page/se=av/
> tf=sku/ml=100.html
> show matchlimit is 100
> 
> IC v5.2.0 does not support MV_DEFAULT_MATCHLIMIT ?
> 
> 
> My interchange/lib/Vend/Scan.pm shows below.
> 
> sub _matchlimit {
>     shift;
>     my $val = lc(shift);
>     return -1 if $val eq 'none' or $val eq 'all';
>     return int($val) || $::Variable->{MV_DEFAULT_MATCHLIMIT} || 50;
> }
> 

It looks like it is not working, and I am not sure if it has ever worked in
the recent versions, perhaps it depends on the type of search.  I've tested
with latest 5.6.0 on the demo (searches via the search box on the left, and
the links below in the menu).

Searchbox:  matchlimit is set (ml = 10) .. in this case Scan.pm also goes
through sub _matchlimit  and uses ml=10 furtheron
Link below it:  matchlimit is not set .. in this case Scan.pm does not go to
the sub _matchlimit, because :

* /lib/Vend/Scan.pm   line : 482     foreach $p ( grep defined $c->{$_},
@Order) {  ....
  As $c->{mv_matchlimit} is not defined it is skipped.

* line: 526 is then performed for this search in my case:   $q = new
Vend::DbSearch %options;
  %options does not contain the mv_matchlimit.

* In /lib/Vend/DbSearch.pm   (and the other xxxSearch.pm  Glimpse.pm
Swish.pm etc)  mv_matchlimit => 50   is defined as a default in the top
somewhere (search for 50) ... Because no mv_matchlimit is provided it will
set things to 50 here.



More information about the interchange-users mailing list