I stopped typing my post for a sec and scrolled up and realized I was going to inadvertently throw a novel at you guys. I tried to shorten it as best as possible. Here goes.
I don't know how Local datapool entries are utilized and the Help file and student guide provide no answers.
How exactly are Local datapool resources utilized? Since each Player Agent loads it's own datapool, I've come to the following assumptions.
a) Player agent 1 has every datapool entry in the datapool available to it.
b) The VU's for Player agent 1 share the dp entries among themselves, meaning that only one VU can be using any dp entry at any given time. A VU must complete his transaction before any other VU can access and utilize that entry in their next transaction.
c) If running multiple player agents, the above rules apply within the player agent itself, but each player agent is independant of one another so a VU on player 1 and a VU on player 2 could be using the same dp entry and sending that request to the server at the same time.
Ok hope I got that right as it made the most sense to me. Now if someone caould give me an idea of how things work in the following scenarios? There's alot more scenarios I want to list, but I think I should keep it simple for now and learn in baby steps heh.
Here is the test criteria being used.
test script browses a website. In the script their are 10 unique pages requested other than the home page. The datapool file contains 100 url's for the site being tested. Each URL other than the home page has been variabalized using the local datapool.
1 vu running in a loop: I'm assuming that starting with the first new page request the VU is using entry 1 in the datapool. When it reaches the next page request it uses entry 2 and so on until at the end of the transaction it used entries 1 - 10. The vu is now looping and starts the transaction again. The first page request in transaction 2 uses DP entry 11 correct?
Assuming the above was true, I then have 2 VU's on the same player agent running in a loop. To make it easier for me to follow, 1 VU starts 5 seconds after the other. So VU 1 uses DP entry 1 for it's first page request. Shortly after VU 2 uses DP entry 2 and they continue on each using whichever DP entry is next sequentially and not in use. Correct?
Ok last scenario.
One Player Agent
1VU increasing 1VU every 15 seconds, total of 2VU's
basically what I want to know in this scenario is the following; if VU 1 was halfway through it's transaction, having completed 5 page requests using DP entries 1-5, and VU 2 had just entered the script and was making it's first page request at that moment, does VU2 use DP entry 1 because it's not in use? Or does it use DP entry 6 because the player Agent is only feeding the next sequential entry?
I have alot more questions but I'll stop before I confuse myself too much. One thing I just NEED to ask though, is there a way to randomize the datapool entry used so that it's not just taking the next entry in the list?
b) Take "in use" out of your considerations, only think about what has been used. The line of the datapool to use next only advances forward, so once an entry is used it will not be used again until the end of the datapool where it will start over at the beginning if you have REWIND enabled for that datapool.
c) I'm not sure but I think what you are saying is correct. You should set up a blank script with and use RR_printf's to test this out. You can add sleeps in the script to get the scenarios you are talking about.
First Scenario) correct.
Next question) see above - and below, this is the same question "last scenario."
last scenario) VU2 would start with DP entry 6.
The only way to ensure unique data is the central datapool - but what version are you using? in 5.8 a new datapool type is introduced that is like a central datapool but only for the specific PC.
A problem is a difference between what is perceived and what is desired, that
we want to reduce (Dewey 1933)
Thanks for the help drazle I appreciate it! We are currently using 5.63 I believe, however my manager did mention he requested 5.8 a few weeks ago. I think I'll have him follow up on that since that new data pool type seems like exactly what I need. Thanks again!