Given that Oracle doesn't seem shy about going after a giant like Google makes me wonder what other software Sun owned the rights to that might be even remotely popular. If I were a company using a lot of old Sun IP in even moderately unique ways, I'd be a little concerned right now.
But my point still stands: makers of replacement engines for MySQL could be in violation of MySQL-related patents, which Oracle could then sue over.
Other database vendors (Percona et al., not IBM) don't have assets for Oracle to take, don't directly threaten their core business, and going after them would get Oracle in trouble with regulators.
Better to land a tuna than chase sardines around.
It doesn't do memory management nearly as well as the JVM, and it handles dynamic dispatch and one-off closure hacks (local classes) slowly. It won't easily accept generated bytecodes. It has mysterious performance headaches (mostly memory management related I think).
I'd prefer that Oracle go to heck with these bogus patents for the health of the industry but Google should have just cooperated from the start.
In other words, your issues may be caused by mobile development, not by Android development.
Essentially, Sun said "We will give away Java, Open Source, as we planned to do. Oh, not mobile, because Nokia uses it and it makes us lots of money. Of course, we all understand reimplementing Java ME would be far too much work for any one company to do. Feel free to license."
Google said "Eh, we'll just write our own JVM that runs on phones, thanks. That's how we roll over here."
Now there are lawsuits, because Sun tried hard to make sure you had to pay if you wanted Java on mobile devices.
Also Sun removed the classpath exception when they put JavaME under the GPL. That means if you used the GPL'ed version of Java on a mobile device then it becomes viral - including to any application code. (That's why most GPL'ed Java programs use the classpath exception).
From Sun's point of view, this was a good idea because it allowed them to protect JavaME licence revenue. Google saw JavaME as outdated, though, so instead of licencing it they took the Apache licensed Harmony project (ie, a clean room, Apache licensed version of the Java class libraries) and build Android around it.
Dalvik limitations are very justified, and even if phones improve over time, Dalvik also evolves.
Also when going head to head with Apple and Microsoft on such a far-reaching platform, having full control over your platform is valuable.
Here's some more context:
http://blogs.gartner.com/brian_prentice/2009/08/06/google-op...
Patent owners can't just go around encouraging people to infringe, and then come back later and sue.
[1] I assume that when software covered by patents is released as open source, the patents are also implicitly granted as part of the license, because if they weren't no one would be able to use it for anything because they would be infringing on the patents.
The only situation this can possible make sense in is if Google has somehow violated the license, thereby revoking their permission to use the relevant patents and exposing them to litigation.
This is why the W3C has a patent policy [1] to prevent contributed software and specifications from being covered by patents.
[1]: http://www.w3.org/Consortium/Patent-Policy-20040205/
If this still does not make any sense, realize that patents and copyrights, while both forms of IP, are completely different, legally. Also recall how open source GIF implementations were still covered by the Unisys patent.
This is probably the biggest reason why companies, like Microsoft, even when they do open source, don't accept contributions. Just because someone contributes specific code, doesn't mean they have the legal right to do so.
Sun showed that Java could be a timebomb. And in the hands of Larry Ellison, I think Google is just the first victim. Oracle will be going through uses of Java with a fine-tooth comb. Get your duck in order now.
Plus, if you are an IT shop in the fortune 500, you company probably has closer ties with Oracle than Google.
// I am a little concerned with non-Java related VM's in case Oracle goes after them with these patents.
Sun/Oracle's Java implementation was released under the GPLv2, which doesn't include a patent license. I don't know if they included any patent license with the open source release. Even if they did, it doesn't help Google, because Android doesn't use the Sun/Oracle code, so it wouldn't benefit from any patent license that goes with it. Android is based on the Apache Harmony libraries on top of Google's own Dalvik VM. (Most of the Android code is Apache-licensed.) That code was all developed independent of Sun's Java and the implementation might infringe their patents, even though it doesn't use their code.