aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Services/Connectors/Inventory
diff options
context:
space:
mode:
authorDiva Canto2015-06-04 06:58:07 -0700
committerDiva Canto2015-06-04 06:58:07 -0700
commitea5aa82c2c3368f942f5b58ba2e13ce9a2d2b582 (patch)
tree48fca79961c5ffbd15ef06afdbc2acce0b23f5bf /OpenSim/Services/Connectors/Inventory
parentMantis #7567: added an 8-sec expiring item cache to the inventory network con... (diff)
downloadopensim-SC_OLD-ea5aa82c2c3368f942f5b58ba2e13ce9a2d2b582.zip
opensim-SC_OLD-ea5aa82c2c3368f942f5b58ba2e13ce9a2d2b582.tar.gz
opensim-SC_OLD-ea5aa82c2c3368f942f5b58ba2e13ce9a2d2b582.tar.bz2
opensim-SC_OLD-ea5aa82c2c3368f942f5b58ba2e13ce9a2d2b582.tar.xz
Mantis #7567. Once again, avoiding prefetching linked items within linked folders. Also fixing the inventory connector GetMultipleItems, so that if everything is in the cache, it returns successfully rather than unsuccessfully.
Diffstat (limited to 'OpenSim/Services/Connectors/Inventory')
-rw-r--r--OpenSim/Services/Connectors/Inventory/XInventoryServicesConnector.cs10
1 files changed, 9 insertions, 1 deletions
diff --git a/OpenSim/Services/Connectors/Inventory/XInventoryServicesConnector.cs b/OpenSim/Services/Connectors/Inventory/XInventoryServicesConnector.cs
index b123e9d..33ec485 100644
--- a/OpenSim/Services/Connectors/Inventory/XInventoryServicesConnector.cs
+++ b/OpenSim/Services/Connectors/Inventory/XInventoryServicesConnector.cs
@@ -555,6 +555,9 @@ namespace OpenSim.Services.Connectors
555 pending.Add(id); 555 pending.Add(id);
556 } 556 }
557 557
558 if (pending.Count == 0) // we're done, everything was in the cache
559 return itemArr;
560
558 try 561 try
559 { 562 {
560 Dictionary<string, object> resultSet = MakeRequest("GETMULTIPLEITEMS", 563 Dictionary<string, object> resultSet = MakeRequest("GETMULTIPLEITEMS",
@@ -565,7 +568,12 @@ namespace OpenSim.Services.Connectors
565 }); 568 });
566 569
567 if (!CheckReturn(resultSet)) 570 if (!CheckReturn(resultSet))
568 return null; 571 {
572 if (i == 0)
573 return null;
574 else
575 return itemArr;
576 }
569 577
570 // carry over index i where we left above 578 // carry over index i where we left above
571 foreach (KeyValuePair<string, object> kvp in resultSet) 579 foreach (KeyValuePair<string, object> kvp in resultSet)