[ https://issues.apache.org/jira/browse/CASSANDRA-14825?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16924124#comment-16924124 ]
Benedict commented on CASSANDRA-14825: -------------------------------------- There is a legitimate case to be made to support both approaches, in my opinion. {{DESCRIBE}}'s main advantage, to my mind, is that it could support versioning of CQL grammar, so that you can ask for a string compatible with a given CQL version. This is difficult to do cleanly with a virtual table. The presented factors in its favour don't seem relevant to me, and please try to avoid characterising others' disagreement with your points as misunderstanding or ignoring them: # {{cqlsh}} having it already does not seem particularly important, and should not bind our future decisions. It is a single tool, even if it is bundled. # Virtual tables are also very capable of surfacing the necessary information to produce dependent types, for instance as a collection column of the names of those type. Further to this second point, virtual tables permit surfacing a whole lot more information in a structured _searchable_ manner. Want to find which tables use a given type? Search on that collection column. >From a pure UX, personal preference perspective, I can say that I hate >features like {{DESCRIBE}} because I have to go and google the manual. With a >virtual table interface, I just {{SELECT}} and progressively narrow my >criteria with {{WHERE}} clauses. I preferred this approach in SQL Server than >I do today's {{DESCRIBE}} in {{cqlsh}}. So, I can see a case for both. But if I had to choose, I would prefer virtual tables, and I haven't seen an argument that unequivocally seals the deal one way or the other. > Expose table schema for drivers > ------------------------------- > > Key: CASSANDRA-14825 > URL: https://issues.apache.org/jira/browse/CASSANDRA-14825 > Project: Cassandra > Issue Type: Improvement > Components: Legacy/CQL > Reporter: Chris Lohfink > Assignee: Chris Lohfink > Priority: Normal > Labels: pull-request-available > Time Spent: 1h 50m > Remaining Estimate: 0h > > Currently the drivers recreate the CQL for the tables by putting together the > system table values. This is very difficult to keep up to date and buggy > enough that its only even supported in Java and Python drivers. Cassandra > already has some limited output available for snapshots that we could provide > in a virtual table or new query that the drivers can fetch. This can greatly > reduce the complexity of drivers while also reducing bugs like > CASSANDRA-14822 as the underlying schema and properties change. -- This message was sent by Atlassian Jira (v8.3.2#803003) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org