K2ROM error on big return list

  • 7 September 2007
  • 4 replies
  • 10 views

Badge +13

It seems that if there is a lot of items coming back I am getting this error:

 Communication error with server

recv failed: An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full.

 Any suggestions?
 


4 replies

Badge +11

Hi Peter,


What are you trying to do through K2ROM?  Worklist retrieval?


How many items are we talking here?  How much data on process and activity level?  Do you have DOD enabled on the fields?


Regards,


Ockert

Badge +13

It should be less than 500 items, yes worklist retrieval with a couple of criterias and sort.

Minimal on activity level but it does have large XML (10k each?) data fields.  

I do not have DOD enabled on the XML field.   I will enable it on the next process release.

In the mean time how do I know if DOD is the issue of the error?

Is there a way to change the DOD behavior on server for existing processes? 

Badge +11

Hi Peter,


 So let's say it is 500 items x 10k = 5MB of data to be retrieved -> IMO, the most likely cause of the buffer overrun.


Do you get the same error on smaller worklists?


If you enable K2Server Logging in K2.net 2003 SP4, you should be able to see the number of bytes being retrieved for each OpenWorklist call in the log file.


Sorry, there is no way to change the DOD behaviour on the server for running process instances.


Regards,


Ockert 

Badge +13

BTW this problem also exists in the Workspace. 

Smaller worklist is fine so definitely it's volumn related.   It might have less than 1,000 items.

Do you know if this issue continues with BP?

The data is not fetched when I am fetching each row but when it calls OpenWorklist?   There is some scalability issue here since potentially I could be processing 10,000 records of small data set and if it's relying on a fixed buffer size this would not work.

What's this magic buffer size limit on OpenWorklist?



oWorklist = oK2Connection.OpenWorklist(oWorklistCriteria) 

For Each oWorkListItem In oWorklist 

Reply