CDS views on Oracle: falling into the cluster trap
Short blog about a nasty nasty bit of error mishandling I bumped into today.
In summary: CDS views cannot use cluster tables, but no obvious errors are produced. The activation log reports issues in a cheery green and looks like all is good to go.
*Edit: This is not specific to Oracle, but as it worked when tested on Sybase I assumed it was Oracle. The real reason was that the table CDPOS is a transparent table on Sybase and HANA, but a cluster table on Oracle.
The longer story:
I built a few CDS views and they worked very nicely. Then I copied them to another system running on Oracle and it all appeared to work. But one of the detail views didn’t return any result.
Following an association via the Eclipse SQL preview just sits there with nothing happening – neither result nor error.
Activating the view says it’s all fine and dandy.
Previewing it directly finally gave a message: ZMYCDS_V does not exist on the database
SE11 told me the same thing. Activation showed a green log. But afterwards it still gave a message that it didn’t exist on the DB.
Note 242686 gave some hints but none applied to our system.
It did provide a report RUTDDLSACT which I ran and after I combed through the 160+ lines of log in detail I finally spotted it:
Seriously SAP? Why is this green and not a big red fail? Never mind that this should not be activated with a dependent failure; there were several other points at which I would have expected failures, but most just behaved as if all is normal.
Note to self: Don’t just skim a log because it’s green. Read it. All of it.