64-bit on Solaris/Sparc?

Matt.Ingenthron at Sun.COM Matt.Ingenthron at Sun.COM
Fri Feb 22 01:35:25 UTC 2008


Hi Adam,

Adam Lee wrote:
> I've been trying to get memcached 1.2.4 working on some V210 hardware
> with the 64-bit version, but I'm running into problems.  It compiles,
> but my (very basic) stress testing script gets consistent errors
> against it.
>   

There were several patches that Trond Norbye sent in, and one was 
related to alignment that was causing issues.  That was causing some 
stability problems.  There were also some fixes Trond contributed to 
libevent that were causing stability issues.  You may want to be sure 
you're using a recent libevent.

I just looked, and some of Trond's changes are in the trunk, but not in 
1.2.4.  You may want to try the trunk, but I'd test it well since there 
could be other changes that have spawned bugs which haven't had any 
light shown on them yet.

All of the work Sun has been doing is out in the open in an incubator 
mercurial repo off of the OpenSolaris site.  That could also be worth 
trying, but recognize that things are tried/tested here first and could 
change over the course of development or when integrated upstream as a 
patch:
http://src.opensolaris.org/source/xref/webstack/memcached-incubator/trunk/
ssh://anon@hg.opensolaris.org/hg/webstack/memcached-incubator

So far, we've integrated 32-bit memcache in OpenSolaris, which gets it 
to SXCE and Project Indiana.  In the trunk of the incubator though, I 
bet all of the changes to build as 64-bit out of the box are there 
though.  I definitely see the build changes in there.

The official trunk for memcache also has the 64-bit changes in it, so it 
may be the first thing to try, then if you still see issues when running 
your test, try the trunk from the OpenSolaris memcache-incubator.  
Please let us know what your results are in any event.
 
> The script is in Java using the old client (from Meetup) and
> essentially just does a huge succession of sets and gets against the
> server, but it seems that even if I do a get directly after a set, it
> comes back as null.  The success rate is less than 25%.
>
> The same script runs fine against the same V210 running the CoolStack
> 32-bit version the same machine, so I know it's probably just a
> 64/32-bit discrepancy.  Has naybody had any luck with this?
>   

It's hard to say where the problem is from here.  This is with only one 
server I assume?

I know Trond's been working on 64-bit and the build process to turn it 
on by default.  I also know he's been testing with it, and there aren't 
any known issues I'm aware of[1].

> The machines I'm using have 16GB of RAM, so if I want to use them with
> 32-bit, I'll need to run four 32-bit servers per machine, which seems
> far less than optimal.
>   
> Thanks for any help!
>
>   
1. 
http://bugs.opensolaris.org/search.do?process=1&type=&sortBy=relevance&bugStatus=&perPage=10&bugId=&keyword=&textSearch=&category=database&subcategory=memcached&since=

-- 
Matt Ingenthron - Web Infrastructure Solutions Architect
Sun Microsystems, Inc. - Global Systems Practice
http://blogs.sun.com/mingenthron/
email: matt.ingenthron at sun.com             Phone: 310-242-6439



More information about the memcached mailing list