Re: [infinispan-dev] [torquebox-dev] infinispan and hibernate-search
by Galder Zamarreño
Extending this to Infinispan since Sanne is very much interested in this stuff and we discussed this when we met in Lisbon.
While there, we agreed that situations like this requires TorqueBox to deploy its own CacheManager which can piggy back on the shared resources it needs (i.e. JGroups transport, AS7 executors…etc), and this would be deployed alongside Hibernate Search…etc. This is where we're heading with https://issues.jboss.org/browse/ISPN-1413
In the mean time, for your own Torquebox use case, feels to me sticking everything in the same module might be an easier solution.
Cheers,
On Nov 12, 2011, at 5:41 AM, Lance Ball wrote:
> Bob
> Well that sucks...
>
> But, fwiw, I think this last solution would allow us to ultimately ship this jar for general jruby use, while the former would not.
>
> I'm camping this weekend so doubt I'll get to it. Perhaps on Sunday.
>
> Lance
>
> On Nov 11, 2011, at 10:06 PM, Bob McWhirter wrote:
>
>>
>> An alternative would be to once again completely ignore AS7's baked-in infinispan, bring our own entire stack of jars, and set up our own cache manager implicitly.
>>
>> That could still work.
>>
>> -Bob
>>
>>
>> On Nov 11, 2011, at 10:03 PM, Bob McWhirter wrote:
>>
>>> Heya Lance--
>>>
>>> So, from what I can tell, Infinispan looks for an infinispan-modules.properties when booting to figure out what its capabilities are, including the search-manager to use, etc.
>>>
>>> https://docs.jboss.org/author/display/ISPN/Extending+Infinispan
>>>
>>> Previously, it worked because we included the hib-search.jar in the same classloader as infinispan-query.jar, being within out torquebox-cache module, since we brought our own infinispan, mostly. I think.
>>>
>>> Now, we use AS7's, which has Infinispan in the shared modules and we're using it. But it can't see the -query bit, so doesn't load the query-related componentry.
>>>
>>> I've poked around and I don't think we can dynamically add it at runtime.
>>>
>>> I think the potential path forward is to try manually adding the infinispan-query and hibernate-search (and lucene) jars to modules/org/infinispan/main/ module, perhaps, and seeing if that gives us a query-capable infinispan globally within the AS.
>>>
>>> If that works, then we can figure out the right way to actually stitch that together.
>>>
>>> It makes me feel somewhat queasy to muck about in other modules, but reading their mailing lists, it seems they are roughly aware of the problem, but haven't decided how to solve it.
>>>
>>> So, the steps I might follow (if I get a chance this weekend) are:
>>>
>>> a) take all the ispan-search related jars out of torquebox-cache's module, including our module.xml
>>> b) put them in modules/org/infinispan/main/*
>>> c) edit the module.xml in modules/org/infinispan/main/module.xml to reference them
>>>
>>> Basically, shuffle stuff from our module back to ispan's.
>>>
>>> I then hope we magically get a query-enabled cache-manager.
>>>
>>> I'll let you know if I get to it, and if I have any success.
>>>
>>> -Bob
>>
>
--
Galder Zamarreño
Sr. Software Engineer
Infinispan, JBoss Cache
13 years, 1 month
RadargunTPCC benchmark review
by Galder Zamarreño
Hi all,
I had the chance to look at the TPCC radargun plug-in you've built (https://github.com/sebastianopeluso/radargun.git - branch TPCC) and I had some comments to make:
1. Instead of using divisions for converting time units, it'd be better to use TimeUnit conversions to make the code more readable.
2. To make the test run faster, it'd be interesting to transform Order...etc to use Infinispan Externalizers but that's not portable to other frameworks. So, implementing Externalizable could be a good middle ground.
3. Is TpccPopulationStage executed in each slave? Or in single slave? Seems like it's only executed in one of the slaves? If so that's fine cos it'd replicate to all right?
4. Has this TPCC benchmark code been run with Infinispan 4?
Overall looks good from a RadarGun integration point of view, but I'm not familiar with the specifics of TPCC, so someone else should comment on how well the code adheres to the spec.
I've noticed that RadarGun is not up to date with the latest 4.2 Infinispan version and does not have a plugin for Infinispan 5, so I'll update these two pieces.
I plan to only create one plugin for Infinispan 5, which will contain latest Infinispan 5.1 beta.
Cheers,
On Nov 1, 2011, at 4:47 PM, Mircea Markus wrote:
>
>
> Begin forwarded message:
>
>> From: Sebastiano Peluso <peluso(a)gsd.inesc-id.pt>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 14 October 2011 10:33:36 GMT+01:00
>> To: Mircea Markus <mircea.markus(a)jboss.com>
>> Cc: Paolo Romano <romano(a)inesc-id.pt>, Manik Surtani <msurtani(a)redhat.com>
>>
>> Hi Mircea,
>>
>> OK, don't worry! :-)
>>
>> Cheers
>>
>> Sebastiano
>>
>> Il 13/10/11 19:31, Mircea Markus ha scritto:
>>> Hi Sebastiano, right now I'm busy remaking locking/transaction support in 5.1. This should keep me busy for the next 3 weeks or so - after that the plan is to look at tpcc, integrate it and produce performance numbers to go with it.
>>> Sorry for not taking this sooner.
>>> Cheers,
>>> Mircea
>>> On 11 Oct 2011, at 09:49, Sebastiano Peluso wrote:
>>>> Hi Mircea,
>>>>
>>>> have you had the opportunity to take a look at the Radargun's tpcc branch in https://github.com/sebastianopeluso/radargun/tree/tpcc ?
>>>>
>>>> Can I issue anyway a pull request in Github?
>>>>
>>>> Thank you.
>>>>
>>>> Cheers
>>>>
>>>> Sebastiano
>>>>
>>>> Il 29/08/11 11:49, Sebastiano Peluso ha scritto:
>>>>> Hi Mircea,
>>>>>
>>>>> I've finalized the implementation of TPC-C code (New Order, Payment and Order Status transactions) within Radargun.
>>>>> You can find the result as Radargun's tpcc branch at this link:
>>>>> https://github.com/sebastianopeluso/radargun/tree/tpcc
>>>>>
>>>>> Can you take a look at the code? I wait for your feedback before issuing a pull request in Github.
>>>>>
>>>>> Thank you.
>>>>>
>>>>> Cheers,
>>>>>
>>>>> Sebastiano
>>>>>
>>>>> Il 12/07/11 11:20, Sebastiano Peluso ha scritto:
>>>>>> Hi Mircea,
>>>>>>
>>>>>> I've just forked Radargun's master version and I will start the integration (following your observations/comments in the last mail) in the next week . I hope to finalize the work by the end of July.
>>>>>> When I will have finished I will issue a pull request.
>>>>>>
>>>>>> Thank you for your helpfulness.
>>>>>>
>>>>>> Sebastiano
>>>>>>
>>>>>>
>>>>>> Il 11/07/11 13:28, Mircea Markus ha scritto:
>>>>>>> Thanks Sebastiano. Once you are finished, can you please issue a pull request for Radargun and we can take it from there? Please let me know if there'a anything I can help you with, e.g. github integration etc.
>>>>>>>
>>>>>>> On 8 Jul 2011, at 15:31, Sebastiano Peluso wrote:
>>>>>>>
>>>>>>>> Hi Mircea,
>>>>>>>>
>>>>>>>> thank you for your reply. My answers to your questions/comments are inline.
>>>>>>>>
>>>>>>>> Il 08/07/11 11:33, Mircea Markus ha scritto:
>>>>>>>>> Hi Sebastiano,
>>>>>>>>>
>>>>>>>>> Very interesting stuff!
>>>>>>>>> I think this is a nice approach of benchmarking transactions with a controlled degree contention. This is a feature currently missing in Radargun, but very important especially considering the stuff you guys are doing and the locking improvements we have scheduled for 5.1 release.
>>>>>>>>> Do you consider contributing this back to Radargun?
>>>>>>>> YES.
>>>>>>>>>
>>>>>>>>> Here are some observations I have after looking at the code:
>>>>>>>>> - The code should not be in the PutGetStressor, as this is used for benchmarking a web-session-like access pattern which we don't want to replace. It might make more sense to be placed in a stage of its own, e.g. org.radargun.stages.TpccBenchmarkStage
>>>>>>>> Ok. Your observation is correct. In this way the code is more modular and we can have both the web session and the tpcc benchmarks.
>>>>>>>>> - "isPrimary" argument of TPCCTerminal.choiceTransaction is true if the node is a jgroups coordinator. This has some limitations:
>>>>>>>>> - other data grid providers than Infinispan might not have an "coordinator" concept, and this might be difficult to infer
>>>>>>>>> - ATM only the coordinator does writes (on multiple threads). IMO this is too restricting as it doesn't induce deadlock situations that might appear when data is written by multiple nodes. Wouldn't it make more sense to spread the writes over all the nodes? In order to overcome the dependency on jgroup's coordinator, you can use instead the AbstractDistStage.slaveIndex. This is a Radargun-level view of the benchmark cluster, independent of the benchmarked product
>>>>>>>> This is partially correct. The "isPrimary" condition is evaluated only if the Primary-Backup replication mechanism is enabled because the code has been written in order to test this replication mechanism too. In this case only the primary node can perform write transactions.
>>>>>>>> But if 2-Phase-Commit is enabled (lines 72-83 in TPCCTerminal), transactions (read and write) are spread over all nodes. This is always the case, because we don't have Primary-Backup in official Infinispan releases.
>>>>>>>>> - PutGetStressor compares Strings based on the == operator, which is incorrect. e.g. e.getClass().getName() == "org.infinispan.CacheException"
>>>>>>>> Sorry, this is a mistake :-) .
>>>>>>>>> - As an design suggestion, I think it would make sense to have an TpccTransaction interface with an executeTransaction(CacheWrapper cacheWrapper) methods, with specialized implementations: NewOrderTransaction, PayementTransaction, OrderStatusTransaction. Basically to move all the code TPCCTerminal.executeTransaction into these three classes. Such an approach would reduce coupling between the transactions and most importantly would offer a simple way of adding new tpcc transactions to the system, by implementing the TpccTransaction interface.
>>>>>>>> I agree. I can create one class for each tpcc transaction and assign each "case" block (referring to the current implementation of the executeTransaction method) to the corresponding class.
>>>>>>>>> - class javadoc are the onese generater by IDEA
>>>>>>>>> - adding .idea directory in github might cause troubles for people using IDEA and forking your repo; I think the dir should be removed
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Another observation is about the way the project is managed in github: it is not a fork of Infinispan, but it was downloaded and committed as a totally different project. This means that all the nice review and merge feature that github and git offer cannot be used, but the merge needs to be made "by hand", comparing the source trees etc. I think it would make more sense to fork[1] from radargun's master[2] and apply all these nice feature on a fork. What do you think?
>>>>>>>> Ok. I'll remove .idea directory.
>>>>>>>> In addition, I'll insert tpcc implementation in a forked version of radargun's master in order to benefit from merge features provided by git/github.
>>>>>>>>>
>>>>>>>>> Cheers,
>>>>>>>>> Mircea
>>>>>>>>
>>>>>>>> Thank you again.
>>>>>>>>
>>>>>>>> Cheers,
>>>>>>>>
>>>>>>>> Sebastiano
>>>>>>>>>
>>>>>>>>> [1] http://help.github.com/fork-a-repo/
>>>>>>>>> [2] https://github.com/radargun/radargun
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>>>>>>>>> Hi all,
>>>>>>>>>>
>>>>>>>>>> I have added a new subsection
>>>>>>>>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>>>>>>>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>>>>>>>>> share information about the RadargunTPCC benchmark.
>>>>>>>>>>
>>>>>>>>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>>>>>>>>> defined in the TPC Benchmark C specification [1] within Radargun
>>>>>>>>>> Benchamark [2], and it has been designed with the purpose of executing
>>>>>>>>>> the TPC-C benchmark against Infinispan.
>>>>>>>>>>
>>>>>>>>>> The source code is available at this link:
>>>>>>>>>> https://github.com/cloudtm/RadargunTPCC
>>>>>>>>>>
>>>>>>>>>> Regards,
>>>>>>>>>> Sebastiano Peluso
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>>>>>>>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>>>>>>>>
>>>>>>>>>> ------------------------------------------------------------------------------
>>>>>>>>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>>>>>>>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>>>>>>>>> secure and there when you need it. Data protection magic?
>>>>>>>>>> Nope - It's vRanger. Get your free trial download today.
>>>>>>>>>> http://p.sf.net/sfu/quest-sfdev2dev
>>>>>>>>>> _______________________________________________
>>>>>>>>>> Cloudtm-discussion mailing list
>>>>>>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> ------------------------------------------------------------------------------
>>>>>>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>>>>>>> Why? It contains a definitive record of application performance, security
>>>>>>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>>>>>>> sense of it. IT sense. And common sense.
>>>>>>>>>
>>>>>>>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> Cloudtm-discussion mailing list
>>>>>>>>>
>>>>>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>>>>>
>>>>>>>> ------------------------------------------------------------------------------
>>>>>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>>>>>> Why? It contains a definitive record of application performance, security
>>>>>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>>>>>> sense of it. IT sense. And common sense.
>>>>>>>> http://p.sf.net/sfu/splunk-d2d-c2________________________________________...
>>>>>>>> Cloudtm-discussion mailing list
>>>>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>>>>
>>>>>>>
>>>>>>> ------------------------------------------------------------------------------
>>>>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>>>>> Why? It contains a definitive record of application performance, security
>>>>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>>>>> sense of it. IT sense. And common sense.
>>>>>>>
>>>>>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Cloudtm-discussion mailing list
>>>>>>>
>>>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>>>
>>>>>>
>>>>>>
>>>>>> ------------------------------------------------------------------------------
>>>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>>>> Why? It contains a definitive record of application performance, security
>>>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>>>> sense of it. IT sense. And common sense.
>>>>>>
>>>>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Cloudtm-discussion mailing list
>>>>>>
>>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>>
>>>>
>>>
>>
> Begin forwarded message:
>
>> From: Mircea Markus <mircea.markus(a)jboss.com>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 13 October 2011 19:31:00 GMT+01:00
>> To: Sebastiano Peluso <peluso(a)gsd.inesc-id.pt>
>> Cc: Paolo Romano <romano(a)inesc-id.pt>, Manik Surtani <msurtani(a)redhat.com>
>>
>> Hi Sebastiano, right now I'm busy remaking locking/transaction support in 5.1. This should keep me busy for the next 3 weeks or so - after that the plan is to look at tpcc, integrate it and produce performance numbers to go with it.
>> Sorry for not taking this sooner.
>> Cheers,
>> Mircea
>> On 11 Oct 2011, at 09:49, Sebastiano Peluso wrote:
>>> Hi Mircea,
>>>
>>> have you had the opportunity to take a look at the Radargun's tpcc branch in https://github.com/sebastianopeluso/radargun/tree/tpcc ?
>>>
>>> Can I issue anyway a pull request in Github?
>>>
>>> Thank you.
>>>
>>> Cheers
>>>
>>> Sebastiano
>>>
>>> Il 29/08/11 11:49, Sebastiano Peluso ha scritto:
>>>> Hi Mircea,
>>>>
>>>> I've finalized the implementation of TPC-C code (New Order, Payment and Order Status transactions) within Radargun.
>>>> You can find the result as Radargun's tpcc branch at this link:
>>>> https://github.com/sebastianopeluso/radargun/tree/tpcc
>>>>
>>>> Can you take a look at the code? I wait for your feedback before issuing a pull request in Github.
>>>>
>>>> Thank you.
>>>>
>>>> Cheers,
>>>>
>>>> Sebastiano
>>>>
>>>> Il 12/07/11 11:20, Sebastiano Peluso ha scritto:
>>>>> Hi Mircea,
>>>>>
>>>>> I've just forked Radargun's master version and I will start the integration (following your observations/comments in the last mail) in the next week . I hope to finalize the work by the end of July.
>>>>> When I will have finished I will issue a pull request.
>>>>>
>>>>> Thank you for your helpfulness.
>>>>>
>>>>> Sebastiano
>>>>>
>>>>>
>>>>> Il 11/07/11 13:28, Mircea Markus ha scritto:
>>>>>> Thanks Sebastiano. Once you are finished, can you please issue a pull request for Radargun and we can take it from there? Please let me know if there'a anything I can help you with, e.g. github integration etc.
>>>>>>
>>>>>> On 8 Jul 2011, at 15:31, Sebastiano Peluso wrote:
>>>>>>
>>>>>>> Hi Mircea,
>>>>>>>
>>>>>>> thank you for your reply. My answers to your questions/comments are inline.
>>>>>>>
>>>>>>> Il 08/07/11 11:33, Mircea Markus ha scritto:
>>>>>>>> Hi Sebastiano,
>>>>>>>>
>>>>>>>> Very interesting stuff!
>>>>>>>> I think this is a nice approach of benchmarking transactions with a controlled degree contention. This is a feature currently missing in Radargun, but very important especially considering the stuff you guys are doing and the locking improvements we have scheduled for 5.1 release.
>>>>>>>> Do you consider contributing this back to Radargun?
>>>>>>> YES.
>>>>>>>>
>>>>>>>> Here are some observations I have after looking at the code:
>>>>>>>> - The code should not be in the PutGetStressor, as this is used for benchmarking a web-session-like access pattern which we don't want to replace. It might make more sense to be placed in a stage of its own, e.g. org.radargun.stages.TpccBenchmarkStage
>>>>>>> Ok. Your observation is correct. In this way the code is more modular and we can have both the web session and the tpcc benchmarks.
>>>>>>>> - "isPrimary" argument of TPCCTerminal.choiceTransaction is true if the node is a jgroups coordinator. This has some limitations:
>>>>>>>> - other data grid providers than Infinispan might not have an "coordinator" concept, and this might be difficult to infer
>>>>>>>> - ATM only the coordinator does writes (on multiple threads). IMO this is too restricting as it doesn't induce deadlock situations that might appear when data is written by multiple nodes. Wouldn't it make more sense to spread the writes over all the nodes? In order to overcome the dependency on jgroup's coordinator, you can use instead the AbstractDistStage.slaveIndex. This is a Radargun-level view of the benchmark cluster, independent of the benchmarked product
>>>>>>> This is partially correct. The "isPrimary" condition is evaluated only if the Primary-Backup replication mechanism is enabled because the code has been written in order to test this replication mechanism too. In this case only the primary node can perform write transactions.
>>>>>>> But if 2-Phase-Commit is enabled (lines 72-83 in TPCCTerminal), transactions (read and write) are spread over all nodes. This is always the case, because we don't have Primary-Backup in official Infinispan releases.
>>>>>>>> - PutGetStressor compares Strings based on the == operator, which is incorrect. e.g. e.getClass().getName() == "org.infinispan.CacheException"
>>>>>>> Sorry, this is a mistake :-) .
>>>>>>>> - As an design suggestion, I think it would make sense to have an TpccTransaction interface with an executeTransaction(CacheWrapper cacheWrapper) methods, with specialized implementations: NewOrderTransaction, PayementTransaction, OrderStatusTransaction. Basically to move all the code TPCCTerminal.executeTransaction into these three classes. Such an approach would reduce coupling between the transactions and most importantly would offer a simple way of adding new tpcc transactions to the system, by implementing the TpccTransaction interface.
>>>>>>> I agree. I can create one class for each tpcc transaction and assign each "case" block (referring to the current implementation of the executeTransaction method) to the corresponding class.
>>>>>>>> - class javadoc are the onese generater by IDEA
>>>>>>>> - adding .idea directory in github might cause troubles for people using IDEA and forking your repo; I think the dir should be removed
>>>>>>>>
>>>>>>>>
>>>>>>>> Another observation is about the way the project is managed in github: it is not a fork of Infinispan, but it was downloaded and committed as a totally different project. This means that all the nice review and merge feature that github and git offer cannot be used, but the merge needs to be made "by hand", comparing the source trees etc. I think it would make more sense to fork[1] from radargun's master[2] and apply all these nice feature on a fork. What do you think?
>>>>>>> Ok. I'll remove .idea directory.
>>>>>>> In addition, I'll insert tpcc implementation in a forked version of radargun's master in order to benefit from merge features provided by git/github.
>>>>>>>>
>>>>>>>> Cheers,
>>>>>>>> Mircea
>>>>>>>
>>>>>>> Thank you again.
>>>>>>>
>>>>>>> Cheers,
>>>>>>>
>>>>>>> Sebastiano
>>>>>>>>
>>>>>>>> [1] http://help.github.com/fork-a-repo/
>>>>>>>> [2] https://github.com/radargun/radargun
>>>>>>>>
>>>>>>>>
>>>>>>>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>>>>>>>> Hi all,
>>>>>>>>>
>>>>>>>>> I have added a new subsection
>>>>>>>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>>>>>>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>>>>>>>> share information about the RadargunTPCC benchmark.
>>>>>>>>>
>>>>>>>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>>>>>>>> defined in the TPC Benchmark C specification [1] within Radargun
>>>>>>>>> Benchamark [2], and it has been designed with the purpose of executing
>>>>>>>>> the TPC-C benchmark against Infinispan.
>>>>>>>>>
>>>>>>>>> The source code is available at this link:
>>>>>>>>> https://github.com/cloudtm/RadargunTPCC
>>>>>>>>>
>>>>>>>>> Regards,
>>>>>>>>> Sebastiano Peluso
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>>>>>>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>>>>>>>
>>>>>>>>> ------------------------------------------------------------------------------
>>>>>>>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>>>>>>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>>>>>>>> secure and there when you need it. Data protection magic?
>>>>>>>>> Nope - It's vRanger. Get your free trial download today.
>>>>>>>>> http://p.sf.net/sfu/quest-sfdev2dev
>>>>>>>>> _______________________________________________
>>>>>>>>> Cloudtm-discussion mailing list
>>>>>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>>>>>
>>>>>>>>
>>>>>>>> ------------------------------------------------------------------------------
>>>>>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>>>>>> Why? It contains a definitive record of application performance, security
>>>>>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>>>>>> sense of it. IT sense. And common sense.
>>>>>>>>
>>>>>>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> Cloudtm-discussion mailing list
>>>>>>>>
>>>>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>>>>
>>>>>>> ------------------------------------------------------------------------------
>>>>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>>>>> Why? It contains a definitive record of application performance, security
>>>>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>>>>> sense of it. IT sense. And common sense.
>>>>>>> http://p.sf.net/sfu/splunk-d2d-c2________________________________________...
>>>>>>> Cloudtm-discussion mailing list
>>>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>>>
>>>>>>
>>>>>> ------------------------------------------------------------------------------
>>>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>>>> Why? It contains a definitive record of application performance, security
>>>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>>>> sense of it. IT sense. And common sense.
>>>>>>
>>>>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>>>>
>>>>>> _______________________________________________
>>>>>> Cloudtm-discussion mailing list
>>>>>>
>>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>>
>>>>>
>>>>>
>>>>> ------------------------------------------------------------------------------
>>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>>> Why? It contains a definitive record of application performance, security
>>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>>> sense of it. IT sense. And common sense.
>>>>>
>>>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Cloudtm-discussion mailing list
>>>>>
>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>
>>>
>>
> Begin forwarded message:
>
>> From: Sebastiano Peluso <peluso(a)gsd.inesc-id.pt>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 11 October 2011 09:49:11 GMT+01:00
>> To: Mircea Markus <mircea.markus(a)jboss.com>
>> Cc: Paolo Romano <romano(a)inesc-id.pt>
>>
>> Hi Mircea,
>>
>> have you had the opportunity to take a look at the Radargun's tpcc branch in https://github.com/sebastianopeluso/radargun/tree/tpcc ?
>>
>> Can I issue anyway a pull request in Github?
>>
>> Thank you.
>>
>> Cheers
>>
>> Sebastiano
>>
>> Il 29/08/11 11:49, Sebastiano Peluso ha scritto:
>>> Hi Mircea,
>>>
>>> I've finalized the implementation of TPC-C code (New Order, Payment and Order Status transactions) within Radargun.
>>> You can find the result as Radargun's tpcc branch at this link:
>>> https://github.com/sebastianopeluso/radargun/tree/tpcc
>>>
>>> Can you take a look at the code? I wait for your feedback before issuing a pull request in Github.
>>>
>>> Thank you.
>>>
>>> Cheers,
>>>
>>> Sebastiano
>>>
>>> Il 12/07/11 11:20, Sebastiano Peluso ha scritto:
>>>> Hi Mircea,
>>>>
>>>> I've just forked Radargun's master version and I will start the integration (following your observations/comments in the last mail) in the next week . I hope to finalize the work by the end of July.
>>>> When I will have finished I will issue a pull request.
>>>>
>>>> Thank you for your helpfulness.
>>>>
>>>> Sebastiano
>>>>
>>>>
>>>> Il 11/07/11 13:28, Mircea Markus ha scritto:
>>>>> Thanks Sebastiano. Once you are finished, can you please issue a pull request for Radargun and we can take it from there? Please let me know if there'a anything I can help you with, e.g. github integration etc.
>>>>>
>>>>> On 8 Jul 2011, at 15:31, Sebastiano Peluso wrote:
>>>>>
>>>>>> Hi Mircea,
>>>>>>
>>>>>> thank you for your reply. My answers to your questions/comments are inline.
>>>>>>
>>>>>> Il 08/07/11 11:33, Mircea Markus ha scritto:
>>>>>>> Hi Sebastiano,
>>>>>>>
>>>>>>> Very interesting stuff!
>>>>>>> I think this is a nice approach of benchmarking transactions with a controlled degree contention. This is a feature currently missing in Radargun, but very important especially considering the stuff you guys are doing and the locking improvements we have scheduled for 5.1 release.
>>>>>>> Do you consider contributing this back to Radargun?
>>>>>> YES.
>>>>>>>
>>>>>>> Here are some observations I have after looking at the code:
>>>>>>> - The code should not be in the PutGetStressor, as this is used for benchmarking a web-session-like access pattern which we don't want to replace. It might make more sense to be placed in a stage of its own, e.g. org.radargun.stages.TpccBenchmarkStage
>>>>>> Ok. Your observation is correct. In this way the code is more modular and we can have both the web session and the tpcc benchmarks.
>>>>>>> - "isPrimary" argument of TPCCTerminal.choiceTransaction is true if the node is a jgroups coordinator. This has some limitations:
>>>>>>> - other data grid providers than Infinispan might not have an "coordinator" concept, and this might be difficult to infer
>>>>>>> - ATM only the coordinator does writes (on multiple threads). IMO this is too restricting as it doesn't induce deadlock situations that might appear when data is written by multiple nodes. Wouldn't it make more sense to spread the writes over all the nodes? In order to overcome the dependency on jgroup's coordinator, you can use instead the AbstractDistStage.slaveIndex. This is a Radargun-level view of the benchmark cluster, independent of the benchmarked product
>>>>>> This is partially correct. The "isPrimary" condition is evaluated only if the Primary-Backup replication mechanism is enabled because the code has been written in order to test this replication mechanism too. In this case only the primary node can perform write transactions.
>>>>>> But if 2-Phase-Commit is enabled (lines 72-83 in TPCCTerminal), transactions (read and write) are spread over all nodes. This is always the case, because we don't have Primary-Backup in official Infinispan releases.
>>>>>>> - PutGetStressor compares Strings based on the == operator, which is incorrect. e.g. e.getClass().getName() == "org.infinispan.CacheException"
>>>>>> Sorry, this is a mistake :-) .
>>>>>>> - As an design suggestion, I think it would make sense to have an TpccTransaction interface with an executeTransaction(CacheWrapper cacheWrapper) methods, with specialized implementations: NewOrderTransaction, PayementTransaction, OrderStatusTransaction. Basically to move all the code TPCCTerminal.executeTransaction into these three classes. Such an approach would reduce coupling between the transactions and most importantly would offer a simple way of adding new tpcc transactions to the system, by implementing the TpccTransaction interface.
>>>>>> I agree. I can create one class for each tpcc transaction and assign each "case" block (referring to the current implementation of the executeTransaction method) to the corresponding class.
>>>>>>> - class javadoc are the onese generater by IDEA
>>>>>>> - adding .idea directory in github might cause troubles for people using IDEA and forking your repo; I think the dir should be removed
>>>>>>>
>>>>>>>
>>>>>>> Another observation is about the way the project is managed in github: it is not a fork of Infinispan, but it was downloaded and committed as a totally different project. This means that all the nice review and merge feature that github and git offer cannot be used, but the merge needs to be made "by hand", comparing the source trees etc. I think it would make more sense to fork[1] from radargun's master[2] and apply all these nice feature on a fork. What do you think?
>>>>>> Ok. I'll remove .idea directory.
>>>>>> In addition, I'll insert tpcc implementation in a forked version of radargun's master in order to benefit from merge features provided by git/github.
>>>>>>>
>>>>>>> Cheers,
>>>>>>> Mircea
>>>>>>
>>>>>> Thank you again.
>>>>>>
>>>>>> Cheers,
>>>>>>
>>>>>> Sebastiano
>>>>>>>
>>>>>>> [1] http://help.github.com/fork-a-repo/
>>>>>>> [2] https://github.com/radargun/radargun
>>>>>>>
>>>>>>>
>>>>>>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>>>>>>> Hi all,
>>>>>>>>
>>>>>>>> I have added a new subsection
>>>>>>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>>>>>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>>>>>>> share information about the RadargunTPCC benchmark.
>>>>>>>>
>>>>>>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>>>>>>> defined in the TPC Benchmark C specification [1] within Radargun
>>>>>>>> Benchamark [2], and it has been designed with the purpose of executing
>>>>>>>> the TPC-C benchmark against Infinispan.
>>>>>>>>
>>>>>>>> The source code is available at this link:
>>>>>>>> https://github.com/cloudtm/RadargunTPCC
>>>>>>>>
>>>>>>>> Regards,
>>>>>>>> Sebastiano Peluso
>>>>>>>>
>>>>>>>>
>>>>>>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>>>>>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>>>>>>
>>>>>>>> ------------------------------------------------------------------------------
>>>>>>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>>>>>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>>>>>>> secure and there when you need it. Data protection magic?
>>>>>>>> Nope - It's vRanger. Get your free trial download today.
>>>>>>>> http://p.sf.net/sfu/quest-sfdev2dev
>>>>>>>> _______________________________________________
>>>>>>>> Cloudtm-discussion mailing list
>>>>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>>>>
>>>>>>>
>>>>>>> ------------------------------------------------------------------------------
>>>>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>>>>> Why? It contains a definitive record of application performance, security
>>>>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>>>>> sense of it. IT sense. And common sense.
>>>>>>>
>>>>>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Cloudtm-discussion mailing list
>>>>>>>
>>>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>>>
>>>>>> ------------------------------------------------------------------------------
>>>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>>>> Why? It contains a definitive record of application performance, security
>>>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>>>> sense of it. IT sense. And common sense.
>>>>>> http://p.sf.net/sfu/splunk-d2d-c2________________________________________...
>>>>>> Cloudtm-discussion mailing list
>>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>>
>>>>>
>>>>> ------------------------------------------------------------------------------
>>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>>> Why? It contains a definitive record of application performance, security
>>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>>> sense of it. IT sense. And common sense.
>>>>>
>>>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>>>
>>>>> _______________________________________________
>>>>> Cloudtm-discussion mailing list
>>>>>
>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>> Why? It contains a definitive record of application performance, security
>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>> sense of it. IT sense. And common sense.
>>>>
>>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>>
>>>>
>>>> _______________________________________________
>>>> Cloudtm-discussion mailing list
>>>>
>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>
>>
> Begin forwarded message:
>
>> From: Mircea Markus <mircea.markus(a)jboss.com>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 31 August 2011 17:36:59 GMT+01:00
>> To: Sebastiano Peluso <peluso(a)gsd.inesc-id.pt>
>> Cc: Paolo Romano <romano(a)inesc-id.pt>
>>
>> Thank you Sebastiano, I'll give it a look this/next week.
>>
>> On 29 Aug 2011, at 11:49, Sebastiano Peluso wrote:
>>
>>> Hi Mircea,
>>>
>>> I've finalized the implementation of TPC-C code (New Order, Payment and Order Status transactions) within Radargun.
>>> You can find the result as Radargun's tpcc branch at this link:
>>> https://github.com/sebastianopeluso/radargun/tree/tpcc
>>>
>>> Can you take a look at the code? I wait for your feedback before issuing a pull request in Github.
>>>
>>> Thank you.
>>>
>>> Cheers,
>>>
>>> Sebastiano
>>>
>>> Il 12/07/11 11:20, Sebastiano Peluso ha scritto:
>>>> Hi Mircea,
>>>>
>>>> I've just forked Radargun's master version and I will start the integration (following your observations/comments in the last mail) in the next week . I hope to finalize the work by the end of July.
>>>> When I will have finished I will issue a pull request.
>>>>
>>>> Thank you for your helpfulness.
>>>>
>>>> Sebastiano
>>>>
>>>>
>>>> Il 11/07/11 13:28, Mircea Markus ha scritto:
>>>>> Thanks Sebastiano. Once you are finished, can you please issue a pull request for Radargun and we can take it from there? Please let me know if there'a anything I can help you with, e.g. github integration etc.
>>>>>
>>>>> On 8 Jul 2011, at 15:31, Sebastiano Peluso wrote:
>>>>>
>>>>>> Hi Mircea,
>>>>>>
>>>>>> thank you for your reply. My answers to your questions/comments are inline.
>>>>>>
>>>>>> Il 08/07/11 11:33, Mircea Markus ha scritto:
>>>>>>> Hi Sebastiano,
>>>>>>>
>>>>>>> Very interesting stuff!
>>>>>>> I think this is a nice approach of benchmarking transactions with a controlled degree contention. This is a feature currently missing in Radargun, but very important especially considering the stuff you guys are doing and the locking improvements we have scheduled for 5.1 release.
>>>>>>> Do you consider contributing this back to Radargun?
>>>>>> YES.
>>>>>>>
>>>>>>> Here are some observations I have after looking at the code:
>>>>>>> - The code should not be in the PutGetStressor, as this is used for benchmarking a web-session-like access pattern which we don't want to replace. It might make more sense to be placed in a stage of its own, e.g. org.radargun.stages.TpccBenchmarkStage
>>>>>> Ok. Your observation is correct. In this way the code is more modular and we can have both the web session and the tpcc benchmarks.
>>>>>>> - "isPrimary" argument of TPCCTerminal.choiceTransaction is true if the node is a jgroups coordinator. This has some limitations:
>>>>>>> - other data grid providers than Infinispan might not have an "coordinator" concept, and this might be difficult to infer
>>>>>>> - ATM only the coordinator does writes (on multiple threads). IMO this is too restricting as it doesn't induce deadlock situations that might appear when data is written by multiple nodes. Wouldn't it make more sense to spread the writes over all the nodes? In order to overcome the dependency on jgroup's coordinator, you can use instead the AbstractDistStage.slaveIndex. This is a Radargun-level view of the benchmark cluster, independent of the benchmarked product
>>>>>> This is partially correct. The "isPrimary" condition is evaluated only if the Primary-Backup replication mechanism is enabled because the code has been written in order to test this replication mechanism too. In this case only the primary node can perform write transactions.
>>>>>> But if 2-Phase-Commit is enabled (lines 72-83 in TPCCTerminal), transactions (read and write) are spread over all nodes. This is always the case, because we don't have Primary-Backup in official Infinispan releases.
>>>>>>> - PutGetStressor compares Strings based on the == operator, which is incorrect. e.g. e.getClass().getName() == "org.infinispan.CacheException"
>>>>>> Sorry, this is a mistake :-) .
>>>>>>> - As an design suggestion, I think it would make sense to have an TpccTransaction interface with an executeTransaction(CacheWrapper cacheWrapper) methods, with specialized implementations: NewOrderTransaction, PayementTransaction, OrderStatusTransaction. Basically to move all the code TPCCTerminal.executeTransaction into these three classes. Such an approach would reduce coupling between the transactions and most importantly would offer a simple way of adding new tpcc transactions to the system, by implementing the TpccTransaction interface.
>>>>>> I agree. I can create one class for each tpcc transaction and assign each "case" block (referring to the current implementation of the executeTransaction method) to the corresponding class.
>>>>>>> - class javadoc are the onese generater by IDEA
>>>>>>> - adding .idea directory in github might cause troubles for people using IDEA and forking your repo; I think the dir should be removed
>>>>>>>
>>>>>>>
>>>>>>> Another observation is about the way the project is managed in github: it is not a fork of Infinispan, but it was downloaded and committed as a totally different project. This means that all the nice review and merge feature that github and git offer cannot be used, but the merge needs to be made "by hand", comparing the source trees etc. I think it would make more sense to fork[1] from radargun's master[2] and apply all these nice feature on a fork. What do you think?
>>>>>> Ok. I'll remove .idea directory.
>>>>>> In addition, I'll insert tpcc implementation in a forked version of radargun's master in order to benefit from merge features provided by git/github.
>>>>>>>
>>>>>>> Cheers,
>>>>>>> Mircea
>>>>>>
>>>>>> Thank you again.
>>>>>>
>>>>>> Cheers,
>>>>>>
>>>>>> Sebastiano
>>>>>>>
>>>>>>> [1] http://help.github.com/fork-a-repo/
>>>>>>> [2] https://github.com/radargun/radargun
>>>>>>>
>>>>>>>
>>>>>>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>>>>>>> Hi all,
>>>>>>>>
>>>>>>>> I have added a new subsection
>>>>>>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>>>>>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>>>>>>> share information about the RadargunTPCC benchmark.
>>>>>>>>
>>>>>>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>>>>>>> defined in the TPC Benchmark C specification [1] within Radargun
>>>>>>>> Benchamark [2], and it has been designed with the purpose of executing
>>>>>>>> the TPC-C benchmark against Infinispan.
>>>>>>>>
>>>>>>>> The source code is available at this link:
>>>>>>>> https://github.com/cloudtm/RadargunTPCC
>>>>>>>>
>>>>>>>> Regards,
>>>>>>>> Sebastiano Peluso
>>>>>>>>
>>>>>>>>
>>>>>>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>>>>>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>>>>>>
>>>>>>>> ------------------------------------------------------------------------------
>>>>>>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>>>>>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>>>>>>> secure and there when you need it. Data protection magic?
>>>>>>>> Nope - It's vRanger. Get your free trial download today.
>>>>>>>> http://p.sf.net/sfu/quest-sfdev2dev
>>>>>>>> _______________________________________________
>>>>>>>> Cloudtm-discussion mailing list
>>>>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>>>>
>>>>>>>
>>>>>>> ------------------------------------------------------------------------------
>>>>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>>>>> Why? It contains a definitive record of application performance, security
>>>>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>>>>> sense of it. IT sense. And common sense.
>>>>>>>
>>>>>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Cloudtm-discussion mailing list
>>>>>>>
>>>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>>>
>>>>>> ------------------------------------------------------------------------------
>>>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>>>> Why? It contains a definitive record of application performance, security
>>>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>>>> sense of it. IT sense. And common sense.
>>>>>> http://p.sf.net/sfu/splunk-d2d-c2________________________________________...
>>>>>> Cloudtm-discussion mailing list
>>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>>
>>>>>
>>>>> ------------------------------------------------------------------------------
>>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>>> Why? It contains a definitive record of application performance, security
>>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>>> sense of it. IT sense. And common sense.
>>>>>
>>>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>>>
>>>>> _______________________________________________
>>>>> Cloudtm-discussion mailing list
>>>>>
>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>> Why? It contains a definitive record of application performance, security
>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>> sense of it. IT sense. And common sense.
>>>>
>>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>>
>>>>
>>>> _______________________________________________
>>>> Cloudtm-discussion mailing list
>>>>
>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>
>>
> Begin forwarded message:
>
>> From: Sebastiano Peluso <peluso(a)gsd.inesc-id.pt>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 29 August 2011 11:49:17 GMT+01:00
>> To: Mircea Markus <mircea.markus(a)jboss.com>
>> Cc: Paolo Romano <romano(a)inesc-id.pt>
>>
>> Hi Mircea,
>>
>> I've finalized the implementation of TPC-C code (New Order, Payment and Order Status transactions) within Radargun.
>> You can find the result as Radargun's tpcc branch at this link:
>> https://github.com/sebastianopeluso/radargun/tree/tpcc
>>
>> Can you take a look at the code? I wait for your feedback before issuing a pull request in Github.
>>
>> Thank you.
>>
>> Cheers,
>>
>> Sebastiano
>>
>> Il 12/07/11 11:20, Sebastiano Peluso ha scritto:
>>> Hi Mircea,
>>>
>>> I've just forked Radargun's master version and I will start the integration (following your observations/comments in the last mail) in the next week . I hope to finalize the work by the end of July.
>>> When I will have finished I will issue a pull request.
>>>
>>> Thank you for your helpfulness.
>>>
>>> Sebastiano
>>>
>>>
>>> Il 11/07/11 13:28, Mircea Markus ha scritto:
>>>> Thanks Sebastiano. Once you are finished, can you please issue a pull request for Radargun and we can take it from there? Please let me know if there'a anything I can help you with, e.g. github integration etc.
>>>>
>>>> On 8 Jul 2011, at 15:31, Sebastiano Peluso wrote:
>>>>
>>>>> Hi Mircea,
>>>>>
>>>>> thank you for your reply. My answers to your questions/comments are inline.
>>>>>
>>>>> Il 08/07/11 11:33, Mircea Markus ha scritto:
>>>>>> Hi Sebastiano,
>>>>>>
>>>>>> Very interesting stuff!
>>>>>> I think this is a nice approach of benchmarking transactions with a controlled degree contention. This is a feature currently missing in Radargun, but very important especially considering the stuff you guys are doing and the locking improvements we have scheduled for 5.1 release.
>>>>>> Do you consider contributing this back to Radargun?
>>>>> YES.
>>>>>>
>>>>>> Here are some observations I have after looking at the code:
>>>>>> - The code should not be in the PutGetStressor, as this is used for benchmarking a web-session-like access pattern which we don't want to replace. It might make more sense to be placed in a stage of its own, e.g. org.radargun.stages.TpccBenchmarkStage
>>>>> Ok. Your observation is correct. In this way the code is more modular and we can have both the web session and the tpcc benchmarks.
>>>>>> - "isPrimary" argument of TPCCTerminal.choiceTransaction is true if the node is a jgroups coordinator. This has some limitations:
>>>>>> - other data grid providers than Infinispan might not have an "coordinator" concept, and this might be difficult to infer
>>>>>> - ATM only the coordinator does writes (on multiple threads). IMO this is too restricting as it doesn't induce deadlock situations that might appear when data is written by multiple nodes. Wouldn't it make more sense to spread the writes over all the nodes? In order to overcome the dependency on jgroup's coordinator, you can use instead the AbstractDistStage.slaveIndex. This is a Radargun-level view of the benchmark cluster, independent of the benchmarked product
>>>>> This is partially correct. The "isPrimary" condition is evaluated only if the Primary-Backup replication mechanism is enabled because the code has been written in order to test this replication mechanism too. In this case only the primary node can perform write transactions.
>>>>> But if 2-Phase-Commit is enabled (lines 72-83 in TPCCTerminal), transactions (read and write) are spread over all nodes. This is always the case, because we don't have Primary-Backup in official Infinispan releases.
>>>>>> - PutGetStressor compares Strings based on the == operator, which is incorrect. e.g. e.getClass().getName() == "org.infinispan.CacheException"
>>>>> Sorry, this is a mistake :-) .
>>>>>> - As an design suggestion, I think it would make sense to have an TpccTransaction interface with an executeTransaction(CacheWrapper cacheWrapper) methods, with specialized implementations: NewOrderTransaction, PayementTransaction, OrderStatusTransaction. Basically to move all the code TPCCTerminal.executeTransaction into these three classes. Such an approach would reduce coupling between the transactions and most importantly would offer a simple way of adding new tpcc transactions to the system, by implementing the TpccTransaction interface.
>>>>> I agree. I can create one class for each tpcc transaction and assign each "case" block (referring to the current implementation of the executeTransaction method) to the corresponding class.
>>>>>> - class javadoc are the onese generater by IDEA
>>>>>> - adding .idea directory in github might cause troubles for people using IDEA and forking your repo; I think the dir should be removed
>>>>>>
>>>>>>
>>>>>> Another observation is about the way the project is managed in github: it is not a fork of Infinispan, but it was downloaded and committed as a totally different project. This means that all the nice review and merge feature that github and git offer cannot be used, but the merge needs to be made "by hand", comparing the source trees etc. I think it would make more sense to fork[1] from radargun's master[2] and apply all these nice feature on a fork. What do you think?
>>>>> Ok. I'll remove .idea directory.
>>>>> In addition, I'll insert tpcc implementation in a forked version of radargun's master in order to benefit from merge features provided by git/github.
>>>>>>
>>>>>> Cheers,
>>>>>> Mircea
>>>>>
>>>>> Thank you again.
>>>>>
>>>>> Cheers,
>>>>>
>>>>> Sebastiano
>>>>>>
>>>>>> [1] http://help.github.com/fork-a-repo/
>>>>>> [2] https://github.com/radargun/radargun
>>>>>>
>>>>>>
>>>>>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>>>>>> Hi all,
>>>>>>>
>>>>>>> I have added a new subsection
>>>>>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>>>>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>>>>>> share information about the RadargunTPCC benchmark.
>>>>>>>
>>>>>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>>>>>> defined in the TPC Benchmark C specification [1] within Radargun
>>>>>>> Benchamark [2], and it has been designed with the purpose of executing
>>>>>>> the TPC-C benchmark against Infinispan.
>>>>>>>
>>>>>>> The source code is available at this link:
>>>>>>> https://github.com/cloudtm/RadargunTPCC
>>>>>>>
>>>>>>> Regards,
>>>>>>> Sebastiano Peluso
>>>>>>>
>>>>>>>
>>>>>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>>>>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>>>>>
>>>>>>> ------------------------------------------------------------------------------
>>>>>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>>>>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>>>>>> secure and there when you need it. Data protection magic?
>>>>>>> Nope - It's vRanger. Get your free trial download today.
>>>>>>> http://p.sf.net/sfu/quest-sfdev2dev
>>>>>>> _______________________________________________
>>>>>>> Cloudtm-discussion mailing list
>>>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>>>
>>>>>>
>>>>>> ------------------------------------------------------------------------------
>>>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>>>> Why? It contains a definitive record of application performance, security
>>>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>>>> sense of it. IT sense. And common sense.
>>>>>>
>>>>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>>>>
>>>>>> _______________________________________________
>>>>>> Cloudtm-discussion mailing list
>>>>>>
>>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>>
>>>>> ------------------------------------------------------------------------------
>>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>>> Why? It contains a definitive record of application performance, security
>>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>>> sense of it. IT sense. And common sense.
>>>>> http://p.sf.net/sfu/splunk-d2d-c2________________________________________...
>>>>> Cloudtm-discussion mailing list
>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>> Why? It contains a definitive record of application performance, security
>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>> sense of it. IT sense. And common sense.
>>>>
>>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>>
>>>> _______________________________________________
>>>> Cloudtm-discussion mailing list
>>>>
>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> All of the data generated in your IT infrastructure is seriously valuable.
>>> Why? It contains a definitive record of application performance, security
>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>> sense of it. IT sense. And common sense.
>>>
>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>
>>>
>>> _______________________________________________
>>> Cloudtm-discussion mailing list
>>>
>>> Cloudtm-discussion(a)lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>
> Begin forwarded message:
>
>> From: Sebastiano Peluso <peluso(a)gsd.inesc-id.pt>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 12 July 2011 10:20:33 GMT+01:00
>> To: cloudtm-discussion(a)lists.sourceforge.net
>> Reply-To: cloudtm-discussion(a)lists.sourceforge.net
>>
>> Hi Mircea,
>>
>> I've just forked Radargun's master version and I will start the integration (following your observations/comments in the last mail) in the next week . I hope to finalize the work by the end of July.
>> When I will have finished I will issue a pull request.
>>
>> Thank you for your helpfulness.
>>
>> Sebastiano
>>
>>
>> Il 11/07/11 13:28, Mircea Markus ha scritto:
>>> Thanks Sebastiano. Once you are finished, can you please issue a pull request for Radargun and we can take it from there? Please let me know if there'a anything I can help you with, e.g. github integration etc.
>>>
>>> On 8 Jul 2011, at 15:31, Sebastiano Peluso wrote:
>>>
>>>> Hi Mircea,
>>>>
>>>> thank you for your reply. My answers to your questions/comments are inline.
>>>>
>>>> Il 08/07/11 11:33, Mircea Markus ha scritto:
>>>>> Hi Sebastiano,
>>>>>
>>>>> Very interesting stuff!
>>>>> I think this is a nice approach of benchmarking transactions with a controlled degree contention. This is a feature currently missing in Radargun, but very important especially considering the stuff you guys are doing and the locking improvements we have scheduled for 5.1 release.
>>>>> Do you consider contributing this back to Radargun?
>>>> YES.
>>>>>
>>>>> Here are some observations I have after looking at the code:
>>>>> - The code should not be in the PutGetStressor, as this is used for benchmarking a web-session-like access pattern which we don't want to replace. It might make more sense to be placed in a stage of its own, e.g. org.radargun.stages.TpccBenchmarkStage
>>>> Ok. Your observation is correct. In this way the code is more modular and we can have both the web session and the tpcc benchmarks.
>>>>> - "isPrimary" argument of TPCCTerminal.choiceTransaction is true if the node is a jgroups coordinator. This has some limitations:
>>>>> - other data grid providers than Infinispan might not have an "coordinator" concept, and this might be difficult to infer
>>>>> - ATM only the coordinator does writes (on multiple threads). IMO this is too restricting as it doesn't induce deadlock situations that might appear when data is written by multiple nodes. Wouldn't it make more sense to spread the writes over all the nodes? In order to overcome the dependency on jgroup's coordinator, you can use instead the AbstractDistStage.slaveIndex. This is a Radargun-level view of the benchmark cluster, independent of the benchmarked product
>>>> This is partially correct. The "isPrimary" condition is evaluated only if the Primary-Backup replication mechanism is enabled because the code has been written in order to test this replication mechanism too. In this case only the primary node can perform write transactions.
>>>> But if 2-Phase-Commit is enabled (lines 72-83 in TPCCTerminal), transactions (read and write) are spread over all nodes. This is always the case, because we don't have Primary-Backup in official Infinispan releases.
>>>>> - PutGetStressor compares Strings based on the == operator, which is incorrect. e.g. e.getClass().getName() == "org.infinispan.CacheException"
>>>> Sorry, this is a mistake :-) .
>>>>> - As an design suggestion, I think it would make sense to have an TpccTransaction interface with an executeTransaction(CacheWrapper cacheWrapper) methods, with specialized implementations: NewOrderTransaction, PayementTransaction, OrderStatusTransaction. Basically to move all the code TPCCTerminal.executeTransaction into these three classes. Such an approach would reduce coupling between the transactions and most importantly would offer a simple way of adding new tpcc transactions to the system, by implementing the TpccTransaction interface.
>>>> I agree. I can create one class for each tpcc transaction and assign each "case" block (referring to the current implementation of the executeTransaction method) to the corresponding class.
>>>>> - class javadoc are the onese generater by IDEA
>>>>> - adding .idea directory in github might cause troubles for people using IDEA and forking your repo; I think the dir should be removed
>>>>>
>>>>>
>>>>> Another observation is about the way the project is managed in github: it is not a fork of Infinispan, but it was downloaded and committed as a totally different project. This means that all the nice review and merge feature that github and git offer cannot be used, but the merge needs to be made "by hand", comparing the source trees etc. I think it would make more sense to fork[1] from radargun's master[2] and apply all these nice feature on a fork. What do you think?
>>>> Ok. I'll remove .idea directory.
>>>> In addition, I'll insert tpcc implementation in a forked version of radargun's master in order to benefit from merge features provided by git/github.
>>>>>
>>>>> Cheers,
>>>>> Mircea
>>>>
>>>> Thank you again.
>>>>
>>>> Cheers,
>>>>
>>>> Sebastiano
>>>>>
>>>>> [1] http://help.github.com/fork-a-repo/
>>>>> [2] https://github.com/radargun/radargun
>>>>>
>>>>>
>>>>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>>>>> Hi all,
>>>>>>
>>>>>> I have added a new subsection
>>>>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>>>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>>>>> share information about the RadargunTPCC benchmark.
>>>>>>
>>>>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>>>>> defined in the TPC Benchmark C specification [1] within Radargun
>>>>>> Benchamark [2], and it has been designed with the purpose of executing
>>>>>> the TPC-C benchmark against Infinispan.
>>>>>>
>>>>>> The source code is available at this link:
>>>>>> https://github.com/cloudtm/RadargunTPCC
>>>>>>
>>>>>> Regards,
>>>>>> Sebastiano Peluso
>>>>>>
>>>>>>
>>>>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>>>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>>>>
>>>>>> ------------------------------------------------------------------------------
>>>>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>>>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>>>>> secure and there when you need it. Data protection magic?
>>>>>> Nope - It's vRanger. Get your free trial download today.
>>>>>> http://p.sf.net/sfu/quest-sfdev2dev
>>>>>> _______________________________________________
>>>>>> Cloudtm-discussion mailing list
>>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>>
>>>>>
>>>>> ------------------------------------------------------------------------------
>>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>>> Why? It contains a definitive record of application performance, security
>>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>>> sense of it. IT sense. And common sense.
>>>>>
>>>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>>>
>>>>> _______________________________________________
>>>>> Cloudtm-discussion mailing list
>>>>>
>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>
>>>> ------------------------------------------------------------------------------
>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>> Why? It contains a definitive record of application performance, security
>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>> sense of it. IT sense. And common sense.
>>>> http://p.sf.net/sfu/splunk-d2d-c2________________________________________...
>>>> Cloudtm-discussion mailing list
>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> All of the data generated in your IT infrastructure is seriously valuable.
>>> Why? It contains a definitive record of application performance, security
>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>> sense of it. IT sense. And common sense.
>>>
>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>
>>> _______________________________________________
>>> Cloudtm-discussion mailing list
>>>
>>> Cloudtm-discussion(a)lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>
>> ------------------------------------------------------------------------------
>> All of the data generated in your IT infrastructure is seriously valuable.
>> Why? It contains a definitive record of application performance, security
>> threats, fraudulent activity, and more. Splunk takes this data and makes
>> sense of it. IT sense. And common sense.
>> http://p.sf.net/sfu/splunk-d2d-c2________________________________________...
>> Cloudtm-discussion mailing list
>> Cloudtm-discussion(a)lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
> Begin forwarded message:
>
>> From: Mircea Markus <mircea.markus(a)jboss.com>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 11 July 2011 13:28:15 GMT+01:00
>> To: cloudtm-discussion(a)lists.sourceforge.net
>>
>> Thanks Sebastiano. Once you are finished, can you please issue a pull request for Radargun and we can take it from there? Please let me know if there'a anything I can help you with, e.g. github integration etc.
>>
>> On 8 Jul 2011, at 15:31, Sebastiano Peluso wrote:
>>
>>> Hi Mircea,
>>>
>>> thank you for your reply. My answers to your questions/comments are inline.
>>>
>>> Il 08/07/11 11:33, Mircea Markus ha scritto:
>>>> Hi Sebastiano,
>>>>
>>>> Very interesting stuff!
>>>> I think this is a nice approach of benchmarking transactions with a controlled degree contention. This is a feature currently missing in Radargun, but very important especially considering the stuff you guys are doing and the locking improvements we have scheduled for 5.1 release.
>>>> Do you consider contributing this back to Radargun?
>>> YES.
>>>>
>>>> Here are some observations I have after looking at the code:
>>>> - The code should not be in the PutGetStressor, as this is used for benchmarking a web-session-like access pattern which we don't want to replace. It might make more sense to be placed in a stage of its own, e.g. org.radargun.stages.TpccBenchmarkStage
>>> Ok. Your observation is correct. In this way the code is more modular and we can have both the web session and the tpcc benchmarks.
>>>> - "isPrimary" argument of TPCCTerminal.choiceTransaction is true if the node is a jgroups coordinator. This has some limitations:
>>>> - other data grid providers than Infinispan might not have an "coordinator" concept, and this might be difficult to infer
>>>> - ATM only the coordinator does writes (on multiple threads). IMO this is too restricting as it doesn't induce deadlock situations that might appear when data is written by multiple nodes. Wouldn't it make more sense to spread the writes over all the nodes? In order to overcome the dependency on jgroup's coordinator, you can use instead the AbstractDistStage.slaveIndex. This is a Radargun-level view of the benchmark cluster, independent of the benchmarked product
>>> This is partially correct. The "isPrimary" condition is evaluated only if the Primary-Backup replication mechanism is enabled because the code has been written in order to test this replication mechanism too. In this case only the primary node can perform write transactions.
>>> But if 2-Phase-Commit is enabled (lines 72-83 in TPCCTerminal), transactions (read and write) are spread over all nodes. This is always the case, because we don't have Primary-Backup in official Infinispan releases.
>>>> - PutGetStressor compares Strings based on the == operator, which is incorrect. e.g. e.getClass().getName() == "org.infinispan.CacheException"
>>> Sorry, this is a mistake :-) .
>>>> - As an design suggestion, I think it would make sense to have an TpccTransaction interface with an executeTransaction(CacheWrapper cacheWrapper) methods, with specialized implementations: NewOrderTransaction, PayementTransaction, OrderStatusTransaction. Basically to move all the code TPCCTerminal.executeTransaction into these three classes. Such an approach would reduce coupling between the transactions and most importantly would offer a simple way of adding new tpcc transactions to the system, by implementing the TpccTransaction interface.
>>> I agree. I can create one class for each tpcc transaction and assign each "case" block (referring to the current implementation of the executeTransaction method) to the corresponding class.
>>>> - class javadoc are the onese generater by IDEA
>>>> - adding .idea directory in github might cause troubles for people using IDEA and forking your repo; I think the dir should be removed
>>>>
>>>>
>>>> Another observation is about the way the project is managed in github: it is not a fork of Infinispan, but it was downloaded and committed as a totally different project. This means that all the nice review and merge feature that github and git offer cannot be used, but the merge needs to be made "by hand", comparing the source trees etc. I think it would make more sense to fork[1] from radargun's master[2] and apply all these nice feature on a fork. What do you think?
>>> Ok. I'll remove .idea directory.
>>> In addition, I'll insert tpcc implementation in a forked version of radargun's master in order to benefit from merge features provided by git/github.
>>>>
>>>> Cheers,
>>>> Mircea
>>>
>>> Thank you again.
>>>
>>> Cheers,
>>>
>>> Sebastiano
>>>>
>>>> [1] http://help.github.com/fork-a-repo/
>>>> [2] https://github.com/radargun/radargun
>>>>
>>>>
>>>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>>>> Hi all,
>>>>>
>>>>> I have added a new subsection
>>>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>>>> share information about the RadargunTPCC benchmark.
>>>>>
>>>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>>>> defined in the TPC Benchmark C specification [1] within Radargun
>>>>> Benchamark [2], and it has been designed with the purpose of executing
>>>>> the TPC-C benchmark against Infinispan.
>>>>>
>>>>> The source code is available at this link:
>>>>> https://github.com/cloudtm/RadargunTPCC
>>>>>
>>>>> Regards,
>>>>> Sebastiano Peluso
>>>>>
>>>>>
>>>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>>>
>>>>> ------------------------------------------------------------------------------
>>>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>>>> secure and there when you need it. Data protection magic?
>>>>> Nope - It's vRanger. Get your free trial download today.
>>>>> http://p.sf.net/sfu/quest-sfdev2dev
>>>>> _______________________________________________
>>>>> Cloudtm-discussion mailing list
>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>> Why? It contains a definitive record of application performance, security
>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>> sense of it. IT sense. And common sense.
>>>>
>>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>>
>>>> _______________________________________________
>>>> Cloudtm-discussion mailing list
>>>>
>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>
>>> ------------------------------------------------------------------------------
>>> All of the data generated in your IT infrastructure is seriously valuable.
>>> Why? It contains a definitive record of application performance, security
>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>> sense of it. IT sense. And common sense.
>>> http://p.sf.net/sfu/splunk-d2d-c2________________________________________...
>>> Cloudtm-discussion mailing list
>>> Cloudtm-discussion(a)lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>
> Begin forwarded message:
>
>> From: Mircea Markus <mircea.markus(a)jboss.com>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 11 July 2011 13:28:15 GMT+01:00
>> To: cloudtm-discussion(a)lists.sourceforge.net
>> Reply-To: cloudtm-discussion(a)lists.sourceforge.net
>>
>> Thanks Sebastiano. Once you are finished, can you please issue a pull request for Radargun and we can take it from there? Please let me know if there'a anything I can help you with, e.g. github integration etc.
>>
>> On 8 Jul 2011, at 15:31, Sebastiano Peluso wrote:
>>
>>> Hi Mircea,
>>>
>>> thank you for your reply. My answers to your questions/comments are inline.
>>>
>>> Il 08/07/11 11:33, Mircea Markus ha scritto:
>>>> Hi Sebastiano,
>>>>
>>>> Very interesting stuff!
>>>> I think this is a nice approach of benchmarking transactions with a controlled degree contention. This is a feature currently missing in Radargun, but very important especially considering the stuff you guys are doing and the locking improvements we have scheduled for 5.1 release.
>>>> Do you consider contributing this back to Radargun?
>>> YES.
>>>>
>>>> Here are some observations I have after looking at the code:
>>>> - The code should not be in the PutGetStressor, as this is used for benchmarking a web-session-like access pattern which we don't want to replace. It might make more sense to be placed in a stage of its own, e.g. org.radargun.stages.TpccBenchmarkStage
>>> Ok. Your observation is correct. In this way the code is more modular and we can have both the web session and the tpcc benchmarks.
>>>> - "isPrimary" argument of TPCCTerminal.choiceTransaction is true if the node is a jgroups coordinator. This has some limitations:
>>>> - other data grid providers than Infinispan might not have an "coordinator" concept, and this might be difficult to infer
>>>> - ATM only the coordinator does writes (on multiple threads). IMO this is too restricting as it doesn't induce deadlock situations that might appear when data is written by multiple nodes. Wouldn't it make more sense to spread the writes over all the nodes? In order to overcome the dependency on jgroup's coordinator, you can use instead the AbstractDistStage.slaveIndex. This is a Radargun-level view of the benchmark cluster, independent of the benchmarked product
>>> This is partially correct. The "isPrimary" condition is evaluated only if the Primary-Backup replication mechanism is enabled because the code has been written in order to test this replication mechanism too. In this case only the primary node can perform write transactions.
>>> But if 2-Phase-Commit is enabled (lines 72-83 in TPCCTerminal), transactions (read and write) are spread over all nodes. This is always the case, because we don't have Primary-Backup in official Infinispan releases.
>>>> - PutGetStressor compares Strings based on the == operator, which is incorrect. e.g. e.getClass().getName() == "org.infinispan.CacheException"
>>> Sorry, this is a mistake :-) .
>>>> - As an design suggestion, I think it would make sense to have an TpccTransaction interface with an executeTransaction(CacheWrapper cacheWrapper) methods, with specialized implementations: NewOrderTransaction, PayementTransaction, OrderStatusTransaction. Basically to move all the code TPCCTerminal.executeTransaction into these three classes. Such an approach would reduce coupling between the transactions and most importantly would offer a simple way of adding new tpcc transactions to the system, by implementing the TpccTransaction interface.
>>> I agree. I can create one class for each tpcc transaction and assign each "case" block (referring to the current implementation of the executeTransaction method) to the corresponding class.
>>>> - class javadoc are the onese generater by IDEA
>>>> - adding .idea directory in github might cause troubles for people using IDEA and forking your repo; I think the dir should be removed
>>>>
>>>>
>>>> Another observation is about the way the project is managed in github: it is not a fork of Infinispan, but it was downloaded and committed as a totally different project. This means that all the nice review and merge feature that github and git offer cannot be used, but the merge needs to be made "by hand", comparing the source trees etc. I think it would make more sense to fork[1] from radargun's master[2] and apply all these nice feature on a fork. What do you think?
>>> Ok. I'll remove .idea directory.
>>> In addition, I'll insert tpcc implementation in a forked version of radargun's master in order to benefit from merge features provided by git/github.
>>>>
>>>> Cheers,
>>>> Mircea
>>>
>>> Thank you again.
>>>
>>> Cheers,
>>>
>>> Sebastiano
>>>>
>>>> [1] http://help.github.com/fork-a-repo/
>>>> [2] https://github.com/radargun/radargun
>>>>
>>>>
>>>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>>>> Hi all,
>>>>>
>>>>> I have added a new subsection
>>>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>>>> share information about the RadargunTPCC benchmark.
>>>>>
>>>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>>>> defined in the TPC Benchmark C specification [1] within Radargun
>>>>> Benchamark [2], and it has been designed with the purpose of executing
>>>>> the TPC-C benchmark against Infinispan.
>>>>>
>>>>> The source code is available at this link:
>>>>> https://github.com/cloudtm/RadargunTPCC
>>>>>
>>>>> Regards,
>>>>> Sebastiano Peluso
>>>>>
>>>>>
>>>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>>>
>>>>> ------------------------------------------------------------------------------
>>>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>>>> secure and there when you need it. Data protection magic?
>>>>> Nope - It's vRanger. Get your free trial download today.
>>>>> http://p.sf.net/sfu/quest-sfdev2dev
>>>>> _______________________________________________
>>>>> Cloudtm-discussion mailing list
>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>> Why? It contains a definitive record of application performance, security
>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>> sense of it. IT sense. And common sense.
>>>>
>>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>>
>>>> _______________________________________________
>>>> Cloudtm-discussion mailing list
>>>>
>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>
>>> ------------------------------------------------------------------------------
>>> All of the data generated in your IT infrastructure is seriously valuable.
>>> Why? It contains a definitive record of application performance, security
>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>> sense of it. IT sense. And common sense.
>>> http://p.sf.net/sfu/splunk-d2d-c2________________________________________...
>>> Cloudtm-discussion mailing list
>>> Cloudtm-discussion(a)lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>
>> ------------------------------------------------------------------------------
>> All of the data generated in your IT infrastructure is seriously valuable.
>> Why? It contains a definitive record of application performance, security
>> threats, fraudulent activity, and more. Splunk takes this data and makes
>> sense of it. IT sense. And common sense.
>> http://p.sf.net/sfu/splunk-d2d-c2________________________________________...
>> Cloudtm-discussion mailing list
>> Cloudtm-discussion(a)lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
> Begin forwarded message:
>
>> From: Sebastiano Peluso <peluso(a)gsd.inesc-id.pt>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 8 July 2011 15:31:03 GMT+01:00
>> To: cloudtm-discussion(a)lists.sourceforge.net
>> Reply-To: cloudtm-discussion(a)lists.sourceforge.net
>>
>> Hi Mircea,
>>
>> thank you for your reply. My answers to your questions/comments are inline.
>>
>> Il 08/07/11 11:33, Mircea Markus ha scritto:
>>> Hi Sebastiano,
>>>
>>> Very interesting stuff!
>>> I think this is a nice approach of benchmarking transactions with a controlled degree contention. This is a feature currently missing in Radargun, but very important especially considering the stuff you guys are doing and the locking improvements we have scheduled for 5.1 release.
>>> Do you consider contributing this back to Radargun?
>> YES.
>>>
>>> Here are some observations I have after looking at the code:
>>> - The code should not be in the PutGetStressor, as this is used for benchmarking a web-session-like access pattern which we don't want to replace. It might make more sense to be placed in a stage of its own, e.g. org.radargun.stages.TpccBenchmarkStage
>> Ok. Your observation is correct. In this way the code is more modular and we can have both the web session and the tpcc benchmarks.
>>> - "isPrimary" argument of TPCCTerminal.choiceTransaction is true if the node is a jgroups coordinator. This has some limitations:
>>> - other data grid providers than Infinispan might not have an "coordinator" concept, and this might be difficult to infer
>>> - ATM only the coordinator does writes (on multiple threads). IMO this is too restricting as it doesn't induce deadlock situations that might appear when data is written by multiple nodes. Wouldn't it make more sense to spread the writes over all the nodes? In order to overcome the dependency on jgroup's coordinator, you can use instead the AbstractDistStage.slaveIndex. This is a Radargun-level view of the benchmark cluster, independent of the benchmarked product
>> This is partially correct. The "isPrimary" condition is evaluated only if the Primary-Backup replication mechanism is enabled because the code has been written in order to test this replication mechanism too. In this case only the primary node can perform write transactions.
>> But if 2-Phase-Commit is enabled (lines 72-83 in TPCCTerminal), transactions (read and write) are spread over all nodes. This is always the case, because we don't have Primary-Backup in official Infinispan releases.
>>> - PutGetStressor compares Strings based on the == operator, which is incorrect. e.g. e.getClass().getName() == "org.infinispan.CacheException"
>> Sorry, this is a mistake :-) .
>>> - As an design suggestion, I think it would make sense to have an TpccTransaction interface with an executeTransaction(CacheWrapper cacheWrapper) methods, with specialized implementations: NewOrderTransaction, PayementTransaction, OrderStatusTransaction. Basically to move all the code TPCCTerminal.executeTransaction into these three classes. Such an approach would reduce coupling between the transactions and most importantly would offer a simple way of adding new tpcc transactions to the system, by implementing the TpccTransaction interface.
>> I agree. I can create one class for each tpcc transaction and assign each "case" block (referring to the current implementation of the executeTransaction method) to the corresponding class.
>>> - class javadoc are the onese generater by IDEA
>>> - adding .idea directory in github might cause troubles for people using IDEA and forking your repo; I think the dir should be removed
>>>
>>>
>>> Another observation is about the way the project is managed in github: it is not a fork of Infinispan, but it was downloaded and committed as a totally different project. This means that all the nice review and merge feature that github and git offer cannot be used, but the merge needs to be made "by hand", comparing the source trees etc. I think it would make more sense to fork[1] from radargun's master[2] and apply all these nice feature on a fork. What do you think?
>> Ok. I'll remove .idea directory.
>> In addition, I'll insert tpcc implementation in a forked version of radargun's master in order to benefit from merge features provided by git/github.
>>>
>>> Cheers,
>>> Mircea
>>
>> Thank you again.
>>
>> Cheers,
>>
>> Sebastiano
>>>
>>> [1] http://help.github.com/fork-a-repo/
>>> [2] https://github.com/radargun/radargun
>>>
>>>
>>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>>> Hi all,
>>>>
>>>> I have added a new subsection
>>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>>> share information about the RadargunTPCC benchmark.
>>>>
>>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>>> defined in the TPC Benchmark C specification [1] within Radargun
>>>> Benchamark [2], and it has been designed with the purpose of executing
>>>> the TPC-C benchmark against Infinispan.
>>>>
>>>> The source code is available at this link:
>>>> https://github.com/cloudtm/RadargunTPCC
>>>>
>>>> Regards,
>>>> Sebastiano Peluso
>>>>
>>>>
>>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>>> secure and there when you need it. Data protection magic?
>>>> Nope - It's vRanger. Get your free trial download today.
>>>> http://p.sf.net/sfu/quest-sfdev2dev
>>>> _______________________________________________
>>>> Cloudtm-discussion mailing list
>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> All of the data generated in your IT infrastructure is seriously valuable.
>>> Why? It contains a definitive record of application performance, security
>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>> sense of it. IT sense. And common sense.
>>>
>>> http://p.sf.net/sfu/splunk-d2d-c2
>>>
>>> _______________________________________________
>>> Cloudtm-discussion mailing list
>>>
>>> Cloudtm-discussion(a)lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>
>> ------------------------------------------------------------------------------
>> All of the data generated in your IT infrastructure is seriously valuable.
>> Why? It contains a definitive record of application performance, security
>> threats, fraudulent activity, and more. Splunk takes this data and makes
>> sense of it. IT sense. And common sense.
>> http://p.sf.net/sfu/splunk-d2d-c2________________________________________...
>> Cloudtm-discussion mailing list
>> Cloudtm-discussion(a)lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
> Begin forwarded message:
>
>> From: Manik Surtani <msurtani(a)redhat.com>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 8 July 2011 12:04:56 GMT+01:00
>> To: Mircea Markus <mircea.markus(a)jboss.com>
>> Cc: Dan Berindei <dberinde(a)redhat.com>
>>
>>
>> On 8 Jul 2011, at 11:41, Mircea Markus wrote:
>>
>>> I did, search this email for "Here are some observations I have after looking".
>>
>> Ok, didn't read the forwarded email. :)
>>
>> --
>> Manik Surtani
>> manik(a)jboss.org
>> twitter.com/maniksurtani
>>
>> Lead, Infinispan
>> http://www.infinispan.org
>>
>>
>>
> Begin forwarded message:
>
>> From: Mircea Markus <mircea.markus(a)jboss.com>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 8 July 2011 11:41:42 GMT+01:00
>> To: Manik Surtani <msurtani(a)redhat.com>
>> Cc: Dan Berindei <dberinde(a)redhat.com>
>>
>> I did, search this email for "Here are some observations I have after looking".
>>
>> On 8 Jul 2011, at 11:39, Manik Surtani wrote:
>>
>>> Could you give them some pointers on how to make this easier to integrate?
>>>
>>> Sent from my mobile phone
>>>
>>> On 8 Jul 2011, at 11:36, Mircea Markus <mircea.markus(a)jboss.com> wrote:
>>>
>>>> FYI, I reviewed the code and is far from being integrable in its current shape. The idea is really nice though, hope they'll update and we can at least take some of it.
>>>>
>>>> Begin forwarded message:
>>>>
>>>>> From: Mircea Markus <mircea.markus(a)jboss.com>
>>>>> Date: 8 July 2011 11:33:41 GMT+01:00
>>>>> To: cloudtm-discussion(a)lists.sourceforge.net
>>>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>>>> Reply-To: cloudtm-discussion(a)lists.sourceforge.net
>>>>>
>>>>> Hi Sebastiano,
>>>>>
>>>>> Very interesting stuff!
>>>>> I think this is a nice approach of benchmarking transactions with a controlled degree contention. This is a feature currently missing in Radargun, but very important especially considering the stuff you guys are doing and the locking improvements we have scheduled for 5.1 release.
>>>>> Do you consider contributing this back to Radargun?
>>>>>
>>>>> Here are some observations I have after looking at the code:
>>>>> - The code should not be in the PutGetStressor, as this is used for benchmarking a web-session-like access pattern which we don't want to replace. It might make more sense to be placed in a stage of its own, e.g. org.radargun.stages.TpccBenchmarkStage
>>>>> - "isPrimary" argument of TPCCTerminal.choiceTransaction is true if the node is a jgroups coordinator. This has some limitations:
>>>>> - other data grid providers than Infinispan might not have an "coordinator" concept, and this might be difficult to infer
>>>>> - ATM only the coordinator does writes (on multiple threads). IMO this is too restricting as it doesn't induce deadlock situations that might appear when data is written by multiple nodes. Wouldn't it make more sense to spread the writes over all the nodes?
>>>>> In order to overcome the dependency on jgroup's coordinator, you can use instead the AbstractDistStage.slaveIndex. This is a Radargun-level view of the benchmark cluster, independent of the benchmarked product
>>>>> - PutGetStressor compares Strings based on the == operator, which is incorrect. e.g. e.getClass().getName() == "org.infinispan.CacheException"
>>>>> - As an design suggestion, I think it would make sense to have an TpccTransaction interface with an executeTransaction(CacheWrapper cacheWrapper) methods, with specialized implementations: NewOrderTransaction, PayementTransaction, OrderStatusTransaction. Basically to move all the code TPCCTerminal.executeTransaction into these three classes. Such an approach would reduce coupling between the transactions and most importantly would offer a simple way of adding new tpcc transactions to the system, by implementing the TpccTransaction interface.
>>>>> - class javadoc are the onese generater by IDEA
>>>>> - adding .idea directory in github might cause troubles for people using IDEA and forking your repo; I think the dir should be removed
>>>>>
>>>>>
>>>>> Another observation is about the way the project is managed in github: it is not a fork of Infinispan, but it was downloaded and committed as a totally different project. This means that all the nice review and merge feature that github and git offer cannot be used, but the merge needs to be made "by hand", comparing the source trees etc. I think it would make more sense to fork[1] from radargun's master[2] and apply all these nice feature on a fork. What do you think?
>>>>>
>>>>> Cheers,
>>>>> Mircea
>>>>>
>>>>> [1] http://help.github.com/fork-a-repo/
>>>>> [2] https://github.com/radargun/radargun
>>>>>
>>>>>
>>>>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>>>>> Hi all,
>>>>>>
>>>>>> I have added a new subsection
>>>>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>>>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>>>>> share information about the RadargunTPCC benchmark.
>>>>>>
>>>>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>>>>> defined in the TPC Benchmark C specification [1] within Radargun
>>>>>> Benchamark [2], and it has been designed with the purpose of executing
>>>>>> the TPC-C benchmark against Infinispan.
>>>>>>
>>>>>> The source code is available at this link:
>>>>>> https://github.com/cloudtm/RadargunTPCC
>>>>>>
>>>>>> Regards,
>>>>>> Sebastiano Peluso
>>>>>>
>>>>>>
>>>>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>>>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>>>>
>>>>>> ------------------------------------------------------------------------------
>>>>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>>>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>>>>> secure and there when you need it. Data protection magic?
>>>>>> Nope - It's vRanger. Get your free trial download today.
>>>>>> http://p.sf.net/sfu/quest-sfdev2dev
>>>>>> _______________________________________________
>>>>>> Cloudtm-discussion mailing list
>>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>>
>>>>> ------------------------------------------------------------------------------
>>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>>> Why? It contains a definitive record of application performance, security
>>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>>> sense of it. IT sense. And common sense.
>>>>> http://p.sf.net/sfu/splunk-d2d-c2________________________________________...
>>>>> Cloudtm-discussion mailing list
>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>
>>
> Begin forwarded message:
>
>> From: Manik Surtani <msurtani(a)redhat.com>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 8 July 2011 11:39:37 GMT+01:00
>> To: Mircea Markus <mircea.markus(a)jboss.com>
>> Cc: Dan Berindei <dberinde(a)redhat.com>, Manik Surtani <manik(a)jboss.org>
>>
>> Could you give them some pointers on how to make this easier to integrate?
>>
>> Sent from my mobile phone
>>
>> On 8 Jul 2011, at 11:36, Mircea Markus <mircea.markus(a)jboss.com> wrote:
>>
>>> FYI, I reviewed the code and is far from being integrable in its current shape. The idea is really nice though, hope they'll update and we can at least take some of it.
>>>
>>> Begin forwarded message:
>>>
>>>> From: Mircea Markus <mircea.markus(a)jboss.com>
>>>> Date: 8 July 2011 11:33:41 GMT+01:00
>>>> To: cloudtm-discussion(a)lists.sourceforge.net
>>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>>> Reply-To: cloudtm-discussion(a)lists.sourceforge.net
>>>>
>>>> Hi Sebastiano,
>>>>
>>>> Very interesting stuff!
>>>> I think this is a nice approach of benchmarking transactions with a controlled degree contention. This is a feature currently missing in Radargun, but very important especially considering the stuff you guys are doing and the locking improvements we have scheduled for 5.1 release.
>>>> Do you consider contributing this back to Radargun?
>>>>
>>>> Here are some observations I have after looking at the code:
>>>> - The code should not be in the PutGetStressor, as this is used for benchmarking a web-session-like access pattern which we don't want to replace. It might make more sense to be placed in a stage of its own, e.g. org.radargun.stages.TpccBenchmarkStage
>>>> - "isPrimary" argument of TPCCTerminal.choiceTransaction is true if the node is a jgroups coordinator. This has some limitations:
>>>> - other data grid providers than Infinispan might not have an "coordinator" concept, and this might be difficult to infer
>>>> - ATM only the coordinator does writes (on multiple threads). IMO this is too restricting as it doesn't induce deadlock situations that might appear when data is written by multiple nodes. Wouldn't it make more sense to spread the writes over all the nodes?
>>>> In order to overcome the dependency on jgroup's coordinator, you can use instead the AbstractDistStage.slaveIndex. This is a Radargun-level view of the benchmark cluster, independent of the benchmarked product
>>>> - PutGetStressor compares Strings based on the == operator, which is incorrect. e.g. e.getClass().getName() == "org.infinispan.CacheException"
>>>> - As an design suggestion, I think it would make sense to have an TpccTransaction interface with an executeTransaction(CacheWrapper cacheWrapper) methods, with specialized implementations: NewOrderTransaction, PayementTransaction, OrderStatusTransaction. Basically to move all the code TPCCTerminal.executeTransaction into these three classes. Such an approach would reduce coupling between the transactions and most importantly would offer a simple way of adding new tpcc transactions to the system, by implementing the TpccTransaction interface.
>>>> - class javadoc are the onese generater by IDEA
>>>> - adding .idea directory in github might cause troubles for people using IDEA and forking your repo; I think the dir should be removed
>>>>
>>>>
>>>> Another observation is about the way the project is managed in github: it is not a fork of Infinispan, but it was downloaded and committed as a totally different project. This means that all the nice review and merge feature that github and git offer cannot be used, but the merge needs to be made "by hand", comparing the source trees etc. I think it would make more sense to fork[1] from radargun's master[2] and apply all these nice feature on a fork. What do you think?
>>>>
>>>> Cheers,
>>>> Mircea
>>>>
>>>> [1] http://help.github.com/fork-a-repo/
>>>> [2] https://github.com/radargun/radargun
>>>>
>>>>
>>>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>>>> Hi all,
>>>>>
>>>>> I have added a new subsection
>>>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>>>> share information about the RadargunTPCC benchmark.
>>>>>
>>>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>>>> defined in the TPC Benchmark C specification [1] within Radargun
>>>>> Benchamark [2], and it has been designed with the purpose of executing
>>>>> the TPC-C benchmark against Infinispan.
>>>>>
>>>>> The source code is available at this link:
>>>>> https://github.com/cloudtm/RadargunTPCC
>>>>>
>>>>> Regards,
>>>>> Sebastiano Peluso
>>>>>
>>>>>
>>>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>>>
>>>>> ------------------------------------------------------------------------------
>>>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>>>> secure and there when you need it. Data protection magic?
>>>>> Nope - It's vRanger. Get your free trial download today.
>>>>> http://p.sf.net/sfu/quest-sfdev2dev
>>>>> _______________________________________________
>>>>> Cloudtm-discussion mailing list
>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>
>>>> ------------------------------------------------------------------------------
>>>> All of the data generated in your IT infrastructure is seriously valuable.
>>>> Why? It contains a definitive record of application performance, security
>>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>>> sense of it. IT sense. And common sense.
>>>> http://p.sf.net/sfu/splunk-d2d-c2________________________________________...
>>>> Cloudtm-discussion mailing list
>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>
> Begin forwarded message:
>
>> From: Mircea Markus <mircea.markus(a)jboss.com>
>> Subject: Fwd: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 8 July 2011 11:36:29 GMT+01:00
>> To: Dan Berindei <dberinde(a)redhat.com>, Manik Surtani <manik(a)jboss.org>
>>
>> FYI, I reviewed the code and is far from being integrable in its current shape. The idea is really nice though, hope they'll update and we can at least take some of it.
>>
>> Begin forwarded message:
>>
>>> From: Mircea Markus <mircea.markus(a)jboss.com>
>>> Date: 8 July 2011 11:33:41 GMT+01:00
>>> To: cloudtm-discussion(a)lists.sourceforge.net
>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Reply-To: cloudtm-discussion(a)lists.sourceforge.net
>>>
>>> Hi Sebastiano,
>>>
>>> Very interesting stuff!
>>> I think this is a nice approach of benchmarking transactions with a controlled degree contention. This is a feature currently missing in Radargun, but very important especially considering the stuff you guys are doing and the locking improvements we have scheduled for 5.1 release.
>>> Do you consider contributing this back to Radargun?
>>>
>>> Here are some observations I have after looking at the code:
>>> - The code should not be in the PutGetStressor, as this is used for benchmarking a web-session-like access pattern which we don't want to replace. It might make more sense to be placed in a stage of its own, e.g. org.radargun.stages.TpccBenchmarkStage
>>> - "isPrimary" argument of TPCCTerminal.choiceTransaction is true if the node is a jgroups coordinator. This has some limitations:
>>> - other data grid providers than Infinispan might not have an "coordinator" concept, and this might be difficult to infer
>>> - ATM only the coordinator does writes (on multiple threads). IMO this is too restricting as it doesn't induce deadlock situations that might appear when data is written by multiple nodes. Wouldn't it make more sense to spread the writes over all the nodes?
>>> In order to overcome the dependency on jgroup's coordinator, you can use instead the AbstractDistStage.slaveIndex. This is a Radargun-level view of the benchmark cluster, independent of the benchmarked product
>>> - PutGetStressor compares Strings based on the == operator, which is incorrect. e.g. e.getClass().getName() == "org.infinispan.CacheException"
>>> - As an design suggestion, I think it would make sense to have an TpccTransaction interface with an executeTransaction(CacheWrapper cacheWrapper) methods, with specialized implementations: NewOrderTransaction, PayementTransaction, OrderStatusTransaction. Basically to move all the code TPCCTerminal.executeTransaction into these three classes. Such an approach would reduce coupling between the transactions and most importantly would offer a simple way of adding new tpcc transactions to the system, by implementing the TpccTransaction interface.
>>> - class javadoc are the onese generater by IDEA
>>> - adding .idea directory in github might cause troubles for people using IDEA and forking your repo; I think the dir should be removed
>>>
>>>
>>> Another observation is about the way the project is managed in github: it is not a fork of Infinispan, but it was downloaded and committed as a totally different project. This means that all the nice review and merge feature that github and git offer cannot be used, but the merge needs to be made "by hand", comparing the source trees etc. I think it would make more sense to fork[1] from radargun's master[2] and apply all these nice feature on a fork. What do you think?
>>>
>>> Cheers,
>>> Mircea
>>>
>>> [1] http://help.github.com/fork-a-repo/
>>> [2] https://github.com/radargun/radargun
>>>
>>>
>>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>>> Hi all,
>>>>
>>>> I have added a new subsection
>>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>>> share information about the RadargunTPCC benchmark.
>>>>
>>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>>> defined in the TPC Benchmark C specification [1] within Radargun
>>>> Benchamark [2], and it has been designed with the purpose of executing
>>>> the TPC-C benchmark against Infinispan.
>>>>
>>>> The source code is available at this link:
>>>> https://github.com/cloudtm/RadargunTPCC
>>>>
>>>> Regards,
>>>> Sebastiano Peluso
>>>>
>>>>
>>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>>> secure and there when you need it. Data protection magic?
>>>> Nope - It's vRanger. Get your free trial download today.
>>>> http://p.sf.net/sfu/quest-sfdev2dev
>>>> _______________________________________________
>>>> Cloudtm-discussion mailing list
>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>
>>> ------------------------------------------------------------------------------
>>> All of the data generated in your IT infrastructure is seriously valuable.
>>> Why? It contains a definitive record of application performance, security
>>> threats, fraudulent activity, and more. Splunk takes this data and makes
>>> sense of it. IT sense. And common sense.
>>> http://p.sf.net/sfu/splunk-d2d-c2________________________________________...
>>> Cloudtm-discussion mailing list
>>> Cloudtm-discussion(a)lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>
> Begin forwarded message:
>
>> From: Mircea Markus <mircea.markus(a)jboss.com>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 8 July 2011 11:33:41 GMT+01:00
>> To: cloudtm-discussion(a)lists.sourceforge.net
>>
>> Hi Sebastiano,
>>
>> Very interesting stuff!
>> I think this is a nice approach of benchmarking transactions with a controlled degree contention. This is a feature currently missing in Radargun, but very important especially considering the stuff you guys are doing and the locking improvements we have scheduled for 5.1 release.
>> Do you consider contributing this back to Radargun?
>>
>> Here are some observations I have after looking at the code:
>> - The code should not be in the PutGetStressor, as this is used for benchmarking a web-session-like access pattern which we don't want to replace. It might make more sense to be placed in a stage of its own, e.g. org.radargun.stages.TpccBenchmarkStage
>> - "isPrimary" argument of TPCCTerminal.choiceTransaction is true if the node is a jgroups coordinator. This has some limitations:
>> - other data grid providers than Infinispan might not have an "coordinator" concept, and this might be difficult to infer
>> - ATM only the coordinator does writes (on multiple threads). IMO this is too restricting as it doesn't induce deadlock situations that might appear when data is written by multiple nodes. Wouldn't it make more sense to spread the writes over all the nodes?
>> In order to overcome the dependency on jgroup's coordinator, you can use instead the AbstractDistStage.slaveIndex. This is a Radargun-level view of the benchmark cluster, independent of the benchmarked product
>> - PutGetStressor compares Strings based on the == operator, which is incorrect. e.g. e.getClass().getName() == "org.infinispan.CacheException"
>> - As an design suggestion, I think it would make sense to have an TpccTransaction interface with an executeTransaction(CacheWrapper cacheWrapper) methods, with specialized implementations: NewOrderTransaction, PayementTransaction, OrderStatusTransaction. Basically to move all the code TPCCTerminal.executeTransaction into these three classes. Such an approach would reduce coupling between the transactions and most importantly would offer a simple way of adding new tpcc transactions to the system, by implementing the TpccTransaction interface.
>> - class javadoc are the onese generater by IDEA
>> - adding .idea directory in github might cause troubles for people using IDEA and forking your repo; I think the dir should be removed
>>
>>
>> Another observation is about the way the project is managed in github: it is not a fork of Infinispan, but it was downloaded and committed as a totally different project. This means that all the nice review and merge feature that github and git offer cannot be used, but the merge needs to be made "by hand", comparing the source trees etc. I think it would make more sense to fork[1] from radargun's master[2] and apply all these nice feature on a fork. What do you think?
>>
>> Cheers,
>> Mircea
>>
>> [1] http://help.github.com/fork-a-repo/
>> [2] https://github.com/radargun/radargun
>>
>>
>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>> Hi all,
>>>
>>> I have added a new subsection
>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>> share information about the RadargunTPCC benchmark.
>>>
>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>> defined in the TPC Benchmark C specification [1] within Radargun
>>> Benchamark [2], and it has been designed with the purpose of executing
>>> the TPC-C benchmark against Infinispan.
>>>
>>> The source code is available at this link:
>>> https://github.com/cloudtm/RadargunTPCC
>>>
>>> Regards,
>>> Sebastiano Peluso
>>>
>>>
>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>
>>> ------------------------------------------------------------------------------
>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>> secure and there when you need it. Data protection magic?
>>> Nope - It's vRanger. Get your free trial download today.
>>> http://p.sf.net/sfu/quest-sfdev2dev
>>> _______________________________________________
>>> Cloudtm-discussion mailing list
>>> Cloudtm-discussion(a)lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>
> Begin forwarded message:
>
>> From: Mircea Markus <mircea.markus(a)jboss.com>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 8 July 2011 11:33:41 GMT+01:00
>> To: cloudtm-discussion(a)lists.sourceforge.net
>> Reply-To: cloudtm-discussion(a)lists.sourceforge.net
>>
>> Hi Sebastiano,
>>
>> Very interesting stuff!
>> I think this is a nice approach of benchmarking transactions with a controlled degree contention. This is a feature currently missing in Radargun, but very important especially considering the stuff you guys are doing and the locking improvements we have scheduled for 5.1 release.
>> Do you consider contributing this back to Radargun?
>>
>> Here are some observations I have after looking at the code:
>> - The code should not be in the PutGetStressor, as this is used for benchmarking a web-session-like access pattern which we don't want to replace. It might make more sense to be placed in a stage of its own, e.g. org.radargun.stages.TpccBenchmarkStage
>> - "isPrimary" argument of TPCCTerminal.choiceTransaction is true if the node is a jgroups coordinator. This has some limitations:
>> - other data grid providers than Infinispan might not have an "coordinator" concept, and this might be difficult to infer
>> - ATM only the coordinator does writes (on multiple threads). IMO this is too restricting as it doesn't induce deadlock situations that might appear when data is written by multiple nodes. Wouldn't it make more sense to spread the writes over all the nodes?
>> In order to overcome the dependency on jgroup's coordinator, you can use instead the AbstractDistStage.slaveIndex. This is a Radargun-level view of the benchmark cluster, independent of the benchmarked product
>> - PutGetStressor compares Strings based on the == operator, which is incorrect. e.g. e.getClass().getName() == "org.infinispan.CacheException"
>> - As an design suggestion, I think it would make sense to have an TpccTransaction interface with an executeTransaction(CacheWrapper cacheWrapper) methods, with specialized implementations: NewOrderTransaction, PayementTransaction, OrderStatusTransaction. Basically to move all the code TPCCTerminal.executeTransaction into these three classes. Such an approach would reduce coupling between the transactions and most importantly would offer a simple way of adding new tpcc transactions to the system, by implementing the TpccTransaction interface.
>> - class javadoc are the onese generater by IDEA
>> - adding .idea directory in github might cause troubles for people using IDEA and forking your repo; I think the dir should be removed
>>
>>
>> Another observation is about the way the project is managed in github: it is not a fork of Infinispan, but it was downloaded and committed as a totally different project. This means that all the nice review and merge feature that github and git offer cannot be used, but the merge needs to be made "by hand", comparing the source trees etc. I think it would make more sense to fork[1] from radargun's master[2] and apply all these nice feature on a fork. What do you think?
>>
>> Cheers,
>> Mircea
>>
>> [1] http://help.github.com/fork-a-repo/
>> [2] https://github.com/radargun/radargun
>>
>>
>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>> Hi all,
>>>
>>> I have added a new subsection
>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>> share information about the RadargunTPCC benchmark.
>>>
>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>> defined in the TPC Benchmark C specification [1] within Radargun
>>> Benchamark [2], and it has been designed with the purpose of executing
>>> the TPC-C benchmark against Infinispan.
>>>
>>> The source code is available at this link:
>>> https://github.com/cloudtm/RadargunTPCC
>>>
>>> Regards,
>>> Sebastiano Peluso
>>>
>>>
>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>
>>> ------------------------------------------------------------------------------
>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>> secure and there when you need it. Data protection magic?
>>> Nope - It's vRanger. Get your free trial download today.
>>> http://p.sf.net/sfu/quest-sfdev2dev
>>> _______________________________________________
>>> Cloudtm-discussion mailing list
>>> Cloudtm-discussion(a)lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>
>> ------------------------------------------------------------------------------
>> All of the data generated in your IT infrastructure is seriously valuable.
>> Why? It contains a definitive record of application performance, security
>> threats, fraudulent activity, and more. Splunk takes this data and makes
>> sense of it. IT sense. And common sense.
>> http://p.sf.net/sfu/splunk-d2d-c2________________________________________...
>> Cloudtm-discussion mailing list
>> Cloudtm-discussion(a)lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
> Begin forwarded message:
>
>> From: Mircea Markus <mircea.markus(a)jboss.com>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 28 June 2011 13:36:40 GMT+01:00
>> To: Manik Surtani <manik(a)jboss.org>
>> Cc: cloudtm-discussion(a)lists.sourceforge.net
>>
>> Didn't look at it in details but looks promising. I'll take a look later on this week.
>>
>> On 22 Jun 2011, at 18:44, Manik Surtani wrote:
>>> Cool. I'm adding Mircea in cc, who maintains the upstream Radargun. Mircea, does it make sense to have this in Radargun upstream?
>>>
>>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>>
>>>> Hi all,
>>>>
>>>> I have added a new subsection
>>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>>> share information about the RadargunTPCC benchmark.
>>>>
>>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>>> defined in the TPC Benchmark C specification [1] within Radargun
>>>> Benchamark [2], and it has been designed with the purpose of executing
>>>> the TPC-C benchmark against Infinispan.
>>>>
>>>> The source code is available at this link:
>>>> https://github.com/cloudtm/RadargunTPCC
>>>>
>>>> Regards,
>>>> Sebastiano Peluso
>>>>
>>>>
>>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>>> secure and there when you need it. Data protection magic?
>>>> Nope - It's vRanger. Get your free trial download today.
>>>> http://p.sf.net/sfu/quest-sfdev2dev
>>>> _______________________________________________
>>>> Cloudtm-discussion mailing list
>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>
>>> --
>>> Manik Surtani
>>> manik(a)jboss.org
>>> twitter.com/maniksurtani
>>>
>>> Lead, Infinispan
>>> http://www.infinispan.org
>>>
>>>
>>>
>>
> Begin forwarded message:
>
>> From: Mircea Markus <mircea.markus(a)jboss.com>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 28 June 2011 13:36:40 GMT+01:00
>> To: Manik Surtani <manik(a)jboss.org>
>> Cc: cloudtm-discussion(a)lists.sourceforge.net
>> Reply-To: cloudtm-discussion(a)lists.sourceforge.net
>>
>> Didn't look at it in details but looks promising. I'll take a look later on this week.
>>
>> On 22 Jun 2011, at 18:44, Manik Surtani wrote:
>>> Cool. I'm adding Mircea in cc, who maintains the upstream Radargun. Mircea, does it make sense to have this in Radargun upstream?
>>>
>>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>>
>>>> Hi all,
>>>>
>>>> I have added a new subsection
>>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>>> share information about the RadargunTPCC benchmark.
>>>>
>>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>>> defined in the TPC Benchmark C specification [1] within Radargun
>>>> Benchamark [2], and it has been designed with the purpose of executing
>>>> the TPC-C benchmark against Infinispan.
>>>>
>>>> The source code is available at this link:
>>>> https://github.com/cloudtm/RadargunTPCC
>>>>
>>>> Regards,
>>>> Sebastiano Peluso
>>>>
>>>>
>>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>>> secure and there when you need it. Data protection magic?
>>>> Nope - It's vRanger. Get your free trial download today.
>>>> http://p.sf.net/sfu/quest-sfdev2dev
>>>> _______________________________________________
>>>> Cloudtm-discussion mailing list
>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>
>>> --
>>> Manik Surtani
>>> manik(a)jboss.org
>>> twitter.com/maniksurtani
>>>
>>> Lead, Infinispan
>>> http://www.infinispan.org
>>>
>>>
>>>
>>
>>
>> ------------------------------------------------------------------------------
>> All of the data generated in your IT infrastructure is seriously valuable.
>> Why? It contains a definitive record of application performance, security
>> threats, fraudulent activity, and more. Splunk takes this data and makes
>> sense of it. IT sense. And common sense.
>> http://p.sf.net/sfu/splunk-d2d-c2
>> _______________________________________________
>> Cloudtm-discussion mailing list
>> Cloudtm-discussion(a)lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
> Begin forwarded message:
>
>> From: Mircea Markus <mircea.markus(a)jboss.com>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 27 June 2011 17:01:01 GMT+01:00
>> To: Paolo Romano <romano(a)inesc-id.pt>
>> Cc: Sebastiano Peluso <peluso(a)gsd.inesc-id.pt>, mmarkus(a)redhat.com, Manik Surtani <manik(a)jboss.org>
>>
>> Thanks wiling to contribute this!
>> I've received my account details and I'll take a look this/next week at it.
>>
>> Cheers,
>> Mircea
>>
>> On 22 Jun 2011, at 19:41, Paolo Romano wrote:
>>
>>> I am afraid that Mircea will not be able to log-in to the wiki.
>>>
>>> Sebastiano, please, can you create an account for him?
>>>
>>> Cheers,
>>>
>>> Paolo
>>>
>>>
>>> On 6/22/11 6:44 PM, Manik Surtani wrote:
>>>> Cool. I'm adding Mircea in cc, who maintains the upstream Radargun. Mircea, does it make sense to have this in Radargun upstream?
>>>>
>>>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>>>
>>>>> Hi all,
>>>>>
>>>>> I have added a new subsection
>>>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>>>> share information about the RadargunTPCC benchmark.
>>>>>
>>>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>>>> defined in the TPC Benchmark C specification [1] within Radargun
>>>>> Benchamark [2], and it has been designed with the purpose of executing
>>>>> the TPC-C benchmark against Infinispan.
>>>>>
>>>>> The source code is available at this link:
>>>>> https://github.com/cloudtm/RadargunTPCC
>>>>>
>>>>> Regards,
>>>>> Sebastiano Peluso
>>>>>
>>>>>
>>>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>>>
>>>>> ------------------------------------------------------------------------------
>>>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>>>> secure and there when you need it. Data protection magic?
>>>>> Nope - It's vRanger. Get your free trial download today.
>>>>> http://p.sf.net/sfu/quest-sfdev2dev
>>>>> _______________________________________________
>>>>> Cloudtm-discussion mailing list
>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>> --
>>>> Manik Surtani
>>>> manik(a)jboss.org
>>>> twitter.com/maniksurtani
>>>>
>>>> Lead, Infinispan
>>>> http://www.infinispan.org
>>>>
>>>>
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>>> secure and there when you need it. Data protection magic?
>>>> Nope - It's vRanger. Get your free trial download today.
>>>> http://p.sf.net/sfu/quest-sfdev2dev
>>>> _______________________________________________
>>>> Cloudtm-discussion mailing list
>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>
>>>
>>
> Begin forwarded message:
>
>> From: Mircea Markus <mircea.markus(a)jboss.com>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 27 June 2011 17:01:01 GMT+01:00
>> To: Paolo Romano <romano(a)inesc-id.pt>
>> Cc: Sebastiano Peluso <peluso(a)gsd.inesc-id.pt>, mmarkus(a)redhat.com, Manik Surtani <manik(a)jboss.org>
>>
>> Thanks wiling to contribute this!
>> I've received my account details and I'll take a look this/next week at it.
>>
>> Cheers,
>> Mircea
>>
>> On 22 Jun 2011, at 19:41, Paolo Romano wrote:
>>
>>> I am afraid that Mircea will not be able to log-in to the wiki.
>>>
>>> Sebastiano, please, can you create an account for him?
>>>
>>> Cheers,
>>>
>>> Paolo
>>>
>>>
>>> On 6/22/11 6:44 PM, Manik Surtani wrote:
>>>> Cool. I'm adding Mircea in cc, who maintains the upstream Radargun. Mircea, does it make sense to have this in Radargun upstream?
>>>>
>>>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>>>
>>>>> Hi all,
>>>>>
>>>>> I have added a new subsection
>>>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>>>> share information about the RadargunTPCC benchmark.
>>>>>
>>>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>>>> defined in the TPC Benchmark C specification [1] within Radargun
>>>>> Benchamark [2], and it has been designed with the purpose of executing
>>>>> the TPC-C benchmark against Infinispan.
>>>>>
>>>>> The source code is available at this link:
>>>>> https://github.com/cloudtm/RadargunTPCC
>>>>>
>>>>> Regards,
>>>>> Sebastiano Peluso
>>>>>
>>>>>
>>>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>>>
>>>>> ------------------------------------------------------------------------------
>>>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>>>> secure and there when you need it. Data protection magic?
>>>>> Nope - It's vRanger. Get your free trial download today.
>>>>> http://p.sf.net/sfu/quest-sfdev2dev
>>>>> _______________________________________________
>>>>> Cloudtm-discussion mailing list
>>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>> --
>>>> Manik Surtani
>>>> manik(a)jboss.org
>>>> twitter.com/maniksurtani
>>>>
>>>> Lead, Infinispan
>>>> http://www.infinispan.org
>>>>
>>>>
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>>> secure and there when you need it. Data protection magic?
>>>> Nope - It's vRanger. Get your free trial download today.
>>>> http://p.sf.net/sfu/quest-sfdev2dev
>>>> _______________________________________________
>>>> Cloudtm-discussion mailing list
>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>
>>>
>>
> Begin forwarded message:
>
>> From: Paolo Romano <romano(a)inesc-id.pt>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 22 June 2011 19:41:00 GMT+01:00
>> To: Sebastiano Peluso <peluso(a)gsd.inesc-id.pt>, mmarkus(a)redhat.com
>> Cc: Manik Surtani <manik(a)jboss.org>
>>
>> I am afraid that Mircea will not be able to log-in to the wiki.
>>
>> Sebastiano, please, can you create an account for him?
>>
>> Cheers,
>>
>> Paolo
>>
>>
>> On 6/22/11 6:44 PM, Manik Surtani wrote:
>>> Cool. I'm adding Mircea in cc, who maintains the upstream Radargun. Mircea, does it make sense to have this in Radargun upstream?
>>>
>>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>>
>>>> Hi all,
>>>>
>>>> I have added a new subsection
>>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>>> share information about the RadargunTPCC benchmark.
>>>>
>>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>>> defined in the TPC Benchmark C specification [1] within Radargun
>>>> Benchamark [2], and it has been designed with the purpose of executing
>>>> the TPC-C benchmark against Infinispan.
>>>>
>>>> The source code is available at this link:
>>>> https://github.com/cloudtm/RadargunTPCC
>>>>
>>>> Regards,
>>>> Sebastiano Peluso
>>>>
>>>>
>>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>>> secure and there when you need it. Data protection magic?
>>>> Nope - It's vRanger. Get your free trial download today.
>>>> http://p.sf.net/sfu/quest-sfdev2dev
>>>> _______________________________________________
>>>> Cloudtm-discussion mailing list
>>>> Cloudtm-discussion(a)lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>> --
>>> Manik Surtani
>>> manik(a)jboss.org
>>> twitter.com/maniksurtani
>>>
>>> Lead, Infinispan
>>> http://www.infinispan.org
>>>
>>>
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>> secure and there when you need it. Data protection magic?
>>> Nope - It's vRanger. Get your free trial download today.
>>> http://p.sf.net/sfu/quest-sfdev2dev
>>> _______________________________________________
>>> Cloudtm-discussion mailing list
>>> Cloudtm-discussion(a)lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>
>>
> Begin forwarded message:
>
>> From: Manik Surtani <manik(a)jboss.org>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 22 June 2011 18:44:50 GMT+01:00
>> To: cloudtm-discussion(a)lists.sourceforge.net
>> Cc: Mircea Markus <mmarkus(a)redhat.com>
>>
>> Cool. I'm adding Mircea in cc, who maintains the upstream Radargun. Mircea, does it make sense to have this in Radargun upstream?
>>
>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>
>>> Hi all,
>>>
>>> I have added a new subsection
>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>> share information about the RadargunTPCC benchmark.
>>>
>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>> defined in the TPC Benchmark C specification [1] within Radargun
>>> Benchamark [2], and it has been designed with the purpose of executing
>>> the TPC-C benchmark against Infinispan.
>>>
>>> The source code is available at this link:
>>> https://github.com/cloudtm/RadargunTPCC
>>>
>>> Regards,
>>> Sebastiano Peluso
>>>
>>>
>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>
>>> ------------------------------------------------------------------------------
>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>> secure and there when you need it. Data protection magic?
>>> Nope - It's vRanger. Get your free trial download today.
>>> http://p.sf.net/sfu/quest-sfdev2dev
>>> _______________________________________________
>>> Cloudtm-discussion mailing list
>>> Cloudtm-discussion(a)lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>
>> --
>> Manik Surtani
>> manik(a)jboss.org
>> twitter.com/maniksurtani
>>
>> Lead, Infinispan
>> http://www.infinispan.org
>>
>>
>>
> Begin forwarded message:
>
>> From: Manik Surtani <manik(a)jboss.org>
>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>> Date: 22 June 2011 18:44:50 GMT+01:00
>> To: cloudtm-discussion(a)lists.sourceforge.net
>> Cc: Mircea Markus <mmarkus(a)redhat.com>
>> Reply-To: cloudtm-discussion(a)lists.sourceforge.net
>>
>> Cool. I'm adding Mircea in cc, who maintains the upstream Radargun. Mircea, does it make sense to have this in Radargun upstream?
>>
>> On 22 Jun 2011, at 18:06, Sebastiano Peluso wrote:
>>
>>> Hi all,
>>>
>>> I have added a new subsection
>>> (https://cloudtm.ist.utl.pt/wiki/index.php/RadargunTPCC), within the
>>> "Shared software resources" section on the Cloud-TM Wiki, in order to
>>> share information about the RadargunTPCC benchmark.
>>>
>>> RadargunTPCC benchmark is an implementation of the Transaction Profiles
>>> defined in the TPC Benchmark C specification [1] within Radargun
>>> Benchamark [2], and it has been designed with the purpose of executing
>>> the TPC-C benchmark against Infinispan.
>>>
>>> The source code is available at this link:
>>> https://github.com/cloudtm/RadargunTPCC
>>>
>>> Regards,
>>> Sebastiano Peluso
>>>
>>>
>>> [1] http://www.tpc.org/tpcc/spec/tpcc_current.pdf
>>> [2] http://sourceforge.net/apps/trac/radargun/wiki/WikiStart
>>>
>>> ------------------------------------------------------------------------------
>>> Simplify data backup and recovery for your virtual environment with vRanger.
>>> Installation's a snap, and flexible recovery options mean your data is safe,
>>> secure and there when you need it. Data protection magic?
>>> Nope - It's vRanger. Get your free trial download today.
>>> http://p.sf.net/sfu/quest-sfdev2dev
>>> _______________________________________________
>>> Cloudtm-discussion mailing list
>>> Cloudtm-discussion(a)lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>
>> --
>> Manik Surtani
>> manik(a)jboss.org
>> twitter.com/maniksurtani
>>
>> Lead, Infinispan
>> http://www.infinispan.org
>>
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Simplify data backup and recovery for your virtual environment with vRanger.
>> Installation's a snap, and flexible recovery options mean your data is safe,
>> secure and there when you need it. Data protection magic?
>> Nope - It's vRanger. Get your free trial download today.
>> http://p.sf.net/sfu/quest-sfdev2dev
>> _______________________________________________
>> Cloudtm-discussion mailing list
>> Cloudtm-discussion(a)lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>
--
Galder Zamarreño
Sr. Software Engineer
Infinispan, JBoss Cache
13 years, 1 month
Fwd: Weird filesystem issues breaking transaction tests in CI
by Galder Zamarreño
FYI
Begin forwarded message:
> From: Mircea Markus <mircea.markus(a)jboss.com>
> Subject: Re: Weird filesystem issues breaking transaction tests in CI
> Date: November 9, 2011 2:34:24 PM GMT+01:00
> To: Galder Zamarreño <galder(a)jboss.org>
> Cc: Dan Berindei <dberinde(a)redhat.com>
>
> The volatile store form JBossTM is now disabled - I had played with recovery and I forgot it on.
> This should be fixed once https://github.com/infinispan/infinispan/pull/629 is integrated.
>
> On 9 Nov 2011, at 13:04, Galder Zamarreño wrote:
>
>> Hey guys,
>>
>> So, I've been analysing the failures in:
>>
>> https://infinispan.ci.cloudbees.com/job/Infinispan-master-JDK6-tcp/org.in...
>>
>> and
>>
>> https://infinispan.ci.cloudbees.com/job/Infinispan-master-JDK6-tcp/303/co...
>>
>> And I think there's a common denominator:
>>
>> In the 1st test, just before the failure, you see:
>> java.io.FileNotFoundException: PutObjectStoreDirHere/ShadowNoFileLockStore/defaultStore/StateManager/BasicAction/TwoPhaseCoordinator/AtomicAction/0_ffff0ad62fc1_ab2a_4eba5393_172 (No such file or directory)
>> at java.io.FileOutputStream.open(Native Method)
>> at java.io.FileOutputStream.<init>(FileOutputStream.java:179)
>> at java.io.FileOutputStream.<init>(FileOutputStream.java:131)
>> at com.arjuna.ats.internal.arjuna.objectstore.ShadowingStore.write_state(ShadowingStore.java:557)
>> at com.arjuna.ats.internal.arjuna.objectstore.FileSystemStore.write_committed(FileSystemStore.java:134)
>> at com.arjuna.ats.arjuna.coordinator.BasicAction.prepare(BasicAction.java:2209)
>> at com.arjuna.ats.arjuna.coordinator.BasicAction.End(BasicAction.java:1469)
>> at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:99)
>> at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:159)
>> at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1158)
>> at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:119)
>> at org.infinispan.tx.TransactionsSpanningReplicatedCachesTest.testCommitSpanningCaches(TransactionsSpanningReplicatedCachesTest.java:103)
>>
>> And in the 2nd, you see:
>> Caused by: com.arjuna.ats.arjuna.exceptions.ObjectStoreException: ARJUNA12225: FileSystemStore::setupStore - cannot access root of object store: PutObjectStoreDirHere/ShadowNoFileLockStore/defaultStore/
>> at com.arjuna.ats.internal.arjuna.objectstore.FileSystemStore.<init>(FileSystemStore.java:482)
>> at com.arjuna.ats.internal.arjuna.objectstore.ShadowingStore.<init>(ShadowingStore.java:619)
>> at com.arjuna.ats.internal.arjuna.objectstore.ShadowNoFileLockStore.<init>(ShadowNoFileLockStore.java:53)
>>
>> Maybe it's some issue with Cloudbees and the filesystem, so I'm wondering, can we have an alternative transaction store? i.e. one in memory to avoid these kid of issues?
>>
>> Could you look at alternatives in JBoss TS for this?
>>
>> In the mean time, I'll check with Cloudbees to see what's up.
>>
>> Cheers,
>> --
>> Galder Zamarreño
>> Sr. Software Engineer
>> Infinispan, JBoss Cache
>>
>
--
Galder Zamarreño
Sr. Software Engineer
Infinispan, JBoss Cache
13 years, 1 month
Reminder: 5.1.0.BETA4 out on Monday (7/11)
by Galder Zamarreño
BETA4 is supposed to go out this coming Monday.
How are you things looking on your side?
Cheers,
--
Galder Zamarreño
Sr. Software Engineer
Infinispan, JBoss Cache
13 years, 1 month