Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MetaCPAN::Client does not cache results with WWW::Mechanize::Cached #37

Closed
melezhik opened this issue Sep 12, 2015 · 4 comments
Closed

Comments

@melezhik
Copy link

Hi! Not sure if this should address to MetaCPAN::Client directly , but it seems caching does not happen from time to time. Sometimes it works fine and sometimes client try to download stuff from internet over and over again.

My set up:

            my $meta_client = MetaCPAN::Client->new(
              ua => HTTP::Tiny::Mech->new(
                mechua => WWW::Mechanize::Cached->new(
                  cache => CHI->new(
                    driver   => 'File',
                    root_dir => "$ENV{HOME}/.swatman/metacpan/cache/",
                  ),
                ),
              ),
            );

@melezhik
Copy link
Author

I am afraid I hurry to open this one. This is not a bug, at least I probably know now what happening ...

@oalders
Copy link
Member

oalders commented Sep 13, 2015

@melezhik would you mind sharing what the problem was? Might be helpful to someone else.

@melezhik
Copy link
Author

First I tried to run mojo application, where fetch some information from metacpan using metacpan client in cache flavor so not re upload data from internet every time, see a code snippet above.

I am not sure but sometimes caching works fine - like files representing cache exists and because of cache an application web page is loaded quite fast, but sometimes it was not, first I blamed it to meta cpan client try to re-upload data from internet, ( ignoring a cache or WWW::Mechanize::Cached ignoring a cache or finally CHI working bad ... ) and so slow downing the output , but then I noticed that it is probably impact from other piece of application like slow css resources returned from external hosts etc.

I am still have not identified a real root of the issue, probably I needed to add some debug on metacpan-client / WWW::Mechanize::Cache context ( this would imply hacking into modules code then ), but I just decided to use metacpan-client without caching and then bring caching afterwords using low level CHI approach ...

So to make a long story short it was not probably metacpan-client/cache issue but just a slow response from other applications parts. But because I did not make a precise tests , I say it was not PROBABLY meat-cpan client/cache fault. I wonder if either metacpan-client or WWW::Mechanize::Cache or CHI allow to trace when/if caching is really done so to debug such an issues in a simple way?

@oalders
Copy link
Member

oalders commented Sep 14, 2015

Thanks for the clarification. You could try using LWP::ConsoleLogger::Easy if you need to debug the UserAgent. Not sure how that will behave with caching enabled, but you can get some useful information out of it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants