From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: sqlite3 Date: Mon, 06 Dec 2021 08:34:15 -0500 Message-ID: References: <87tufmjyai.fsf@gnus.org> <875ys2lyt0.fsf@yahoo.com> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="30164"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) Cc: Po Lu , Lars Ingebrigtsen , emacs-devel@gnu.org To: Arthur Miller Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon Dec 06 14:38:56 2021 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1muECl-0007dv-M6 for ged-emacs-devel@m.gmane-mx.org; Mon, 06 Dec 2021 14:38:55 +0100 Original-Received: from localhost ([::1]:35204 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1muECk-0005Zn-6s for ged-emacs-devel@m.gmane-mx.org; Mon, 06 Dec 2021 08:38:54 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:36380) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1muE8e-0000lL-NL for emacs-devel@gnu.org; Mon, 06 Dec 2021 08:34:41 -0500 Original-Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:51115) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1muE8b-0001Oj-MD for emacs-devel@gnu.org; Mon, 06 Dec 2021 08:34:39 -0500 Original-Received: from pmg2.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 2F32A8043C; Mon, 6 Dec 2021 08:34:35 -0500 (EST) Original-Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg2.iro.umontreal.ca (Proxmox) with ESMTP id 6397980470; Mon, 6 Dec 2021 08:34:33 -0500 (EST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1638797673; bh=67Edv4Tzs+o069oC5CM0EPkbGXJj/idiOGxuUgAU0oE=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=E9Mx8lVCcE4nqPbxcCPgllGuz1t2Mwpr2vieIzUaRz/Tp/PgKWFl1RkFf5csVd5Mh lH0jwdu1wK8i/zxCpJq2HhHEpARWrv1CveD4yTvRhrnQqG9mqyTdICVbVARhSoGfpP 08npY5HvjfvwgHx++co9WAhJRDpWbK6YwTL1lDbank0sXh1Dzva3YzL5DSgweQ5yHp mDVYRYRjwbB4tNzdQJEpX/TDa253KIMqeHIOYYITVwJJr2Erki7CJUqIVW6Q0GIP9R V2tuOxzCq5TGBkkAsBJdI11QMdpULlXyboV5z0Uq56rDlwCKZX3U2AWb9Eht22uCXP Aqscjs+HgDD2A== Original-Received: from ceviche (unknown [216.154.30.173]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 1D6A8120513; Mon, 6 Dec 2021 08:34:33 -0500 (EST) In-Reply-To: (Arthur Miller's message of "Mon, 06 Dec 2021 13:36:08 +0100") Received-SPF: pass client-ip=132.204.25.50; envelope-from=monnier@iro.umontreal.ca; helo=mailscanner.iro.umontreal.ca X-Spam_score_int: -42 X-Spam_score: -4.3 X-Spam_bar: ---- X-Spam_report: (-4.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:281102 Archived-At: > I suggested hashmap serialzied to/from file. I used such approach myself for > key-value pairs. It worked fine for me, it was quite simple to read/write > it. Currently I am testing a thing, and I use just assoc list to read/write it > to a file, and it works fine for me too. The problem with this approach (which is the standard solution currently in ELisp) is that it works OK for simple cases but breaks down when: - there's a lot of data. - the data is modified by several Emacs sessions at the same time. This second case is what can happen with `ecomplete` or `savehist`. Stefan