FAO Brian & Manik - RE: [jbosscache-dev] Testing JDBCCacheLoader - Embedding AS inside aUT?

Manik Surtani manik at jboss.org
Wed Jan 17 04:23:34 EST 2007


On 16 Jan 2007, at 18:58, Galder Zamarreno wrote:

> In fact, I can't see a straightforward way of running  
> JDBCCacheLoaderTest without running the test inside AS. We could  
> set up the necessary libraries and system properties to query java:/ 
> DefaultDS, but of course, you can only search this locally.
>
> There's a hack to make DefaultDS available outside the VM but this  
> returns javax.naming.Reference and not javax.sql.DataSource, so any  
> attempt to go down this route would mean modification to the source  
> code.
>
> I just wanna make sure that the JDBCCacheLoaderTest runs for  
> ManagedConnectionFactories. This is because as a result of  
> introducing external standalone connection pooling, I'm having to  
> do some fairly fundamental changes JDBCCacheLoader. I can easily  
> test NonManagedConnectionFactory and C3P0ConnectionFactory, but  
> testing ManagedConnectionFactories path becomes a bit more  
> complicated.
>

What resources do you need from the AS?  Can these be emulated?

> In fact, deep down, I wanna refactor a little bit JDBCCacheLoader  
> cos there's too much going on in one file and I'd like to take out  
> some of the classes/interfaces defined inside.

+1!!  :-)

>
> This might not be that important at this stage cos, which AS  
> version would I test it against? JBossCache 2.0 won't work with  
> 4.0.x, so the only use case for ManagedConnectionFactory I can  
> think of would be a user defined cache with a JDBCCacheLoader as  
> none of the 4.0.x code would be able to interact with this cache.  
> Only user code could really interact with JBossCache 2.0 at the  
> moment and even if they did, they either run default configuration  
> or, if they run all, they'd need scoped deployment. Has it been  
> defined the plan for 4.2 in terms of JBossCache? What version are  
> we gonna be shipping there?

1.4.1.

