diff options
author | Diva Canto | 2015-06-04 06:58:07 -0700 |
---|---|---|
committer | Diva Canto | 2015-06-04 06:58:07 -0700 |
commit | ea5aa82c2c3368f942f5b58ba2e13ce9a2d2b582 (patch) | |
tree | 48fca79961c5ffbd15ef06afdbc2acce0b23f5bf /OpenSim/Services/Connectors/Inventory | |
parent | Mantis #7567: added an 8-sec expiring item cache to the inventory network con... (diff) | |
download | opensim-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.cs | 10 |
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) |