After 13 years, JCache specification is finally complete

On March 6, 2001, a specification proposal was born within the JCP. It was called JSR 107: Java Temporary Caching API (JCache for short) and it seemed doomed to languish within the JCP longer than any other specification proposal for the language.

But almost exactly 13 years later, in March of this year, the specification was completed thanks to the efforts of Greg Luck, and Oracle’s Brian Oliver and Cameron Purdy.

We caught up with Luck in his new job as CEO of Hazelcast, a company that, not coincidentally, offers a JCache-based in-memory data grid. He started out as CTO of Hazelcast earlier this year, and was promoted to CEO in June. Before that, he was CTO of Terracotta.

SD Times: What made you start working on JSR 107 after it being stagnant for so long?Luck: I was a part-timer where someone paid me to implement the specification as it was. I implemented it and pointed out it couldn’t be done completely because the specification was incomplete. I said, “If you want to pay me to work on the specification…” They said no. But at Terracotta, once I got settled, they were happy to finish the specification. So while I was at Terracotta, I did that work.

In about October 2011, I started working more than 50% of my time on it. It was a much bigger effort than anybody appreciated. We went through some Oracle guys.

Oracle had created the specification, right?It was started 11 or 12 years ago by Oracle. Whatever the original purpose was, it was lost. Cameron Purdy was specification lead, but he was busy as hell running Tangosol, so eventually, two and a half years ago, I had the time. Cameron wanted to do it, so we said we’ll put 50% project time in to get it done. We got started, then we got held up by legal stuff with Oracle, and then later Software AG.

Then Brian Oliver and I got going again. We finished the work in December 2013 and took a couple months to go through the process of releasing it.