MisterRaindrop commented on code in PR #1842:
URL: https://github.com/apache/cloudberry/pull/1842#discussion_r3901251321


##########
doc/src/sgml/ref/create_iceberg_table.sgml:
##########
@@ -0,0 +1,193 @@
+<!--
+doc/src/sgml/ref/create_iceberg_table.sgml
+PostgreSQL documentation
+-->
+
+<refentry id="sql-createicebergtable">
+ <indexterm zone="sql-createicebergtable">
+  <primary>CREATE ICEBERG TABLE</primary>
+ </indexterm>
+
+ <refmeta>
+  <refentrytitle>CREATE ICEBERG TABLE</refentrytitle>
+  <manvolnum>7</manvolnum>
+  <refmiscinfo>SQL - Language Statements</refmiscinfo>
+ </refmeta>
+
+ <refnamediv>
+  <refname>CREATE ICEBERG TABLE</refname>
+  <refpurpose>define a new Iceberg table</refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+<synopsis>
+CREATE ICEBERG TABLE [ IF NOT EXISTS ] <replaceable 
class="parameter">table_name</replaceable> ( [
+    <replaceable class="parameter">column_name</replaceable> <replaceable 
class="parameter">data_type</replaceable> [, ... ]
+  ] )
+    [ CATALOG <replaceable class="parameter">catalog_name</replaceable> ]
+    [ VOLUME <replaceable class="parameter">volume_name</replaceable> ]
+    [ OPTIONS ( <replaceable class="parameter">option</replaceable> 
'<replaceable class="parameter">value</replaceable>' [, ...] ) ]
+    [ DISTRIBUTED BY ( <replaceable class="parameter">column</replaceable> [, 
... ] ) | DISTRIBUTED RANDOMLY | DISTRIBUTED REPLICATED ]

Review Comment:
   You were right, and the point outlived the design it was made against.
   
   That file is gone — the kernel DDL it documented was reverted when this PR 
became an extension, so there is no `CREATE ICEBERG TABLE` grammar and no 
`DISTRIBUTED` clause in the syntax to remove. `doc/` no longer appears in this 
PR's diff at all.
   
   The underlying judgement was adopted rather than dropped. A lake table's 
rows live outside PostgreSQL, so no local key can describe where they are; the 
module injects `DISTRIBUTED RANDOMLY` itself and does not ask the user for it. 
`DISTRIBUTED BY` and `DISTRIBUTED REPLICATED` are both refused.
   
   There is one deliberate exception, and it is the only reason any clause is 
accepted: `pg_dump` writes `DISTRIBUTED RANDOMLY` into the `CREATE TABLE` it 
emits, so refusing every clause would mean refusing to restore a dump this 
module produced. An explicit clause is therefore accepted only when it asks for 
exactly what would have been injected anyway (`pg_iceberg_extensible.c`, in 
`CREATE TABLE` handling).
   
   Resolving this one, since the file it points at no longer exists.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to