[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: emacsql-mysql - best way to close connection?
From: |
Guido Van Hoecke |
Subject: |
Re: emacsql-mysql - best way to close connection? |
Date: |
Sat, 1 Apr 2017 11:54:10 +0200 |
Hi,
On 1 April 2017 at 09:14, Guido Van Hoecke <guivho@gmail.com> wrote:
> Hi,
>
> I create a mysql connection in a let* form:
>
> (let* ((host "mysql.host.com")
> (dummy (netrc-credentials host)) ;; needed to define remaining
> netrc stuff
> (info (netrc-machine (netrc-parse (expand-file-name "~/.netrc"))
> host))
> (id (cdr (assoc "login" info)))
> (pw (cdr (assoc "password" info)))
> (db (emacsql-mysql "database" :user id :password pw :host host)))
> ....)
>
> Somehow I hoped that the connection would go away when the let* form
> finishes but the connection does survive. The documentation at
> [[https://github.com/skeeto/emacsql][EmacSQL]] does mention: 'It works
> by maintaining a inferior process running (a "connection") for
> interacting with the back-end database. Connections are automatically
> cleaned up if they are garbage collected. All requests are synchronous.'
>
> Each time the form is executed, a new connection is created. Typically
> this happens once a day, but by the end of the week it accumulates 7
> open connections :(
>
> There's probably a better way to create and close connections, but up to
> now I have not been able to find relevant documentation.
>
I added (delete-process "emacsql-mysql") as last elisp form of the let*
form. This does kill the process. Still I wonder if this is the way to go?
--
Guido
I fell asleep reading a dull book, and I dreamt that I was reading on,
so I woke up from sheer boredom.