I have tested some of the other pragmas and none worked. After discussing with 
you now I come to the conclusion that the problem is caused more by my local 
setup. I had hoped to be able to avoid it, but I will now try to debug the 
database and find the error. If I find the error, I will report you.

However, I have one more question:
The embedded system has various storage media, with different read / write 
speeds.
A quick and dirty test shows that the outsourcing of the journal files on a 
faster medium may be a significant speed boost.
Is there a possibility to write journal(temporarly) (and later wal files when I 
found the error) files to another directory as the main database? 
(temp_store_directory is marked as deprecated, and thus seems to be no option).

Thansk a lot or your help


-----Original Message-----
From: sqlite-users-bounces at mailinglists.sqlite.org 
[mailto:sqlite-users-boun...@mailinglists.sqlite.org] On Behalf Of Richard Hipp
Sent: Montag, 20. April 2015 16:32
To: General Discussion of SQLite Database
Subject: Re: [sqlite] Problems with pragma journal_mode

If the compile-time options you have shown are complete, then the PRAGMA 
command ought to be working.  But clearly PRAGMA is not working.

Can you do an experimental build that omits all of your -DSQLITE options and 
see if "PRAGMA journal_mode;" and "PRAGMA compile_options;" work then?

What about other PRAGMAs, like "PRAGMA database_list;" and "PRAGMA 
table_info=TABLE;".  See the complete list at 
(https://www.sqlite.org/pragma.html#toc).  Are any pragmas working on your 
system?

On 4/20/15, Janke, Julian <julian.janke at capgemini.com> wrote:
> I'm pretty sure that they are completely. Later this discussion I 
> added
> -DSQLITE_DEFAULT_LOCKING_MODE=1
>
> There are only a few non-SQLite-specific options still available.
> Tell me if I'm wrong, but I do not think that are the cause of my problem.
>
> -mcpu=603e
> -fno-common
> -msdata=none
> -fno-jump-tables
> -fno-section-anchors
> -fno-merge-constants
> -fno-builtin
> -nostdlib
> -Werror-implicit-function-declaration
> -Wconversion
> -fstack-usage
> -std=c99
> -c
>
> -----Original Message-----
> From: sqlite-users-bounces at mailinglists.sqlite.org
> [mailto:sqlite-users-bounces at mailinglists.sqlite.org] On Behalf Of 
> Richard Hipp
> Sent: Montag, 20. April 2015 15:55
> To: General Discussion of SQLite Database
> Subject: Re: [sqlite] Problems with pragma journal_mode
>
> On 4/20/15, Janke, Julian <julian.janke at capgemini.com> wrote:
>>
>> PRAGMA compile_options; shows 0
>
> This makes me think that the list of compile-time options you showed 
> us earlier is incomplete:
>
> -DSQLITE_ENABLE_MEMSYS5
> -DSQLITE_ENABLE_8_3_NAMES=2
> -DSQLITE_THREADSAFE=0
> -DSQLITE_OS_OTHER=1
> -DSQLITE_ENABLE_API_ARMOR
> -DSQLITE_DEFAULT_MMAP_SIZE=0
> -DSQLITE_TEMP_STORE=0
> -DSQLITE_DEFAULT_CACHE_SIZE=500
>
> Please double-check to ensure that you do not have additional SQLITE 
> defines stuck in a configuration file someplace.
>
>>
>>
>> -----Original Message-----
>> From: sqlite-users-bounces at mailinglists.sqlite.org
>> [mailto:sqlite-users-bounces at mailinglists.sqlite.org] On Behalf Of 
>> Richard Hipp
>> Sent: Montag, 20. April 2015 12:18
>> To: General Discussion of SQLite Database
>> Subject: Re: [sqlite] Problems with pragma journal_mode
>>
>> On 4/20/15, Janke, Julian <julian.janke at capgemini.com> wrote:
>>> 'EXPLAIN PRAGMA journal_mode=WAL' returns 2 rows
>>>
>>> 0: 0 Init 0 0 0
>>> 1: 1 Halt 0 0 0
>>>
>>
>> You should get this:
>>
>> addr  opcode         p1    p2    p3    p4             p5  comment
>> ----  -------------  ----  ----  ----  -------------  --  -------------
>> 0     Init           0     0     0                    00
>> 1     JournalMode    0     1     5                    00
>> 2     ResultRow      1     1     0                    00
>> 3     Halt           0     0     0                    00
>>
>> What does: "PRAGMA compile_options;" and "SELECT sqlite_source_id();"
>> show?
>>
>>
>>
>>> Is it the result of what you expected?
>>>
>>> -----Original Message-----
>>> From: sqlite-users-bounces at mailinglists.sqlite.org
>>> [mailto:sqlite-users-bounces at mailinglists.sqlite.org] On Behalf Of 
>>> Richard Hipp
>>> Sent: Freitag, 17. April 2015 16:59
>>> To: General Discussion of SQLite Database
>>> Subject: Re: [sqlite] Problems with pragma journal_mode
>>>
>>> On 4/17/15, Janke, Julian <julian.janke at capgemini.com> wrote:
>>>> Hello,
>>>> Thanks for your reply.
>>>>
>>>> I changed my code again:
>>>>
>>>> 1) rc = sqlite3_open(dbPath, &db); --> SQLITE_OK
>>>> 2) rc = sqlite3_exec(db, "DROP TABLE IF EXISTS nosuchtable;", 
>>>> testCallbackPrint, 0, &zErrMsg);
>>>> 3) rc = sqlite3_prepare_v2(db, "PRAGMA journal_mode=WAL;", 24, 
>>>> &stmt, NULL);
>>>> --> SQLITE_OK
>>>> 4) rc = sqlite3_step(stmt); --> SQLITE_DONE
>>>
>>> I do not understand this.  "PRAGMA journal_mode" should always give 
>>> a return value, even when it fails.  sqlite3_step() should have 
>>> returned SQLITE_ROW.
>>>
>>> Please try instead, "EXPLAIN PRAGMA journal_mode=WAL".  Verify that 
>>> you get multiple rows of output in that case.
>>>
>>>
>>>> 5) rc = sqlite3_exec(db, "DROP TABLE IF EXISTS nosuchtable;", 
>>>> testCallbackPrint, 0, &zErrMsg);
>>>> 6) txt  = sqlite3_column_text (stmt, 0); --> returns an empty 
>>>> string
>>>> 7) rc = sqlite3_finalize(stmt); --> SQLITE_OK
>>>> 8) rc = sqlite3_close(db); --> SQLITE_OK
>>>>
>>>> Repeated the same steps with
>>>>
>>>> 3) rc = sqlite3_prepare_v2(db, "PRAGMA journal_mode;", 24, &stmt, 
>>>> NULL); --> SQLITE_OK
>>>>
>>>> To my knowledge, at line 4 SQLITE_ROW instead of SQLITE_DONE should 
>>>> be returned.
>>>>
>>>> "These routines may only be called when the most recent call to
>>>> sqlite3_step() has returned SQLITE_ROW and neither sqlite3_reset() 
>>>> nor
>>>> sqlite3_finalize() have been called subsequently."
>>>>
>>>> It looks as if all PRAGMA instructions are completely ignored, 
>>>> since the query for the status of the JOURNAL_MODE returns no result.
>>>>
>>>> Is it possible that I have turned off PRAMAs by anything or 
>>>> something is missing, so PRAMAs can run?
>>>>
>>>> Thanks for your help
>>>>
>>>>
>>>> -----Original Message-----
>>>> From: sqlite-users-bounces at mailinglists.sqlite.org
>>>> [mailto:sqlite-users-bounces at mailinglists.sqlite.org] On Behalf Of 
>>>> Simon Slavin
>>>> Sent: Donnerstag, 16. April 2015 17:56
>>>> To: General Discussion of SQLite Database
>>>> Subject: Re: [sqlite] Problems with pragma journal_mode
>>>>
>>>>
>>>> On 16 Apr 2015, at 2:33pm, Janke, Julian 
>>>> <julian.janke at capgemini.com>
>>>> wrote:
>>>>
>>>>> rc = sqlite3_step(stmt);
>>>>> --> returns SQLITE_DONE
>>>>
>>>> After the above two lines, print the value returned by
>>>>
>>>> sqlite3_column_text(stmt, 0)
>>>>
>>>> I'm not good at C off the top of my head but I think it's something 
>>>> like
>>>>
>>>> -----------------
>>>>
>>>> const unsigned char * theText;
>>>>
>>>> [...]
>>>>
>>>> rc = sqlite3_prepare_v2(db, "PRAGMA journal_mode=WAL;", 24, &stmt, 
>>>> NULL);
>>>>
>>>> rc = sqlite3_step(stmt);
>>>> theText  = sqlite3_column_text (stmt, 0); printf ("text returned:
>>>> %s", theText);
>>>>
>>>> rc = sqlite3_finalize(stmt);
>>>>
>>>> -----------------
>>>>
>>>> Hope if I got it wrong someone else will tell you.  By the way, you 
>>>> can also check the values returned from sqlite3_finalize() and
>>>> sqlite3_close() since they can tell you useful things if something 
>>>> went wrong.
>>>>
>>>> Simon.
>>>> _______________________________________________
>>>> sqlite-users mailing list
>>>> sqlite-users at mailinglists.sqlite.org
>>>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-user
>>>> s
>>>>
>>>> ________________________________
>>>>
>>>> Firma: Capgemini Deutschland GmbH
>>>> Aufsichtsratsvorsitzender: Antonio Schnieder ? Gesch?ftsf?hrer: Dr.
>>>> Michael Schulte (Sprecher) ? Jost F?rster ? Dr. Peter Lempp ? Dr.
>>>> Volkmar Varnhagen
>>>>
>>>> Amtsgericht Berlin-Charlottenburg, HRB 98814 This message contains 
>>>> information that may be privileged or confidential and is the 
>>>> property of the Capgemini Group. It is intended only for the person 
>>>> to whom it is addressed. If you are not the intended recipient, you 
>>>> are not authorized to read, print, retain, copy, disseminate, 
>>>> distribute, or use this message or any part thereof. If you receive 
>>>> this message in error, please notify the sender immediately and 
>>>> delete all copies of this message.
>>>> _______________________________________________
>>>> sqlite-users mailing list
>>>> sqlite-users at mailinglists.sqlite.org
>>>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-user
>>>> s
>>>>
>>>
>>>
>>> --
>>> D. Richard Hipp
>>> drh at sqlite.org
>>> _______________________________________________
>>> sqlite-users mailing list
>>> sqlite-users at mailinglists.sqlite.org
>>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>>> This message contains information that may be privileged or 
>>> confidential and is the property of the Capgemini Group. It is 
>>> intended only for the person to whom it is addressed. If you are not 
>>> the intended recipient, you are not authorized to read, print, 
>>> retain, copy, disseminate, distribute, or use this message or any 
>>> part thereof. If you receive this message in error, please notify 
>>> the sender immediately and delete all copies of this message.
>>> _______________________________________________
>>> sqlite-users mailing list
>>> sqlite-users at mailinglists.sqlite.org
>>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>>>
>>
>>
>> --
>> D. Richard Hipp
>> drh at sqlite.org
>> _______________________________________________
>> sqlite-users mailing list
>> sqlite-users at mailinglists.sqlite.org
>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>> This message contains information that may be privileged or 
>> confidential and is the property of the Capgemini Group. It is 
>> intended only for the person to whom it is addressed. If you are not 
>> the intended recipient, you are not authorized to read, print, 
>> retain, copy, disseminate, distribute, or use this message or any 
>> part thereof. If you receive this message in error, please notify the 
>> sender immediately and delete all copies of this message.
>> _______________________________________________
>> sqlite-users mailing list
>> sqlite-users at mailinglists.sqlite.org
>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>>
>
>
> --
> D. Richard Hipp
> drh at sqlite.org
> _______________________________________________
> sqlite-users mailing list
> sqlite-users at mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
> This message contains information that may be privileged or 
> confidential and is the property of the Capgemini Group. It is 
> intended only for the person to whom it is addressed. If you are not 
> the intended recipient, you are not authorized to read, print, retain, 
> copy, disseminate, distribute, or use this message or any part 
> thereof. If you receive this message in error, please notify the sender 
> immediately and delete all copies of this message.
> _______________________________________________
> sqlite-users mailing list
> sqlite-users at mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>


--
D. Richard Hipp
drh at sqlite.org
_______________________________________________
sqlite-users mailing list
sqlite-users at mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
This message contains information that may be privileged or confidential and is 
the property of the Capgemini Group. It is intended only for the person to whom 
it is addressed. If you are not the intended recipient, you are not authorized 
to read, print, retain, copy, disseminate, distribute, or use this message or 
any part thereof. If you receive this message in error, please notify the 
sender immediately and delete all copies of this message.

Reply via email to