Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kGHlR-00023P-Dr for pgsql-hackers@arkaria.postgresql.org; Thu, 10 Sep 2020 08:17:05 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1kGHlQ-000727-B2 for pgsql-hackers@arkaria.postgresql.org; Thu, 10 Sep 2020 08:17:04 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kGHlQ-00071z-4L for pgsql-hackers@lists.postgresql.org; Thu, 10 Sep 2020 08:17:04 +0000 Received: from oss.nttdata.com ([49.212.34.109]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kGHlM-00050t-7M for pgsql-hackers@postgresql.org; Thu, 10 Sep 2020 08:17:03 +0000 Received: from hnk.local (sp49-98-213-36.msd.spmode.ne.jp [49.98.213.36]) by oss.nttdata.com (Postfix) with ESMTPSA id 7BCE8601C0; Thu, 10 Sep 2020 17:16:55 +0900 (JST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.102.3 at oss.nttdata.com Subject: Re: Global snapshots To: "tsunakawa.takay@fujitsu.com" , "'Andrey V. Lepikhov'" , "movead.li@highgo.ca" Cc: 'Amit Kapila' , Masahiko Sawada , PostgreSQL-Dev References: <07b2c899-4ed0-4c87-1327-23c750311248@postgrespro.ru> <806c3708-26ea-b94d-87b1-d48e41e93726@postgrespro.ru> From: Fujii Masao Message-ID: Date: Thu, 10 Sep 2020 17:16:53 +0900 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:68.0) Gecko/20100101 Thunderbird/68.12.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk On 2020/09/10 10:38, tsunakawa.takay@fujitsu.com wrote: > Hi Andrey san, > > From: Andrey V. Lepikhov > > From: tsunakawa.takay@fujitsu.com >>>> While Clock-SI seems to be considered the best promising for global >>>>>> Could you take a look at this patent? I'm afraid this is the Clock-SI for MVCC. >> Microsoft holds this until 2031. I couldn't find this with the keyword >> "Clock-SI."" >>> >>> >>> US8356007B2 - Distributed transaction management for database systems >> with multiversioning - Google Patents >>> https://patents.google.com/patent/US8356007 >>> >>> >>> If it is, can we circumvent this patent? >>>> >> Thank you for the research (and previous links too). >> I haven't seen this patent before. This should be carefully studied. > > I wanted to ask about this after I've published the revised scale-out design wiki, but I'm taking too long, so could you share your study results? I think we need to make it clear about the patent before discussing the code. Yes. But I'm concerned about that it's really hard to say there is no patent risk around that. I'm not sure who can judge there is no patent risk, in the community. Maybe no one? Anyway, I was thinking that Google Spanner, YugabyteDB, etc use the global transaction approach based on the clock similar to Clock-SI. Since I've never heard they have the patent issues, I was just thinking Clock-SI doesn't have. No? This type of *guess* is not safe, though... > After we hear your opinion, we also have to check to see if Clock-SI is patented or avoid it by modifying part of the algorithm. Just in case we cannot use it, we have to proceed with thinking about alternatives. One alternative is to add only hooks into PostgreSQL core so that we can implement the global transaction management outside. This idea was discussed before as the title "eXtensible Transaction Manager API". Regards, -- Fujii Masao Advanced Computing Technology Center Research and Development Headquarters NTT DATA CORPORATION