tomee-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Romain Manni-Bucau <rmannibu...@gmail.com>
Subject Re: commons-jcs-jcach getCacheNames not working
Date Sat, 05 Sep 2015 23:19:58 GMT
Le 5 sept. 2015 06:22, "Steve Goldsmith" <sgjava@gmail.com> a écrit :
>
> I believe the behavior of -all- providers should be the same from a JCache
> perspective. I'm not sure why it matters how I create the cache if it's
> visible to JCache API getCacheManager().getCache("testCache") then
> testCache should show up via getCacheNames. It's not a game changer for me
> right now, but what happens when someone relies on the behavior of
> getCacheNames?
>

Should be but is not specified.

GetCache doesnt create a cache by spec. CreateCache does.

> On Fri, Sep 4, 2015 at 5:40 PM, Romain Manni-Bucau <rmannibucau@gmail.com>
> wrote:
>
> > Then you suppose it is created if declare which is another not defined
> > assumption. Why wouldnt it be lazy?
> >
> > My point is only you cant rely on what you suppose if you want to stay
> > standard and not to say it is good or bad.
> > Le 4 sept. 2015 23:09, "Steve Goldsmith" <sgjava@gmail.com> a écrit :
> >
> > > In my mind it should show up even if it's automatically created.
> > > On Sep 4, 2015 3:06 PM, "Romain Manni-Bucau" <rmannibucau@gmail.com>
> > > wrote:
> > >
> > > > We can in jcs since we have it but not sure from a API point of view
> > what
> > > > is better - trying to not use test as an excuse ;)
> > > > Le 4 sept. 2015 20:42, "Steve Goldsmith" <sgjava@gmail.com> a écrit
:
> > > >
> > > > > Yea, just nice to see the cache show up before you use it in unit
> > tests
> > > > :)
> > > > > Not a biggie from a normal coding perspective.
> > > > >
> > > > > On Fri, Sep 4, 2015 at 2:32 PM, Romain Manni-Bucau <
> > > > rmannibucau@gmail.com>
> > > > > wrote:
> > > > >
> > > > > > Not portable behavior then. But nothing in the standard about
the
> > > > config
> > > > > so
> > > > > > looks ok and if your cache is not therz size is empty so nthg
> > > blocking
> > > > > IMO.
> > > > > > Le 4 sept. 2015 20:25, "Steve Goldsmith" <sgjava@gmail.com>
a
> > écrit
> > > :
> > > > > >
> > > > > > > So, you have to explicitly do the createCache? This is
different
> > > > > behavior
> > > > > > > then Ehcache provider. I do not want to code to a provider
if
> > > > possible.
> > > > > > The
> > > > > > > weird thing is everything works except getCacheNames, so
far
:)
> > > > > > >
> > > > > > > On Fri, Sep 4, 2015 at 1:35 PM, Romain Manni-Bucau <
> > > > > > rmannibucau@gmail.com>
> > > > > > > wrote:
> > > > > > >
> > > > > > > > Le 4 sept. 2015 19:30, "Steve Goldsmith" <sgjava@gmail.com>
a
> > > > écrit
> > > > > :
> > > > > > > > >
> > > > > > > > > So if I specify jcache.ccf in classpath, then
technically
it
> > > > should
> > > > > > > show
> > > > > > > > up
> > > > > > > > > via getCacheNames? It doesn't appear to pick
it up from
> > > > > > > > > src/main/resources/jcache.ccf.
> > > > > > > > >
> > > > > > > >
> > > > > > > > No. If you use one of these cache through jcache then
the
> > config
> > > > > should
> > > > > > > get
> > > > > > > > used and the cache be listed. If you start and dont
use
jcache
> > -
> > > > even
> > > > > > > using
> > > > > > > > jcs internals - you ll get an empty iterable.
> > > > > > > >
> > > > > > > > > On Fri, Sep 4, 2015 at 1:17 PM, Romain Manni-Bucau
<
> > > > > > > > rmannibucau@gmail.com>
> > > > > > > > > wrote:
> > > > > > > > >
> > > > > > > > > > Think it does but maybe it takes another
one. About
> > > > getCacheNames
> > > > > > it
> > > > > > > is
> > > > > > > > > > only *created* caches ie the one jcache
saw and not the
> > ones
> > > > jcs
> > > > > > has.
> > > > > > > > > > Le 4 sept. 2015 19:14, "Steve Goldsmith"
<
sgjava@gmail.com
> > >
> > > a
> > > > > > écrit
> > > > > > > :
> > > > > > > > > >
> > > > > > > > > > > Looking at
> > org.apache.commons.jcs.jcache.JCSCachingProvider
> > > > it
> > > > > > > > doesn't
> > > > > > > > > > > appear to search classpath? Do you
have to explicitly
> > > specify
> > > > > > path
> > > > > > > in
> > > > > > > > > > > getCacheManager call?
> > > > > > > > > > >
> > > > > > > > > > > On Fri, Sep 4, 2015 at 2:40 AM, Romain
Manni-Bucau <
> > > > > > > > > > rmannibucau@gmail.com>
> > > > > > > > > > > wrote:
> > > > > > > > > > >
> > > > > > > > > > > > Hi,
> > > > > > > > > > > >
> > > > > > > > > > > > final CachingProvider cachingProvider
=
> > > > > > > > Caching.getCachingProvider();
> > > > > > > > > > > > final CacheManager cacheManager
=
> > > > > > > > cachingProvider.getCacheManager();
> > > > > > > > > > > > cacheManager.createCache("c1",
new
> > > > > MutableConfiguration<String,
> > > > > > > > > > > String>());
> > > > > > > > > > > > cacheManager.createCache("c2",
new
> > > > > MutableConfiguration<String,
> > > > > > > > > > > String>());
> > > > > > > > > > > > final Collection<String>
actualNames = new
> > > > > > ArrayList<String>(2);
> > > > > > > > > > > > for (final String s : cacheManager.getCacheNames())
> > > > > > > > > > > > {
> > > > > > > > > > > >     actualNames.add(s);
> > > > > > > > > > > > }
> > > > > > > > > > > > assertEquals(2, actualNames.size());
> > > > > > > > > > > > assertEquals(new HashSet<String>(asList("c1",
"c2")),
> > new
> > > > > > > > > > > > HashSet<String>(actualNames));
> > > > > > > > > > > > cachingProvider.close();
> > > > > > > > > > > >
> > > > > > > > > > > > works fine so you have a setup
issue somewhere - or
you
> > > > dont
> > > > > > use
> > > > > > > > the
> > > > > > > > > > > > same cache manager.
> > > > > > > > > > > >
> > > > > > > > > > > >
> > > > > > > > > > > >
> > > > > > > > > > > > Romain Manni-Bucau
> > > > > > > > > > > > @rmannibucau <https://twitter.com/rmannibucau>
|
Blog
> > > > > > > > > > > > <http://rmannibucau.wordpress.com>
| Github <
> > > > > > > > > > > > https://github.com/rmannibucau>
|
> > > > > > > > > > > > LinkedIn <https://www.linkedin.com/in/rmannibucau>
|
> > > > > > Tomitriber
> > > > > > > > > > > > <http://www.tomitribe.com>
> > > > > > > > > > > >
> > > > > > > > > > > > 2015-09-04 3:52 GMT+02:00 sgjava
<sgjava@gmail.com>:
> > > > > > > > > > > >
> > > > > > > > > > > > > getCacheManager().getCacheNames()
is not working
with
> > > > JCS.
> > > > > I
> > > > > > > get
> > > > > > > > an
> > > > > > > > > > > empty
> > > > > > > > > > > > > org.apache.commons.jcs.jcache.ImmutableIterable.
The
> > > > > Ehcache
> > > > > > > > provider
> > > > > > > > > > > > > correctly returns a String
iterator with the cache
> > > names.
> > > > > My
> > > > > > > > tests
> > > > > > > > > > run
> > > > > > > > > > > > > fine,
> > > > > > > > > > > > > but this is a good way to
check that your
> > configuration
> > > > is
> > > > > > > picked
> > > > > > > > up
> > > > > > > > > > > with
> > > > > > > > > > > > > multiple caches defined.
> > > > > > > > > > > > >
> > > > > > > > > > > > >
> > > > > > > > > > > > >
> > > > > > > > > > > > > --
> > > > > > > > > > > > > View this message in context:
> > > > > > > > > > > > >
> > > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
http://tomee-openejb.979440.n4.nabble.com/commons-jcs-jcach-getCacheNames-not-working-tp4676111.html
> > > > > > > > > > > > > Sent from the TomEE Users
mailing list archive at
> > > > > Nabble.com.
> > > > > > > > > > > > >
> > > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > >
> > > > > > > > > > > --
> > > > > > > > > > > Steven P. Goldsmith
> > > > > > > > > > >
> > > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > --
> > > > > > > > > Steven P. Goldsmith
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > --
> > > > > > > Steven P. Goldsmith
> > > > > > >
> > > > > >
> > > > >
> > > > >
> > > > >
> > > > > --
> > > > > Steven P. Goldsmith
> > > > >
> > > >
> > >
> >
>
>
>
> --
> Steven P. Goldsmith

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message