Address ORA-00972: identifier is too long when tested with Oracle

This pull request address the following error since #15343 has been merged to master.
Because the max identifier length of Oracle is limited to 30 bytes.

This pull request uses shorter name by renaming `polymorphic` to `poly` only for attribute names which is over 30 bytes.

```ruby
$ cd activerecord
$ rake test_oracle
... snip ...
stmt.c:230:in oci8lib_210.so: OCIError: ORA-00972: identifier is too long: CREATE TABLE "FACES" ("ID" NUMBER(38) NOT NULL PRIMARY KEY, "DESCRIPTION" VARCHAR2(255), "MAN_ID" NUMBER(38), "POLYMORPHIC_MAN_ID" NUMBER(38), "POLYMORPHIC_MAN_TYPE" VARCHAR2(255), "POLYMORPHIC_MAN_WITHOUT_INVERSE_ID" NUMBER(38), "POLYMORPHIC_MAN_WITHOUT_INVERSE_TYPE" VARCHAR2(255), "HORRIBLE_POLYMORPHIC_MAN_ID" NUMBER(38), "HORRIBLE_POLYMORPHIC_MAN_TYPE" VARCHAR2(255)) (ActiveRecord::StatementInvalid)
... snip ...
rake aborted!
```

Thanks for the quick update. I was thinking to change `without` to `wo` but it did not satisfy 30 bytes length, Also thinking about to change `inverse` to `invrs` but it looked more unclear.