[1.9.8 bug?] Orphaned Text lines

erne ernestogiannotta at tiscalinet.it
Tue Aug 12 17:59:21 CDT 2003


On Martedì, ago 12, 2003, at 17:08 Europe/Rome, Francois Van Lerberghe 
wrote:

> le 12-08-03 12:45, erne <ernestogiannotta at tiscalinet.it> a écrit :
>
>> You mean update record or add record failure after having written data
>> to Blob field?
>>
>> Yes, this is known issue
>> Valentina allocates segments to write those data in the Blob file
>> but forgets to free them up in case of Update/Add failure
>> or of course in case a crash occurs before issuing Update/Add 
>> commands.
>
> This is during an add command that seems to work well (no database 
> error)
> The (simplified) code is
>
>   myCursor.myVTextField.SetBlank
>   if lenB(theString) > 0 then
>     if existingRecord() then              // False if Adding a new 
> record
>       myCursor.myVTextField.DeleteData

why you do this?
data should be replaced anyway by theString
BTW a myCursor.Update seems appropriate here

>     end if
>     myCursor.myVTextField.value = theString
>   end if
>

in some similar code I do next

   if lenB(theString) > 0 then
    myCursor.myVTextField.value = theString
   else
     if not myCursor.myVTextField.isNull then  // DeleteData if 
theString empty
        myCursor.myVTextField.DeleteData
     end if
   end if


>   ---------
>
>   ok = myCursor.Add
>   app.myDatabase.Flush
>
> After that, I have an orphan segment.
>

and ok = true?

is myCursor selected with proper new flags(kV_Client, kV_NoLocks, 
kV_Random)?

if yes we may have a hard to reproduce problem here


Cool Runnings,
Erne.

|er| musical box
|ne| a media store



More information about the Valentina mailing list