I opened https://issues.apache.org/jira/browse/JENA-528 for this. Please add comments there, vote it up and perhaps watch it.
Claude On Wed, Sep 4, 2013 at 1:32 AM, Holger Knublauch <[email protected]>wrote: > On 9/4/2013 3:15, Claude Warren wrote: > >> As I recall the discuss around this topic dealt with the idea that you >> could add each triple inside a transaction and when the transaction >> committed transaction code would do the bulk update if supported. >> > > If this were the case, then the code in the GraphUtil helper functions > should probably wrap the individual performUpdate calls with a transaction, > but they don't. > > > However >> I may be way off base here. I have no objection to retaining the BUH. >> > > I would greatly appreciate seeing this resolved before the final release. > As suggested earlier, we could gain time for a proper redesign by avoiding > the calls to the GraphUtil replacement functions, or changing those > functions so that they call graph.getBulkUpdateHandler() for the time > being, and possibly undeprecate BUH for now. > > Thanks, > Holger > > > >> Claude >> >> >> On Tue, Sep 3, 2013 at 12:17 AM, Holger Knublauch <[email protected] >> >wrote: >> >> Hi group, >>> >>> I did not see any response to my question below, which is usual for this >>> list where responses are usually fast and competent. As this is quite a >>> crucial issue for our upgrade right now, I would like to ask again, and >>> rephrase my question. I understand SDB is rather unsupported, but the >>> issue >>> is really a question on the core API. >>> >>> Deprecating the BulkUpdateHandler will not only affect SDB but any other >>> database such as Oracle RDF (the Jena adapter of which implements its own >>> BUH right now). Granted, the class is not gone yet, but some existing API >>> calls (Model.add) already bypass the BulkUpdateHandler, and I believe >>> this >>> was premature (revision 1419595). My suggestion is to continue to >>> delegate >>> Model.add through the BulkUpdateHandler for the upcoming release until >>> the >>> interface has been truly removed/replaced with something else. BUH does >>> not >>> represent much implementation overhead for Graph implementers, because >>> they >>> can simply use the default implementation. The current implementation is >>> too inefficient for our product. >>> >>> If there is a cleaner mechanism to get the same performance, then I'd be >>> happy to hear about it. >>> >>> Thanks >>> Holger >>> >>> >>> >>> On 8/29/2013 9:39, Holger Knublauch wrote: >>> >>> SDB currently implements its own BulkUpdateHandler, and I just made some >>>> tests that indicate that it is significantly faster than using >>>> GraphUtil.add (2 seconds versus 40 seconds for 10k triples). Now that >>>> BulkUpdateHandler has been deprecated, and Model.add is already using >>>> GraphUtil.add, what call sequence are we supposed to use to retain the >>>> good >>>> performance of the BulkUpdateHandler? Could a method >>>> Graph.add(Iterable<Triple>) be added to allow graphs to optimize the >>>> behavior for specific Graph types? >>>> >>>> Thanks >>>> Holger >>>> >>>> >>>> >> > -- I like: Like Like - The likeliest place on the web<http://like-like.xenei.com> LinkedIn: http://www.linkedin.com/in/claudewarren
