Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 00C15200D5F for ; Mon, 4 Dec 2017 02:10:00 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id F3828160C1A; Mon, 4 Dec 2017 01:09:59 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 476EA160C0B for ; Mon, 4 Dec 2017 02:09:59 +0100 (CET) Received: (qmail 43011 invoked by uid 500); 4 Dec 2017 01:09:58 -0000 Mailing-List: contact reviews-help@aurora.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: reviews@aurora.apache.org Delivered-To: mailing list reviews@aurora.apache.org Received: (qmail 43000 invoked by uid 99); 4 Dec 2017 01:09:58 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 04 Dec 2017 01:09:58 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id 79F71C469E; Mon, 4 Dec 2017 01:09:57 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 3.24 X-Spam-Level: *** X-Spam-Status: No, score=3.24 tagged_above=-999 required=6.31 tests=[HTML_MESSAGE=2, KAM_LAZY_DOMAIN_SECURITY=1, KAM_LOTSOFHASH=0.25, T_RP_MATCHES_RCVD=-0.01] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id gtB8F98cbQw1; Mon, 4 Dec 2017 01:09:56 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTP id 8BC9E5F523; Mon, 4 Dec 2017 01:09:55 +0000 (UTC) Received: from reviews.apache.org (unknown [10.41.0.12]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id 2DCF8E0140; Mon, 4 Dec 2017 01:09:53 +0000 (UTC) Received: from reviews-vm2.apache.org (localhost [IPv6:::1]) by reviews.apache.org (ASF Mail Server at reviews-vm2.apache.org) with ESMTP id 5ABD7C400D3; Mon, 4 Dec 2017 01:09:53 +0000 (UTC) Content-Type: multipart/alternative; boundary="===============2883701885855392667==" MIME-Version: 1.0 Subject: Review Request 64288: Add a SQL persistence implementation From: Bill Farner To: David McLaughlin , Stephan Erb , Jordan Ly Cc: Bill Farner , Aurora Date: Mon, 04 Dec 2017 01:09:52 -0000 Message-ID: <20171204010952.20853.53261@reviews-vm2.apache.org> X-ReviewBoard-URL: https://reviews.apache.org/ Auto-Submitted: auto-generated Sender: Bill Farner X-ReviewGroup: Aurora X-Auto-Response-Suppress: DR, RN, OOF, AutoReply X-ReviewRequest-URL: https://reviews.apache.org/r/64288/ X-Sender: Bill Farner X-ReviewBoard-Diff-For: src/main/java/org/apache/aurora/scheduler/storage/sql/SqlPersistenceModule.java X-ReviewBoard-Diff-For: src/main/resources/org/apache/aurora/scheduler/storage/sql/schema.sql X-ReviewBoard-Diff-For: src/main/java/org/apache/aurora/scheduler/storage/sql/SqlPersistence.java X-ReviewBoard-Diff-For: src/test/java/org/apache/aurora/scheduler/storage/sql/SqlPersistenceTest.java Reply-To: Bill Farner X-ReviewRequest-Repository: aurora archived-at: Mon, 04 Dec 2017 01:10:00 -0000 --===============2883701885855392667== MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/64288/ ----------------------------------------------------------- Review request for Aurora, David McLaughlin, Jordan Ly, and Stephan Erb. Repository: aurora Description ------- Introduces a `Persistence` implementation that uses a SQL database via JDBC. I've opted to lean towards MySQL SQL dialect, as unfortunately there are vendor differences for even the very simple SQL used here. I chose [HikariCP](https://github.com/brettwooldridge/HikariCP) to serve as a `DataSource` (connection pool) implementation. We don't really need much out of a connection pool aside from general connection lifecycle management (i.e. not for concurrency). I chose this library based on recent development activity and several positive comparisons to other pools. Note that the implementation is not yet wired into the scheduler application. That will come in a follow-up. Diffs ----- build.gradle af119910e84c48f75f2573ababcfa287c3b986fc config/spotbugs/excludeFilter.xml 51790cce8d9047e40741f05ee55af15dbdc3065e src/main/java/org/apache/aurora/scheduler/storage/durability/DurableStorage.java 85b2113631586f43d854c4d2812f43b7b864d452 src/main/java/org/apache/aurora/scheduler/storage/durability/Persistence.java 9eb862c01bf451252bfbcc7a2eac60d2c965c9f0 src/main/java/org/apache/aurora/scheduler/storage/log/LogPersistence.java e70e6051582ca90ae72014626b983bbf4b8d5b48 src/main/java/org/apache/aurora/scheduler/storage/sql/SqlPersistence.java PRE-CREATION src/main/java/org/apache/aurora/scheduler/storage/sql/SqlPersistenceModule.java PRE-CREATION src/main/resources/org/apache/aurora/scheduler/storage/sql/schema.sql PRE-CREATION src/test/java/org/apache/aurora/scheduler/storage/sql/SqlPersistenceTest.java PRE-CREATION Diff: https://reviews.apache.org/r/64288/diff/1/ Testing ------- Thanks, Bill Farner --===============2883701885855392667==--