Hi Listers,

As per my experience (even though ARS is not limited for searching) you may to 
consider several factors when enabling a Web Service for long queries 
(OpGetList).


-          Amount of records: (Do you really need to get more than 700-1000 
records?)

-          Packet Size per Query (i.e IncidentInterface_WS results for a 
GetList query with 16 records returned/50 fields per record = about 70 KB)

-          JVM Heap Size ( -XMX- should be about 50% of your Physical Memory, 
-XMS about 90% of -XMX)

-          XSD Structure for WS' GetList Response (How many attributes are your 
WS returning per record?)

-          Concurrent Users being attended through MT (Is your MT being used by 
regular people meanwhile querying through WS?)

-          Max Entries Returned by GetList (Server Information)

-          Max Entries Returned by Web Service'GetList response (maxlimit)

-          Database Behavior and Performance (Have you ever checked SQL logs 
when querying because of GetList operation? It's not "just one" SQL sentence 
executed when querying:
Example: IncidentInterface_WS Getlist, Qualification: 'Phone Number' = "XXXXXXX"

<SQL Query n° 1 - Querying Request ID's based on Qualification>
                               SELECT T1916.C1 FROM T1916 WHERE 
(T1916.C1000000056 = '25329197') ORDER BY 1 ASC   //21 records found

<SQL Query n° 2 - Querying All fields for First Request ID found because of SQL 
Query n° 1>
SELECT 
C1,C1,C1000000217,C1000000298,C1000000251,C1000000014,C1000000218,C1000000063,C1000000064,C1000000065,C1000000004,C1000003896,C1000003891,C1000003892,C1000003893,
C1000003895,C1000003894,C1000000001,C1000000082,C1000000027,C1000000002,C200000006,C1000000000,C1000000151,C1000000019,C1000000163,C1000000161,C1000000048,C1000000018,
C240001003,C1000000020,C1000000010,C1000000056,C1000000164,C1000000169,C200000003,C200000004,C200000005,C240001005,C240001002,C200000012,C1000000215,C1000000156,
C1000002488,C1000003889,C1000003890,C1000000099, 
C7,C1000000150,C1000000162,C1000000026 FROM T1916 WHERE (E0 = 'INC000000006132' 
and E1 = 'INC000000006132' )

<SQL Query n° 3 - Querying All fields for Second Request ID found because of 
SQL Query n° 1>
SELECT 
C1,C1,C1000000217,C1000000298,C1000000251,C1000000014,C1000000218,C1000000063,C1000000064,C1000000065,C1000000004,C1000003896,C1000003891,C1000003892,C1000003893,
C1000003895,C1000003894,C1000000001,C1000000082,C1000000027,C1000000002,C200000006,C1000000000,C1000000151,C1000000019,C1000000163,C1000000161,C1000000048,C1000000018,
C240001003,C1000000020,C1000000010,C1000000056,C1000000164,C1000000169,C200000003,C200000004,C200000005,C240001005,C240001002,C200000012,C1000000215,C1000000156,
C1000002488,C1000003889,C1000003890,C1000000099, 
C7,C1000000150,C1000000162,C1000000026 FROM T1916 WHERE (E0 = 'INC000000006199' 
and E1 = 'INC000000006199' )
.....
.....

<SQL Query n° 22 - Querying All fields for 21th Request ID found because of SQL 
Query n° 1>

HTH,

Alejandro


De: Action Request System discussion list(ARSList) [mailto:[email protected]] 
En nombre de Prabhakaran, Prasanth (GO IN Application Management)
Enviado el: Jueves, 13 de Octubre de 2011 7:00
Para: [email protected]
Asunto: Re: Web Service getlist can not fetech more than 700 records and give 
request time out

**
Hi Sameer,

  As per my understanding there are no limits for fetching records through web 
services using getlist method, make sure that your form search is not limited 
for searching. There are no limitations on publishing web service in OOTB forms 
and as Chintan mentioned we should be very specific about the search 
qualification.

Regards,
Prasanth

From: Action Request System discussion list(ARSList) 
[mailto:[email protected]] On Behalf Of Chintan Shah
Sent: Wednesday, October 12, 2011 9:15 PM
To: [email protected]
Subject: Re: Web Service getlist can not fetech more than 700 records and give 
request time out

**
Hi Sameer,

As far as I know, there is none..in your web-service designer you can specify 
the # of records to be retrieved. I generally keep it to 1000 or less.

Usually you want to keep the qualification very specific and make sure that it 
does not return a large data set or if it does then # of attributes that you 
are returning should be kept less otherwise you see will a large SOAP envelope 
returning back.

I had seen issues in past where retrieving more than over 5K records with bad 
qualification hung the midtier (and errors registered were similar to what you 
are seeing below...cant recall but I have even seen out of memory)..although 
these does depend on your JVM settings on tomcat.

As far as writing web-service on join form, I have not tried that..but make 
sure you have a good qualification and fields used in qualification are indexed.

Thanks.
Chintan.

________________________________
From: Sam The Dam <[email protected]>
To: [email protected]
Sent: Wednesday, October 12, 2011 5:36 AM
Subject: Web Service getlist can not fetech more than 700 records and give 
request time out
**

Hi All,

I have published web service using gelist. But when I try to consume this web 
service I can fetch only 500 records.
I found a BMC KB KA299205 and set the 'Proxy Server Settings for Java VM' value 
to -Xms512m -Xmx1024m and now able to fetch 700 records.

However if I try to fetch more than 700 records using this web service I get 
request time out. I have written this web service on a custom form which is a 
join form of HPD:Help desk

Wed Oct 12 06:24:34 GMT 2011:ERROR:Exception in request: 
java.net<http://java.net.So>.SocketTimeoutException: Read timed out
Wed Oct 12 06:24:34 GMT 2011:ERROR:An error occured [Read timed out], see error 
log for details
Wed Oct 12 06:24:35 GMT 2011:INFO:Error getting response for 
[PortSoapBinding.GetList:Request 1]; java.net.SocketTimeoutException: Read 
timed out

Is there any limit on number of records that one can fetch by consuming a web 
service which is using getlist?

Also is there any restriction on publishing web service on OOTB forms?

Regards,
Sameer Inamdar
Wipro Technologies

Please do not print this email unless it is absolutely necessary.
The information contained in this electronic message and any attachments to 
this message are intended for the exclusive use of the addressee(s) and may 
contain proprietary, confidential or privileged information. If you are not the 
intended recipient, you should not disseminate, distribute or copy this e-mail. 
Please notify the sender immediately and destroy all copies of this message and 
any attachments.
WARNING: Computer viruses can be transmitted via email. The recipient should 
check this email and any attachments for the presence of viruses. The company 
accepts no liability for any damage caused by any virus transmitted by this 
email.
www.wipro.com<http://www.wipro.com>
_attend WWRUG11 www.wwrug.com<http://www.wwrug.com> ARSlist: "Where the Answers 
Are"_

_attend WWRUG11 www.wwrug.com ARSlist: "Where the Answers Are"_

Think green - keep it on the screen. This e-mail and any attachment is for 
authorised use by the intended recipient(s) only. It may contain proprietary 
material, confidential information and/or be subject to legal privilege. It 
should not be copied, disclosed to, retained or used by, any other party. If 
you are not an intended recipient then please promptly delete this e-mail and 
any attachment and all copies and inform the sender. Thank you.
_attend WWRUG11 www.wwrug.com ARSlist: "Where the Answers Are"_

_______________________________________________________________________________
UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
attend wwrug11 www.wwrug.com ARSList: "Where the Answers Are"

Reply via email to