Re: Sqlite error code 14 when using 3.31.0+

Daniel Polski <daniel-Ta3C11AxINqVtOl4/P/[email protected]> Tue, 10 Mar 2020 12:31:54 +0100
Newsgroups gmane.comp.db.sqlite.general
Message-ID <[email protected]>
Den 2020-03-10 kl. 02:33, skrev Rowan Worth:
> On Mon, 9 Mar 2020 at 23:22, Daniel Polski <[email protected]> wrote:
>
>> Updated to 3.31.1 but my application started spitting out an error when
>> opening the database, so I tested some earlier sqlite versions to figure
>> out when the problem starts.
>> I don't get the message in versions <= 3.30.1.
>>
>> (from the applications log)
>> SQLite Version: 3.31.0
>> INFO: Database opened: /tmp/database.sqlite
>> WARNING: SQLITE error code: 14 cannot open file at line 36982 of
>> [3bfa9cc97d]
>> WARNING: SQLITE error code: 14 os_unix.c:36982: (40) openDirectory(/tmp) -
>>
> errno 40 is ELOOP, "Too many symbolic links encountered". open(2) says:
>
>         ELOOP  Too many symbolic links were encountered in resolving
>   pathname,  or  O_NOFOLLOW  was
>                specified but pathname was a symbolic link.
>
> Is your /tmp/ a symlink? Sqlite seems to use O_NOFOLLOW unconditionally in
> openDirectory() since this checkin:
>
> https://www.sqlite.org/src/info/6a64fb6a2da6c98f

/tmp/ is a directly mounted ramdisk.

> Probably a bug? The changelog for sqlite 3.31.0 include this which is
> likely related:
>
> - * Add the SQLITE_OPEN_NOFOLLOW
> <https://www.sqlite.org/c3ref/open.html#opennofollow> option to
> sqlite3_open_v2() <https://www.sqlite.org/c3ref/open.html> that prevents
> SQLite from opening symbolic links.
>
Ok.
_______________________________________________
sqlite-users mailing list
[email protected]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users