Return-Path: X-Original-To: apmail-jena-commits-archive@www.apache.org Delivered-To: apmail-jena-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 345341842A for ; Sun, 1 Nov 2015 20:44:09 +0000 (UTC) Received: (qmail 78004 invoked by uid 500); 1 Nov 2015 20:44:09 -0000 Delivered-To: apmail-jena-commits-archive@jena.apache.org Received: (qmail 77941 invoked by uid 500); 1 Nov 2015 20:44:09 -0000 Mailing-List: contact commits-help@jena.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@jena.apache.org Delivered-To: mailing list commits@jena.apache.org Received: (qmail 77931 invoked by uid 99); 1 Nov 2015 20:44:09 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 01 Nov 2015 20:44:09 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id ED5C3DFE16; Sun, 1 Nov 2015 20:44:08 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: andy@apache.org To: commits@jena.apache.org Date: Sun, 01 Nov 2015 20:44:09 -0000 Message-Id: <651cfe1c572247948a54bdddd5329a94@git.apache.org> In-Reply-To: References: X-Mailer: ASF-Git Admin Mailer Subject: [2/2] jena git commit: JENA-1059: Fine tune space allocation for lists. JENA-1059: Fine tune space allocation for lists. Project: http://git-wip-us.apache.org/repos/asf/jena/repo Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/364a9ddc Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/364a9ddc Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/364a9ddc Branch: refs/heads/master Commit: 364a9ddcd56757a181ef929d3d02937bda76baef Parents: 0433e9e Author: Andy Seaborne Authored: Sun Nov 1 17:11:36 2015 +0000 Committer: Andy Seaborne Committed: Sun Nov 1 17:11:36 2015 +0000 ---------------------------------------------------------------------- .../java/org/apache/jena/sparql/modify/UpdateEngineWorker.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/jena/blob/364a9ddc/jena-arq/src/main/java/org/apache/jena/sparql/modify/UpdateEngineWorker.java ---------------------------------------------------------------------- diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/modify/UpdateEngineWorker.java b/jena-arq/src/main/java/org/apache/jena/sparql/modify/UpdateEngineWorker.java index b70b9ea..7f8e853 100644 --- a/jena-arq/src/main/java/org/apache/jena/sparql/modify/UpdateEngineWorker.java +++ b/jena-arq/src/main/java/org/apache/jena/sparql/modify/UpdateEngineWorker.java @@ -506,6 +506,7 @@ public class UpdateEngineWorker implements UpdateVisitor return el ; } + // JENA-1059 // execDelete ; execInsert // Quads involving only IRIs and literals do not change from binding to // binding so any inserts, rather than repeatedly if they are going to be @@ -513,8 +514,11 @@ public class UpdateEngineWorker implements UpdateVisitor // instantiation to instantiation. private static Pair, List> split(List quads) { + // Guess size. + // Pre-size in case large (i.e. 10K+). List constQuads = new ArrayList<>(quads.size()) ; - List templateQuads = new ArrayList<>(quads.size()) ; + // ... in which case we assume the templated triples are small / non-existent. + List templateQuads = new ArrayList<>() ; quads.forEach((q)-> { if ( constQuad(q)) constQuads.add(q) ;