You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "James Kennedy (JIRA)" <ji...@apache.org> on 2011/01/22 02:08:43 UTC

[jira] Created: (HBASE-3464) dns.interface property causes malformed parsing for 'lo'

dns.interface property causes malformed parsing for 'lo'
--------------------------------------------------------

                 Key: HBASE-3464
                 URL: https://issues.apache.org/jira/browse/HBASE-3464
             Project: HBase
          Issue Type: Bug
          Components: master, regionserver
         Environment: An EC2 M.small node running Ubuntu 9.  HDFS + HBASE 0.90.0 running in a single JVM.
            Reporter: James Kennedy
             Fix For: 0.90.1


I have a seed application that is executed via maven and runs a
single JVM ApplicationStarter that starts up hdfs, regionserver, hmaster
threads. It does some seeding then shuts those down in reverse order.
So this isn't a typical way of running hbase to be sure. However it has
always worked until I upgraded to HBase 0.90.0.

I didn't notice it when I was originally testing 0.90.0 because it only
seems to be happening on our EC2.small build server node when I run this
particular seeder.

Running the same thing locally on my mac works.

Attached is the error output starting from when the HRegionServer.stop() is
called to when HMaster.shutdown() is called and it starts looping forever in
letRegionServersShutdown().

It looks like RegionServerTracker is getting to "RegionServer ephemeral node
deleted, processing expiration" but then because it can't get the
HServerInfo it doesn't follow-through with actually expiring it.

The reason it can't get the HServerInfo is because it is looking for "localhost." instead of "localhost".

My /etc/hosts file was vanilla. But when I removed the following form hbase-site.xml:

<property>
       <name>hbase.master.dns.interface</name>
       <value>lo</value>
</property>
<property>
      <name>hbase.regionserver.dns.interface</name>
      <value>lo</value>
</property>

The issue went away.

So something about the "lo" interface isn't getting parsed right on that particular machine (An EC2 M.small running Ubuntu 9).

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


[jira] Updated: (HBASE-3464) dns.interface property causes malformed parsing for 'lo'

Posted by "James Kennedy (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HBASE-3464?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

James Kennedy updated HBASE-3464:
---------------------------------

    Environment: An EC2 m1.large node running Ubuntu 9.  HDFS + HBASE 0.90.0 running in a single JVM.  (was: An EC2 M.small node running Ubuntu 9.  HDFS + HBASE 0.90.0 running in a single JVM.)

Correction the box is an m1.large

> dns.interface property causes malformed parsing for 'lo'
> --------------------------------------------------------
>
>                 Key: HBASE-3464
>                 URL: https://issues.apache.org/jira/browse/HBASE-3464
>             Project: HBase
>          Issue Type: Bug
>          Components: master, regionserver
>         Environment: An EC2 m1.large node running Ubuntu 9.  HDFS + HBASE 0.90.0 running in a single JVM.
>            Reporter: James Kennedy
>             Fix For: 0.90.1
>
>
> I have a seed application that is executed via maven and runs a
> single JVM ApplicationStarter that starts up hdfs, regionserver, hmaster
> threads. It does some seeding then shuts those down in reverse order.
> So this isn't a typical way of running hbase to be sure. However it has
> always worked until I upgraded to HBase 0.90.0.
> I didn't notice it when I was originally testing 0.90.0 because it only
> seems to be happening on our EC2.small build server node when I run this
> particular seeder.
> Running the same thing locally on my mac works.
> Attached is the error output starting from when the HRegionServer.stop() is
> called to when HMaster.shutdown() is called and it starts looping forever in
> letRegionServersShutdown().
> It looks like RegionServerTracker is getting to "RegionServer ephemeral node
> deleted, processing expiration" but then because it can't get the
> HServerInfo it doesn't follow-through with actually expiring it.
> The reason it can't get the HServerInfo is because it is looking for "localhost." instead of "localhost".
> My /etc/hosts file was vanilla. But when I removed the following form hbase-site.xml:
> <property>
>        <name>hbase.master.dns.interface</name>
>        <value>lo</value>
> </property>
> <property>
>       <name>hbase.regionserver.dns.interface</name>
>       <value>lo</value>
> </property>
> The issue went away.
> So something about the "lo" interface isn't getting parsed right on that particular machine (An EC2 M.small running Ubuntu 9).

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


[jira] Commented: (HBASE-3464) dns.interface property causes malformed parsing for 'lo'

Posted by "stack (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-3464?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12992077#comment-12992077 ] 

stack commented on HBASE-3464:
------------------------------

