accumulo-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dave Marion (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (ACCUMULO-4329) TabletServer won't start if it cannot reserve replication port
Date Mon, 06 Jun 2016 20:12:21 GMT

    [ https://issues.apache.org/jira/browse/ACCUMULO-4329?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15317137#comment-15317137
] 

Dave Marion edited comment on ACCUMULO-4329 at 6/6/16 8:11 PM:
---------------------------------------------------------------

Let me walk you through what I am seeing, maybe its me. TabletServer has the following starting
at line 2284:

{noformat}
    ServerAddress sp = TServerUtils.startServer(this, clientAddress.getHostText(), Property.REPLICATION_RECEIPT_SERVICE_PORT,
processor,
        "ReplicationServicerHandler", "Replication Servicer", null, Property.REPLICATION_MIN_THREADS,
Property.REPLICATION_THREADCHECK, maxMessageSizeProperty);
{noformat}

TServerUtils.startServer is defined as:
{noformat}
  public static ServerAddress startServer(AccumuloServerContext service, String hostname,
Property portHintProperty, TProcessor processor, String serverName,
      String threadName, Property portSearchProperty, Property minThreadProperty, Property
timeBetweenThreadChecksProperty, Property maxMessageSizeProperty)
{noformat}

So, TServerUtils is expecting a property name for the port search property in the 7th argument.
In the code above for the TabletServer, the value `null` is being passed in the 7th argument
to the function. Inside of TServerUtils.startServer it uses the property like so:

{noformat}
    boolean portSearch = false;
    if (portSearchProperty != null)
      portSearch = config.getBoolean(portSearchProperty);
{noformat}


was (Author: dlmarion):
Let me walk you through what I am seeing, maybe its me. TabletServer has the following starting
at line 2284:

```
    ServerAddress sp = TServerUtils.startServer(this, clientAddress.getHostText(), Property.REPLICATION_RECEIPT_SERVICE_PORT,
processor,
        "ReplicationServicerHandler", "Replication Servicer", null, Property.REPLICATION_MIN_THREADS,
Property.REPLICATION_THREADCHECK, maxMessageSizeProperty);
```

TServerUtils.startServer is defined as:
```
  public static ServerAddress startServer(AccumuloServerContext service, String hostname,
Property portHintProperty, TProcessor processor, String serverName,
      String threadName, Property portSearchProperty, Property minThreadProperty, Property
timeBetweenThreadChecksProperty, Property maxMessageSizeProperty)
```

So, TServerUtils is expecting a property name for the port search property in the 7th argument.
In the code above for the TabletServer, the value `null` is being passed in the 7th argument
to the function. Inside of TServerUtils.startServer it uses the property like so:

```
    boolean portSearch = false;
    if (portSearchProperty != null)
      portSearch = config.getBoolean(portSearchProperty);
```

> TabletServer won't start if it cannot reserve replication port
> --------------------------------------------------------------
>
>                 Key: ACCUMULO-4329
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-4329
>             Project: Accumulo
>          Issue Type: Bug
>          Components: tserver
>    Affects Versions: 1.8.0
>            Reporter: Dave Marion
>
> TabletServer will not start if it cannot reserve the configured replication port. The
code passes `null` for enabling the port search feature, which resolves to `false`, and the
TServer fails.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message