You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ode.apache.org by "Alex Boisvert (JIRA)" <ji...@apache.org> on 2007/03/16 18:17:09 UTC

[jira] Updated: (ODE-100) ProcessMutex needs to release its socket more quickly

     [ https://issues.apache.org/jira/browse/ODE-100?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alex Boisvert updated ODE-100:
------------------------------

    Attachment: GUID.java

I've been using the attached GUID class for some time now.  It leverages the JDK 5.0 GUID class and uses a thread local counter to eliminate contention.  This results in improved performance at the cost of slightly longer GUID's.

> ProcessMutex needs to release its socket more quickly
> -----------------------------------------------------
>
>                 Key: ODE-100
>                 URL: https://issues.apache.org/jira/browse/ODE-100
>             Project: Ode
>          Issue Type: Improvement
>    Affects Versions: incubator-1
>            Reporter: Dan Kearns
>         Assigned To: Matthieu Riou
>             Fix For: incubator-1
>
>         Attachments: GUID.java
>
>
> On startup, Ode creates a GUID generator. The GUID generator uses posession of a socket at a particular time as a mutex to guarantee the time seed. However, it is using the default socket options to do this, which prevents rapid multiple spinup and/or restart of the processes embedding Ode as the socket is stuck in TIME_WAIT by the operating system.
> Fix: in ProcessMutex.java:lock(), swap:
>           ss = new ServerSocket(port);
> for 
>           ss = new ServerSocket();
>           ss.setReuseAddress(true);
>           ss.bind(new InetSocketAddress(port));

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.