lucenenet-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nicholas Paldino [.NET/C# MVP]" <casper...@caspershouse.com>
Subject RE: [jira] Commented: (LUCENENET-216) FSDirectory.Sync Fix to Ensure Flush to Disk
Date Tue, 10 Nov 2009 15:59:58 GMT
	I disagree, since compile time switches seem to be unfavorable
moving forward (based on the comments), the alternative that would satisfy
both concerns is to have a setting which indicates the Type which implements
an interface which will perform the flush on a FileStream instance.  If the
setting is null, have a default implementation which resorts to the native
API call.

	Then the Mono crowd can then write their own hook for this
functionality and set the setting in the config file.

		- nick

-----Original Message-----
From: Sean Carpenter [mailto:stcarpenter@gmail.com] 
Sent: Tuesday, November 10, 2009 10:27 AM
To: lucene-net-dev@incubator.apache.org
Subject: Re: [jira] Commented: (LUCENENET-216) FSDirectory.Sync Fix to
Ensure Flush to Disk

I think conditional compilation will be the solution for anything that
requires P/Invokes (at least for now).

Sean Carpenter

On Tue, Nov 10, 2009 at 10:07 AM, Ben Martz <benmartz@gmail.com> wrote:
> P/invokes are unsupported in mono because the target platform dll only
> exists on Windows so there's nothing to thunk to on Linux, Mac OS X and
the
> iPhone OS. :(
>
> Sent from my iPhone
>
> On Nov 10, 2009, at 5:11, "George Aroush" <george@aroush.net> wrote:
>
>> This is good to know.  How about code like this:
>>
>>   [System.Runtime.InteropServices.DllImport("kernel32")]
>>   public static extern int
>> FlushFileBuffers(Microsoft.Win32.SafeHandles.SafeFileHandle
>> SafeFileHandle);
>>
>> Will this work with Mono?
>>
>> -- George
>>
>> -----Original Message-----
>> From: Sean Carpenter [mailto:stcarpenter@gmail.com]
>> Sent: Tuesday, November 10, 2009 7:26 AM
>> To: lucene-net-dev@incubator.apache.org
>> Subject: Re: [jira] Commented: (LUCENENET-216) FSDirectory.Sync Fix to
>> Ensure Flush to Disk
>>
>> I've done some work with Lucene.Net on Mono, so keeping it running
>> there is important to me.  As for issues related to the future move to
>> .Net 3.5, Mono has support for 3.5 including LINQ, so that shouldn't
>> be a concern.  The P/Invokes are the biggest concern to me.
>>
>> Sean Carpenter
>>
>> On Tue, Nov 10, 2009 at 12:44 AM, Michael Garski (JIRA) <jira@apache.org>
>> wrote:
>>>
>>>   [
>>
>>
>>
https://issues.apache.org/jira/browse/LUCENENET-216?page=com.atlassian.jira.
>>
>>
plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12775305#acti
>> on_12775305 ]
>>>
>>> Michael Garski commented on LUCENENET-216:
>>> ------------------------------------------
>>>
>>> Sounds like a good course of action for now.  Hopefully some of the Mono
>>
>> Lucene.Net users will see this thread and chime in.
>>>
>>> I'll create a new patch with conditional compilation and with Nick's
>>
>> suggestion on the mailing list earlier regarding security.
>>>
>>>> FSDirectory.Sync Fix to Ensure Flush to Disk
>>>> --------------------------------------------
>>>>
>>>>                Key: LUCENENET-216
>>>>                URL: https://issues.apache.org/jira/browse/LUCENENET-216
>>>>            Project: Lucene.Net
>>>>         Issue Type: Bug
>>>>           Reporter: Michael Garski
>>>>        Attachments: FSDirectory.Sync.patch
>>>>
>>>>
>>>> DIGY and Doug discussed this issue during the 2.9 port, and this is a
>>
>> patch to give 2.9 the expected behavior of actually ensuring the OS
>> flushes
>> it's buffers to disk.  DIGY suggested using the kernel32 method
>> FlushFileBuffers, and after investigation he was correct!
>>  FileStream.Flush
>> doesn't do that - the OS could still be caching it.
>>>
>>> --
>>> This message is automatically generated by JIRA.
>>> -
>>> You can reply to this email to add a comment to the issue online.
>>>
>>>
>>
>

Mime
View raw message