Comment 11 for bug 1271559

Revision history for this message
Josh Stompro (u-launchpad-stompro-org) wrote :

Steps to reproduce issue.

1. Have 2 or more users with different Z39.50 use_perm permissions, that are limited to different sets of z39.50 servers.

2. Grab or generate auth keys for those users.

3. Restart open-ils.search to clear the %services cache : osrf_control --restart --service open-ils.search -l

4. Watch your system logs for z3950 requests. tail -f /openils/var/log/osrfsys.log| fgrep 'z3950'

5. start srfsh and perform a request for user 1 to get the list of z39.50 servers they can access.
   a. request open-ils.search open-ils.search.z3950.retrieve_services "user 1 auth key"
   b. Make note of which process handled the request from logs.
   c. Process 50493 handled this request for example open-ils.search [INFO:50493:Z3950.pm:454:170110717350926105] z3950:

6. Perform the request again for user 2. Hopefully you hit a different process. If you hit the same process you will need to go back and request for user 1 again.

7. Perform some searches and watch to see which process you hit. If you are searching using User2, and you hit the process that has the services for user1, then you will get a "Received no data from server" result.

Search example: Set your service name to match what you have.

srfsh# request open-ils.search open-ils.search.z3950.search_class "user 2 auth token",{ "service_array": [ "setservicename" ] , "username_array": [ "" ] , "password_array": [ "" ] , "limit":10, "offset":0, "search": { "isbn":"9781639731930y" } , "service": [ "setservicename" ] , "username": [ "" ] , "password": [ "" ]}