Ex-J9 engineer here, J9 was built completely in a clean-room. It does pass the TCK tests.
Oracle has stated that for open source, only OpenJDK derivatives get access to the TCK.
There was some constant for 8K that was mistyped incorrectly, something like instead of:
#define 8K 8192
They mistyped and wrote:
#define 8K 8096
This caused all sorts of bugs and was known internally as the 8K bug. When time came to write the Java VM, they wanted to name it as "post 8k bug" they named it K9, but K9 sounds like a dog (woof) so they decremented the K to land on J9.
At least that's what I've heard...
shrugs