>
> Brian, Manik, thoughts?
>
> For the moment, I'm focusing on getting all the stuff right for  
> NonManagedConnectionFactory and C3P0ConnectionFactory paths.
>
> Galder Zamarreño
> Sr. Software Maintenance Engineer
> JBoss, a division of Red Hat
>
> IT executives: Red Hat still #1 for value http://www.redhat.com/ 
> promo/vendor/
>
> -----Original Message-----
> From: Galder Zamarreno
> Sent: 16 January 2007 18:23
> To: Galder Zamarreno; Ryan Campbell; Manik Surtani
> Cc: jbosscache-dev at lists.jboss.org; QA
> Subject: RE: [jbosscache-dev] Testing JDBCCacheLoader - Embedding  
> AS inside aUT?
>
> BTW, I have taken Head, modified cache-jdbc.properties so that I  
> can test JDBCCacheLoaderTest with AS and the tests fail. Currently  
> investigating it...
>
> Galder Zamarreño
> Sr. Software Maintenance Engineer
> JBoss, a division of Red Hat
>
> IT executives: Red Hat still #1 for value http://www.redhat.com/ 
> promo/vendor/
>
> -----Original Message-----
> From: jbosscache-dev-bounces at lists.jboss.org [mailto:jbosscache-dev- 
> bounces at lists.jboss.org] On Behalf Of Galder Zamarreno
> Sent: 16 January 2007 17:49
> To: Ryan Campbell; Manik Surtani
> Cc: jbosscache-dev at lists.jboss.org; QA
> Subject: RE: [jbosscache-dev] Testing JDBCCacheLoader - Embedding  
> AS inside aUT?
>
> But thinking about this, should JBC be the one providing  
> integration tests with Hibernate? Unlike JBDCCL where Cache is the  
> client for AS, in Hibernate's case, it's Hibernate who's JBC's  
> client and therefore, Hibernate should be the one tested.
>
>> From JBC's point of view, we don't know what we need to do to  
>> Hibernate to confirm that is working correctly, it's not really  
>> our domain. IMHO, this is Hibernate's domain and it's this project  
>> who should include integration tests with JBC versions.
>
> Galder Zamarreño
> Sr. Software Maintenance Engineer
> JBoss, a division of Red Hat
>
> IT executives: Red Hat still #1 for value http://www.redhat.com/ 
> promo/vendor/
>
> -----Original Message-----
> From: Ryan Campbell
> Sent: 16 January 2007 17:39
> To: Manik Surtani; Galder Zamarreno
> Cc: jbosscache-dev at lists.jboss.org; QA
> Subject: RE: [jbosscache-dev] Testing JDBCCacheLoader - Embedding  
> AS inside a UT?
>
> The portal builds do something similar.  We have exploded jboss  
> instances on cruisecontrol, and pass in their paths via system  
> properties.
>
> We don't have anything like this for hibernate, although this is  
> pretty easy using <get/> and repository.jboss.com.
>
>> -----Original Message-----
>> From: Manik Surtani [mailto:manik at jboss.org]
>> Sent: Tuesday, January 16, 2007 4:05 AM
>> To: Galder Zamarreno
>> Cc: jbosscache-dev at lists.jboss.org; QA
>> Subject: Re: [jbosscache-dev] Testing JDBCCacheLoader - Embedding AS
>> inside a UT?
>>
>> Wow.  I'd hate to add the weight of downloading (on the fly?) an AS
>> version, starting and stopping it from within a unit test.
>>
>> As an immediate solution we could add this to the list of manual
>> release procedures so it gets done with every release, but as you
>> pointed out manual steps suck too.
>>
>> IMO, this falls into a category of integration tests (such as testing
>> with Hibernate releases) which needs to sit outside of the usual
>> cruise control runs and the functional test suite.
>>
>> I propose a more formal integration test suite (maybe with it's own
>> cruise control target?) which:
>>
>> 1)  Pulls down different versions of JBC and performs compat/interop
>> tests (we already have these)
>> 2)  Pulls down different Hibernate versions and performs tests on  
>> these
>> 3)  Pulls down different AS versions and performs tests, including
>> the JDBCCacheLoader with managed collections as well as other JBC
>> 'use cases' such as SFSBs and HTTP Sessions
>> 	3.1)  Different combinations of the versions in 2) and 3), to test
>> EJB3 entity beans
>> 	3.2)  Combinations including different JGroups versions
>>
>> So as you can see, we have a shit load of test combinations that can
>> come out of this.  I do see the value here though, it will even make
>> QA's work in certifying JBC releases against AS versions and JGroups
>> versions (and even Hibernate versions) easier.
>>
>> --
>> Manik Surtani
>>
>> Lead, JBoss Cache
>> JBoss, a division of Red Hat
>>
>> Email: manik at jboss.org
>> Telephone: +44 7786 702 706
>> MSN: manik at surtani.org
>> Yahoo/AIM/Skype: maniksurtani
>>
>>
>>
>> On 16 Jan 2007, at 00:42, Galder Zamarreno wrote:
>>
>>> I've been messing around with JDBCCacheLoader and I have realised
>>> that we don't currently have a unit test that can test the
>>> JDBCCacheLoader inside an AS. Ok, we have JDBCCacheLoaderTest that
>>> can work based on the cache-jdbc.properties and you could start AS
>>> manually and test it.
>>>
>>> This however is a manual process and when it comes to CC, only
>>> standalone JDBCCacheLoader is being tested.
>>>
>>> I think it'd be ideal to basically extend JDBCCacheLoaderTest to
>>> set it up to work with an AS (starting it/stopping it). This would
>>> give us even more confidence and coverage for the
>>> ManagedConnectionFactory area. I might not have time to do that
>>> before I commit my current work for BETA1 but definitely something
>>> worth bearing in mind.
>>>
>>> Another question would be of course, what AS version would be
>>> integrate against?
>>>
>>> There're various projects out there that have done something
>>> similar, first obviously AS itself and second messaging. What's
>>> your experience with this? What have we learnt about it? Shall we
>>> reuse some code for this? We would need a very limited AS version
>>> actually with JNDI, JDBC Connection Pooling, HS and HS driver.
>>>
>>> As you can see, this opens ups whole bunch of questions. Thoughts?
>>> Opinions? Critics?
>>>
>>> Cheers,
>>>
>>> Galder Zamarreño
>>> Sr. Software Maintenance Engineer
>>> JBoss, a division of Red Hat
>>>
>>> IT executives: Red Hat still #1 for value http://www.redhat.com/
>>> promo/vendor/
>>>
>>>
>>> _______________________________________________
>>> jbosscache-dev mailing list
>>> jbosscache-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/jbosscache-dev
>>
>
>
> _______________________________________________
> jbosscache-dev mailing list
> jbosscache-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/jbosscache-dev






More information about the jbosscache-dev mailing list