Thanks for filing the issue James.  This is an interesting one.  Seems related to hbase-3431 where we do resolve on both master and regionserver and the two can disagree?

> dns.interface property causes malformed parsing for 'lo'
> --------------------------------------------------------
>
>                 Key: HBASE-3464
>                 URL: https://issues.apache.org/jira/browse/HBASE-3464
>             Project: HBase
>          Issue Type: Bug
>          Components: master, regionserver
>         Environment: An EC2 m1.large node running Ubuntu 9.  HDFS + HBASE 0.90.0 running in a single JVM.
>            Reporter: James Kennedy
>             Fix For: 0.90.1
>
>
> I have a seed application that is executed via maven and runs a
> single JVM ApplicationStarter that starts up hdfs, regionserver, hmaster
> threads. It does some seeding then shuts those down in reverse order.
> So this isn't a typical way of running hbase to be sure. However it has
> always worked until I upgraded to HBase 0.90.0.
> I didn't notice it when I was originally testing 0.90.0 because it only
> seems to be happening on our EC2.small build server node when I run this
> particular seeder.
> Running the same thing locally on my mac works.
> Attached is the error output starting from when the HRegionServer.stop() is
> called to when HMaster.shutdown() is called and it starts looping forever in
> letRegionServersShutdown().
> It looks like RegionServerTracker is getting to "RegionServer ephemeral node
> deleted, processing expiration" but then because it can't get the
> HServerInfo it doesn't follow-through with actually expiring it.
> The reason it can't get the HServerInfo is because it is looking for "localhost." instead of "localhost".
> My /etc/hosts file was vanilla. But when I removed the following form hbase-site.xml:
> <property>
>        <name>hbase.master.dns.interface</name>
>        <value>lo</value>
> </property>
> <property>
>       <name>hbase.regionserver.dns.interface</name>
>       <value>lo</value>
> </property>
> The issue went away.
> So something about the "lo" interface isn't getting parsed right on that particular machine (An EC2 M.small running Ubuntu 9).

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (HBASE-3464) dns.interface property causes malformed parsing for 'lo'

Posted by "James Kennedy (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HBASE-3464?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12992094#comment-12992094 ] 

James Kennedy commented on HBASE-3464:
--------------------------------------

Not sure.  I haven't dug into this very far but it seems to me like it might be more of a parsing error.  "localhost." is not a valid server name anyway you look at it. Maybe that is being fed in from the OS environment somehow but I wasn't able to find any evidence of that.

On that machine ifconfig shows:

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:8423670 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8423670 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:4935980808 (4.9 GB)  TX bytes:4935980808 (4.9 GB)

and /etc/hosts shows:

127.0.0.1 localhost

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts


> dns.interface property causes malformed parsing for 'lo'
> --------------------------------------------------------
>
>                 Key: HBASE-3464
>                 URL: https://issues.apache.org/jira/browse/HBASE-3464
>             Project: HBase
>          Issue Type: Bug
>          Components: master, regionserver
>         Environment: An EC2 m1.large node running Ubuntu 9.  HDFS + HBASE 0.90.0 running in a single JVM.
>            Reporter: James Kennedy
>             Fix For: 0.90.1
>
>
> I have a seed application that is executed via maven and runs a
> single JVM ApplicationStarter that starts up hdfs, regionserver, hmaster
> threads. It does some seeding then shuts those down in reverse order.
> So this isn't a typical way of running hbase to be sure. However it has
> always worked until I upgraded to HBase 0.90.0.
> I didn't notice it when I was originally testing 0.90.0 because it only
> seems to be happening on our EC2.small build server node when I run this
> particular seeder.
> Running the same thing locally on my mac works.
> Attached is the error output starting from when the HRegionServer.stop() is
> called to when HMaster.shutdown() is called and it starts looping forever in
> letRegionServersShutdown().
> It looks like RegionServerTracker is getting to "RegionServer ephemeral node
> deleted, processing expiration" but then because it can't get the
> HServerInfo it doesn't follow-through with actually expiring it.
> The reason it can't get the HServerInfo is because it is looking for "localhost." instead of "localhost".
> My /etc/hosts file was vanilla. But when I removed the following form hbase-site.xml:
> <property>
>        <name>hbase.master.dns.interface</name>
>        <value>lo</value>
> </property>
> <property>
>       <name>hbase.regionserver.dns.interface</name>
>       <value>lo</value>
> </property>
> The issue went away.
> So something about the "lo" interface isn't getting parsed right on that particular machine (An EC2 M.small running Ubuntu 9).

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira