manifoldcf-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Karl Wright <daddy...@gmail.com>
Subject Re: custom jcifs properties
Date Mon, 25 Feb 2019 20:05:57 GMT
Hi Cihad,

I am usually not fond of solutions where all connections of a given type
are affected by a single environment change.  In this case, there is no
good way to make the change connection-specific.

I would insist, though, that any change to the functioning of the system be
backwards-compatible.  That means that even if there are no changes to
start-options.env, the default behavior is still as it was.  I can think of
a way to do that: basically, in the static block, you should check to see
if the property is already set before setting it (if it isn't).

Karl


On Mon, Feb 25, 2019 at 2:49 PM Cihad Guzel <cguzelg@gmail.com> wrote:

> Hi Karl,
>
> In some cases, "jcifs" is running slowly. In order to solve this problem,
> we need to set custom some properties.
>
> For example; my problem was in my test environment: I have a windows
> server and an ubuntu server in same network in AWS EC2 Service. The windows
> server has Active Directory service, DNS Server and shared folder while the
> ubuntu server has some instance such as manifoldcf, an db instance and
> solr.
>
> If the DNS settings are not defined on the ubuntu server, jcifs runs
> slowly. Because the default resolver order is set as 'LMHOSTS,DNS,WINS'. It
> means[1]; firstly "jcifs" checks '/etc/hosts' files for linux/unix
> server'', then it checks the DNS server. In my opinion, the linux server
> doesn't recognize the DNS server and threads are waiting for every file for
> access to read.
>
> I suppose, WINS is used when accessing hosts on different subnets. So, I
> have set "jcifs.resolveOrder = WINS" and my problem has been FIXED.
>
> I suppose, WINS is used when accessing hosts on different subnets.
>
> Another suggestion for similar problem from another example[2]:
> "-Djcifs.resolveOrder = DNS"
>
> Finally; I suggest these changes:
>
> Remove the line
> (System.setProperty("jcifs.resolveOrder","LMHOSTS,DNS,WINS"); )  from
> SharedDriveConnector.java
>
> Add "-Djcifs.resolveOrder = LMHOSTS,DNS,WINS" to "start-options.env" file.
>
> If you have been convinced about this, I can create a PR.
>
> [1] https://www.jcifs.org/src/docs/resolver.html
> [2] https://stackoverflow.com/a/18837754
>
> Regards,
> Cihad Guzel
>
> Karl Wright <daddywri@gmail.com>, 24 Şub 2019 Paz, 19:20 tarihinde şunu
> yazdı:
>
>> These settings were provided by the developer of jcifs, Michael Allen.
>> You have to really understand the protocol well before you should consider
>> changing them in any way.
>>
>> Thanks,
>> Karl
>>
>>
>> On Sun, Feb 24, 2019 at 9:53 AM Cihad Guzel <cguzelg@gmail.com> wrote:
>>
>>> Hi,
>>>
>>> SharedDriveConnector have some hardcoded system properties as follow:
>>>
>>> static
>>> {
>>>   System.setProperty("jcifs.smb.client.soTimeout","150000");
>>>   System.setProperty("jcifs.smb.client.responseTimeout","120000");
>>>   System.setProperty("jcifs.resolveOrder","LMHOSTS,DNS,WINS");
>>>   System.setProperty("jcifs.smb.client.listCount","20");
>>>   System.setProperty("jcifs.smb.client.dfs.strictView","true");
>>> }
>>>
>>> How can I override them when to start manifoldcf?
>>>
>>> It may be better to define these settings in the start-options.env file.
>>>
>>> Regards,
>>> Cihad Guzel
>>>
>>

Mime
View raw message