> On 04/03/2015 10:16 PM, Artem wrote:
>> Hi!
>>
>> The situation is like that. There?s a SQLite database with around 3 billion 
>> records. Each record consists of a certain CHAR field and several other 
>> additional fields with different types. The file size is approx. 340 gb. The 
>> maximum content length in the doc field is 256 symbols, the content is in 
>> Russian.
>>
>> I?m trying to create a full-text index, but it results in a Segmentation 
>> Fault error. I?ve been trying to create it in different possible ways, both 
>> under Windows (with SQLite Expert and my own .NET software, including one 
>> with x64 architecture) and Linux (both Ubuntu and Centos). I?ve even 
>> compiled sqlite from the sources, having included necessary flags for FTS3 
>> and FTS4, but every time I get one and the same error.

> This does sound like a real problem, but one that might be difficult to
> track down.

> Are you able to get us a stack trace of the crash? Ideally one from a 
> build with compiler options "-g -DSQLITE_DEBUG" set.

> Thanks,
> Dan.

Hi, Dan. Now I can't to do this because I haven't Linux on my PC.
But I tried to create FTS table again (now it was another database with
1 350 000 000 rows, smaller than before). And I got the same error
(out of memory) on function:

internal override SQLiteErrorCode Reset(SQLiteStatement stmt)

in file SQLite3.cs

It returns System.Data.SQLite.SQLiteErrorCode.NoMem.
I home it helps.

P.S.  It  is  latest  version  of SQLite.Net compiled in Visual Studio
2012.

>>
>> I?ve tried two options:
>> - creating a contentless FTS4, when content is stored in a regular table, 
>> and FTS-table contains only index (create virtual table docs_fts using 
>> fts4(content='docs'... )
>> - creating a full-fledged FTS table from a regular one (insert into docs_fts 
>> select doc... from docs;)
>>
>> SQLite is functioning for about 4 hours, after which Segmentation Fault 
>> error occurs inevitably.
>> There?re no NULL fields in the database.
>>
>> I?ve worked with 3 different SQLite versions, including the latest one, 
>> available on the website. I started trying to create the full-text index of 
>> the base shortly after it was created and filled; no other activity, apart 
>> from filling the base with data, was conveyed. It has only one docs table, 
>> that for sure doesn?t contain any NULL values.
>> I also had an idea that Reindex and Vacuum might have done something wrong, 
>> however Reindex happens instantly and Vacuum works rather slowly, but 
>> successfully.
>>
>> In short, my actions are:
>>
>> CREATE TABLE docs ([id] INTEGER PRIMARY KEY AUTOINCREMENT, [doc] CHAR... 
>> (other fields here)
>> (here?s the process of filling the base with the data, which are downloaded 
>> by means of my own script from text files.)
>>
>> CREATE VIRTUAL TABLE docs_fts using fts4 (content='docs', doc... (other 
>> fields here)
>> (here?s an attempt of INSERT INTO docs_fts(docs_fts) VALUES ('rebuild') to 
>> rebuild contentless FTS index)
>>
>> or
>>
>> CREATE VIRTUAL TABLE docs_fts using fts4 (doc... (other fields here)
>> (here?s an attempt of INSERT INTO docs_fts SELECT doc... from docs;)
>>
>> or
>>
>> CREATE VIRTUAL TABLE docs_fts using fts3 (doc... (other fields here)
>> (here?s an attempt of INSERT INTO docs_fts SELECT doc... from docs;)
>>
>> For each attempt I?ve been making a new copy of the source file, because I 
>> suspected that the base could have got broken after Segmentation Fault. I 
>> even changed the ram-cards, in case if memory was the problem.
>>
>> But every time I get one and the same result - Segmentation Fault error.
>>
>> So, can you please pay your attention to this problem and fix it ASAP?
>>
>> I can send you a file if you need.
>>
>> Thank you.
>>
>> _______________________________________________
>> sqlite-users mailing list
>> sqlite-users at mailinglists.sqlite.org
>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

> _______________________________________________
> sqlite-users mailing list
> sqlite-users at mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to