[infinispan-dev] RadargunTPCC benchmark review

Sebastiano Peluso peluso at gsd.inesc-id.pt
Mon Nov 7 07:14:47 EST 2011


Hi Galder,

thank you for the review. My answers are below inline.

Il 04/11/11 11:02, Galder Zamarreño ha scritto:
> 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.
Ok. I will adopt TimeUnit.
> 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.
Thank you for the suggestion. I will implement Externalizable interface 
for the TPC-C domain objects.

> 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?
This is partially true. Each slave populates a slice of the data 
container in a such a way that, for each pair of distinct slaves s1, s2, 
if s1 populates the slice c1 and s2 populates the slice c2, then the 
intersection between c1 and c2 is empty.
In this way we try to parallelize as much as possible cache loading, we 
don't perform population in a transactional context and if the cache is 
fully replicated then at the end of the population stage each node will 
store all loaded data.
> 4. Has this TPCC benchmark code been run with Infinispan 4?
I ran it also on top of Infinispan 5.
> 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,

Thank you again.

Cheers,

    Sebastiano

> On Nov 1, 2011, at 4:47 PM, Mircea Markus wrote:
>
>> Begin forwarded message:
>>
>>> From: Sebastiano Peluso<peluso at 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 at jboss.com>
>>> Cc: Paolo Romano<romano at inesc-id.pt>, Manik Surtani<msurtani at 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 inhttps://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 at 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 at 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 at 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 at 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 at lists.sourceforge.net
>>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>> Begin forwarded message:
>>
>>> From: Mircea Markus<mircea.markus at jboss.com>
>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Date: 13 October 2011 19:31:00 GMT+01:00
>>> To: Sebastiano Peluso<peluso at gsd.inesc-id.pt>
>>> Cc: Paolo Romano<romano at inesc-id.pt>, Manik Surtani<msurtani at 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 inhttps://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 at 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 at 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 at 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 at 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 at lists.sourceforge.net
>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>> Begin forwarded message:
>>
>>> From: Sebastiano Peluso<peluso at 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 at jboss.com>
>>> Cc: Paolo Romano<romano at inesc-id.pt>
>>>
>>> Hi Mircea,
>>>
>>> have you had the opportunity to take a look at the Radargun's tpcc branch inhttps://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 at 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 at 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 at 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 at 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 at lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>> Begin forwarded message:
>>
>>> From: Mircea Markus<mircea.markus at jboss.com>
>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Date: 31 August 2011 17:36:59 GMT+01:00
>>> To: Sebastiano Peluso<peluso at gsd.inesc-id.pt>
>>> Cc: Paolo Romano<romano at 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 at 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 at 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 at 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 at 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 at lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>> Begin forwarded message:
>>
>>> From: Sebastiano Peluso<peluso at 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 at jboss.com>
>>> Cc: Paolo Romano<romano at 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 at 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 at 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 at 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 at 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 at lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>> Begin forwarded message:
>>
>>> From: Sebastiano Peluso<peluso at gsd.inesc-id.pt>
>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Date: 12 July 2011 10:20:33 GMT+01:00
>>> To:cloudtm-discussion at lists.sourceforge.net
>>> Reply-To:cloudtm-discussion at 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 at 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 at 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 at 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 at 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 at lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>> Begin forwarded message:
>>
>>> From: Mircea Markus<mircea.markus at jboss.com>
>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Date: 11 July 2011 13:28:15 GMT+01:00
>>> To:cloudtm-discussion at 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 at 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 at 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 at lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>> Begin forwarded message:
>>
>>> From: Mircea Markus<mircea.markus at jboss.com>
>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Date: 11 July 2011 13:28:15 GMT+01:00
>>> To:cloudtm-discussion at lists.sourceforge.net
>>> Reply-To:cloudtm-discussion at 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 at 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 at 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 at 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 at lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>> Begin forwarded message:
>>
>>> From: Sebastiano Peluso<peluso at gsd.inesc-id.pt>
>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Date: 8 July 2011 15:31:03 GMT+01:00
>>> To:cloudtm-discussion at lists.sourceforge.net
>>> Reply-To:cloudtm-discussion at 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 at 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 at 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 at lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>> Begin forwarded message:
>>
>>> From: Manik Surtani<msurtani at redhat.com>
>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Date: 8 July 2011 12:04:56 GMT+01:00
>>> To: Mircea Markus<mircea.markus at jboss.com>
>>> Cc: Dan Berindei<dberinde at 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 at jboss.org
>>> twitter.com/maniksurtani
>>>
>>> Lead, Infinispan
>>> http://www.infinispan.org
>>>
>>>
>>>
>> Begin forwarded message:
>>
>>> From: Mircea Markus<mircea.markus at jboss.com>
>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Date: 8 July 2011 11:41:42 GMT+01:00
>>> To: Manik Surtani<msurtani at redhat.com>
>>> Cc: Dan Berindei<dberinde at 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 at 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 at jboss.com>
>>>>>> Date: 8 July 2011 11:33:41 GMT+01:00
>>>>>> To:cloudtm-discussion at lists.sourceforge.net
>>>>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>>>>> Reply-To:cloudtm-discussion at 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 at 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 at lists.sourceforge.net
>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>> Begin forwarded message:
>>
>>> From: Manik Surtani<msurtani at redhat.com>
>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Date: 8 July 2011 11:39:37 GMT+01:00
>>> To: Mircea Markus<mircea.markus at jboss.com>
>>> Cc: Dan Berindei<dberinde at redhat.com>, Manik Surtani<manik at 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 at 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 at jboss.com>
>>>>> Date: 8 July 2011 11:33:41 GMT+01:00
>>>>> To:cloudtm-discussion at lists.sourceforge.net
>>>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>>>> Reply-To:cloudtm-discussion at 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 at 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 at lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>> Begin forwarded message:
>>
>>> From: Mircea Markus<mircea.markus at jboss.com>
>>> Subject: Fwd: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Date: 8 July 2011 11:36:29 GMT+01:00
>>> To: Dan Berindei<dberinde at redhat.com>, Manik Surtani<manik at 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 at jboss.com>
>>>> Date: 8 July 2011 11:33:41 GMT+01:00
>>>> To:cloudtm-discussion at lists.sourceforge.net
>>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>>> Reply-To:cloudtm-discussion at 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 at 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 at lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>> Begin forwarded message:
>>
>>> From: Mircea Markus<mircea.markus at jboss.com>
>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Date: 8 July 2011 11:33:41 GMT+01:00
>>> To:cloudtm-discussion at 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 at lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>> Begin forwarded message:
>>
>>> From: Mircea Markus<mircea.markus at jboss.com>
>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Date: 8 July 2011 11:33:41 GMT+01:00
>>> To:cloudtm-discussion at lists.sourceforge.net
>>> Reply-To:cloudtm-discussion at 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 at 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 at lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>> Begin forwarded message:
>>
>>> From: Mircea Markus<mircea.markus at jboss.com>
>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Date: 28 June 2011 13:36:40 GMT+01:00
>>> To: Manik Surtani<manik at jboss.org>
>>> Cc:cloudtm-discussion at 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 at lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>> --
>>>> Manik Surtani
>>>> manik at jboss.org
>>>> twitter.com/maniksurtani
>>>>
>>>> Lead, Infinispan
>>>> http://www.infinispan.org
>>>>
>>>>
>>>>
>> Begin forwarded message:
>>
>>> From: Mircea Markus<mircea.markus at jboss.com>
>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Date: 28 June 2011 13:36:40 GMT+01:00
>>> To: Manik Surtani<manik at jboss.org>
>>> Cc:cloudtm-discussion at lists.sourceforge.net
>>> Reply-To:cloudtm-discussion at 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 at lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>> --
>>>> Manik Surtani
>>>> manik at 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 at lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>> Begin forwarded message:
>>
>>> From: Mircea Markus<mircea.markus at jboss.com>
>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Date: 27 June 2011 17:01:01 GMT+01:00
>>> To: Paolo Romano<romano at inesc-id.pt>
>>> Cc: Sebastiano Peluso<peluso at gsd.inesc-id.pt>,mmarkus at redhat.com, Manik Surtani<manik at 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 at lists.sourceforge.net
>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>> --
>>>>> Manik Surtani
>>>>> manik at 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 at lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>> Begin forwarded message:
>>
>>> From: Mircea Markus<mircea.markus at jboss.com>
>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Date: 27 June 2011 17:01:01 GMT+01:00
>>> To: Paolo Romano<romano at inesc-id.pt>
>>> Cc: Sebastiano Peluso<peluso at gsd.inesc-id.pt>,mmarkus at redhat.com, Manik Surtani<manik at 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 at lists.sourceforge.net
>>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>>> --
>>>>> Manik Surtani
>>>>> manik at 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 at lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>> Begin forwarded message:
>>
>>> From: Paolo Romano<romano at inesc-id.pt>
>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Date: 22 June 2011 19:41:00 GMT+01:00
>>> To: Sebastiano Peluso<peluso at gsd.inesc-id.pt>,mmarkus at redhat.com
>>> Cc: Manik Surtani<manik at 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 at lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>>> --
>>>> Manik Surtani
>>>> manik at 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 at lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>> Begin forwarded message:
>>
>>> From: Manik Surtani<manik at jboss.org>
>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Date: 22 June 2011 18:44:50 GMT+01:00
>>> To:cloudtm-discussion at lists.sourceforge.net
>>> Cc: Mircea Markus<mmarkus at 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 at lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>> --
>>> Manik Surtani
>>> manik at jboss.org
>>> twitter.com/maniksurtani
>>>
>>> Lead, Infinispan
>>> http://www.infinispan.org
>>>
>>>
>>>
>> Begin forwarded message:
>>
>>> From: Manik Surtani<manik at jboss.org>
>>> Subject: Re: [Cloudtm-discussion] RadargunTPCC benchmark
>>> Date: 22 June 2011 18:44:50 GMT+01:00
>>> To:cloudtm-discussion at lists.sourceforge.net
>>> Cc: Mircea Markus<mmarkus at redhat.com>
>>> Reply-To:cloudtm-discussion at 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 at lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
>>> --
>>> Manik Surtani
>>> manik at 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 at lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/cloudtm-discussion
> --
> Galder Zamarreño
> Sr. Software Engineer
> Infinispan, JBoss Cache
>




More information about the infinispan-dev mailing list