Oracle Gets Serious About Free Software
An Interview With Oracle's Linux Point Man, Wim Coekaerts

Robert McMillan
Thursday, March 20, 2003 10:12:57 AM
We all have a pretty good idea what the world's largest software company
thinks about Linux and open source, but what about its closest rival,
Oracle? Though Oracle may make its money selling proprietary code, the
company says it is about to get a lot more visible in its support of
open source software. After years of contributing to the Linux kernel
via third parties like Red Hat or SuSE, the database maker is now
focusing on more direct participation on the Linux kernel list. And, in
the next few weeks it is planning to release a major overhaul of its
open source developer site.
But Oracle has been ramping up its open source efforts for close to a
year now. Last August, Oracle released a GPL'd cluster filesystem,
followed three months later by a nifty hack that allows Linux users to
set
up a two node Linux cluster on a Firewire drive. That code was
written by Wim Coekaerts, who heads up Oracle's Linux's development
effort. A Linux user since 1993, Coekaerts got seriously involved in
Linux when Larry Ellison asked him to build a network computer based on
the free OS in 1999. Since then, he's moved over to server-side
development where as Principal Member of Technical Staff, Corporate
Architecture Development, he leads a team of developers whose goal is to
make sure that Linux fully supports Oracle's next-generation features.
Coekaerts says that in the next little while, his company is going to
become a much more visible force in the open source development landscape.
LinuxPlanet: When I look at Oracle's open source
site, it doesn't really have a community feel to it.
Wim Coekaerts: We are in the process of setting up something like
oss.oracle.com--an open source site like oss.sgi.com. We haven't
really had a lot of time to focus on that side, and now we have more
time to do it. We want to be able to share more with other people.
LP: So if you have a patch for the Oracle Cluster File System, it
doesn't seem obvious how you'd contribute that right now? Is there a
place where you can see discussions about Oracle's open source projects?
Coekaerts: You're right. We started working on something like this,
but it wasn't very user-friendly, so now we're basically waiting for
hardware to get set up and to set this thing up. In the next few weeks
this will start happening. It will have a mailing list; it will have a
bug database.
LP: For which projects?
Coekaerts: For the Cluster File System and the other stuff, like
network failover, that we're working on. Just anything we do will now
be published there.
LP: And the Fireware hack you did as well?
Coekaerts: Yes that will be there too.
LP: When Oracle first got involved with Linux, it worked very closely
with Red Hat. What did Oracle get out of that relationship? Was it about
getting features added to the Linux kernel, or did you just need a
certain level of technical support?
Coekaerts: It was a mix of the two. For Oracle to run well, we needed
asynchronous I/O for performance, we needed large memory support in the
kernel to do more than four gigabyte Oracle instances, and stability: a
lot of testing. So we worked really closely with them to do QA. We gave
them our QA suites--not all of them, just different types that needed
to be run on the operating system. So we built a good relationship. We
know that when they build a new kernel, that they've gone through this
whole testing phase from the Oracle side, and we feel comfortable with it.
From a support point of view, we didn't want to have a customer to have
things fall apart when there was an operating system problem. So we did
two things. One was, Red Hat has given a lot of support on Advanced
Server. They have this special plan where you have 24 hour support--it's a different level of support. There's also stability: they have a
12-18 month cycle for specific distribution versions. That's also really
important. Linux was really fast-changing, and as a company you don't
want to follow that change. You want to have a stable production
environment that changes once a year.
That's basically one of the big criteria that all of the OS vendors
have. And now Red Hat has it with Advanced Server, and UnitedLinux has
it with their server version of Linux.
And now we have the Unbreakable Linux campaign, which I've been trying
to explain to people, because nobody really seems to understand it. An
Oracle customer running on Advanced Server may call Oracle about the
operating system. And that's a big deal, because customers who might be
concerned about the size of Red Hat know that we have the resources. So
there's one point of contact. Call Oracle, and we will help you across
the whole stack. It helps the customers feel at ease, and it gives us a
big advantage because it's the first OS where we can provide the full
stack, and say, "here we can help you on the operating system side and
on the Oracle product side." So it's much faster.
From a development perspective, we use Linux because we can develop
features ourselves on the operating system side. The way we
traditionally work with the other vendors is that somebody in the
database group comes up with a brilliant idea, and says, "This would be
so cool, but we need this in the operating system in order to do that."
So we go to the vendor and say, "this is what we want." They go back and
have discussions and sometimes they say "We can't do that." With Linux,
we just do it. The guys from the database group come to my group, and we
sit down and prototype something in a couple of weeks and say either
"This is not going to work," or "This is great." It gives us the edge to
be more competitive, faster.
LP: So if you're talking about a kernel change, how does Oracle make
that a part of the standard kernel?
Coekaerts: Our goal is that all the operating system work we do at
Oracle goes back to the Linux community. Sometimes it takes some time to
get it into the standard kernel, but the goal is to get it in there. And
we don't have to do it directly, because we work with the other guys.
We're not necessarily very visible to the Linux kernel mailing list,
because a lot of those things go in through other people. We talk to the
Red Hat developers and the SuSe developers weekly, and we give them
patches. They funnel a lot of this through. So it doesn't necessarily
come directly from us. We want to change that. There's the hang check
timer, and there are some patches for semaphore operations that Linus
accepted in 2.5.
LP: That came directly from you?
Coekaerts: From the guys in my group. So I think we're slowly
changing the way we deal with the Linux guys, as in everybody needs to
send email from their Oracle account instead of their home account.
Instead of just talking to the distributors, we also send to the kernel
mail list. In the past, our focus was to get this out there because our
customers needed it. Our focus was not to market the Linux work. We
needed to get the work done. Now we have some time to start explaining that.
LP: Why?
Coekaerts: Because a lot of other companies are doing Linux stuff and
they're very much in public. We want people to understand that we are
doing a lot. We're not just saying, "Oh Linux is great. Bye." We are
investing a lot of resources in it. There are a lot of internal
production systems that are deployed on Linux. All the middle-tier
servers at Oracle--the email servers, for example--are all Linux.
LP: You have a different relationship with Suse than you do with the
Linux kernel list. Suse is financially motivated to help Oracle. I
imagine that contributing directly could be more work for you guys?
Coekaerts: Yeah. One of the things that happened in the past is we
just had a list of features we wanted, and we didn't really defend why
we wanted them. We just said, "We know we want them." And that didn't
work well. So now, part of our group's job is to prototype and do
testing on new features and say, "Here, this is the difference," which
will help convince people who do not work for Red Hat or Suse.
What you will see in the near future is that we will start running
Oracle workloads on the 2.5 kernels, which is a great test suite. And
then we can compare 2.5.59, 2.5.60 and so on , and show how the number
of processes goes up and down. We want to start working more directly
with the Linux community?
LP: But why are you changing this approach? Are you just comfortable
enough that you're no longer afraid of some major public relations disaster?
Coekaerts: For one, like I said, our focus had been to get the
distributions up to speed. The reason we've not been very public about
our changes in the past was because we worked directly with those guys.
We didn't have the time for it.
And now we have very big customers on Linux who are stable. They are
happy with performance; they can run a very big important business on
Linux, and that gives us more room to work on new and interesting things.
You'll see stuff coming up that Linux either lacks (that other operating
systems already have) or new stuff. You know we are cutting edge
technology, and there are some things that we can do on the operating
system side that no one has yet, that you will see in the next six
months or so.
LP: In what areas?
Coekaerts: In general, clustering is something where Linux definitely
needs to grow up. Cluster management, and stuff like that is a big
part. The kernel functionality that we work on will be open. It doesn't
mean that the original development starts open because you have this
competitive thing going on. Red Hat and Suse do the same thing. They
will work on features for their next version, and once they have their
road map and they're done with it, then they will open it up. But until
then, they cannot do that. It's a time-to-market thing.
And it's the same with us. We don't want to be talking about features on
the operating side that will show our competition what we're working on
in the database. But once we talk about the Oracle side in public, we
will have a Linux release.