-
Notifications
You must be signed in to change notification settings - Fork 768
Open
Description
When formatting (partial) ruby, the output contains one bit twice.
This input (7 lines long)
code = """ # - format_type includes the column size constraint, e.g. varchar(50)
# - ::regclass is a function that gives the id for a table name
def column_definitions(table_name) #:nodoc:
exec_query(<<-end_sql, 'SCHEMA').rows
SELECT a.attname, format_type(a.atttypid, a.atttypmod),
pg_get_expr(d.adbin, d.adrelid), a.attnotnull, a.atttypid, a.atttypmod
FROM pg_attribute a LEFT JOIN pg_attrdef d"""
Leads to this output, which is longer (10 lines)
<span class="w"> </span><span class="c1"># - format_type includes the column size constraint, e.g. varchar(50)</span>
<span class="w"> </span><span class="c1"># - ::regclass is a function that gives the id for a table name</span>
<span class="w"> </span><span class="k">def</span><span class="w"> </span><span class="nf">column_definitions</span><span class="p">(</span><span class="n">table_name</span><span class="p">)</span><span class="w"> </span><span class="c1">#:nodoc:</span>
<span class="w"> </span><span class="n">exec_query</span><span class="p">(</span><span class="o"><<-</span><span class="dl">end_sql</span><span class="p">,</span><span class="w"> </span><span class="s1">'SCHEMA'</span><span class="p">)</span><span class="o">.</span><span class="n">rows</span>
<span class="err"> SELECT a.attname, format_type(a.atttypid, a.atttypmod),</span>
<span class="err"> pg_get_expr(d.adbin, d.adrelid), a.attnotnull, a.atttypid, a.atttypmod</span>
<span class="err"> FROM pg_attribute a LEFT JOIN pg_attrdef d</span>
<span class="w"> </span><span class="no">SELECT</span><span class="w"> </span><span class="n">a</span><span class="o">.</span><span class="n">attname</span><span class="p">,</span><span class="w"> </span><span class="n">format_type</span><span class="p">(</span><span class="n">a</span><span class="o">.</span><span class="n">atttypid</span><span class="p">,</span><span class="w"> </span><span class="n">a</span><span class="o">.</span><span class="n">atttypmod</span><span class="p">),</span>
<span class="w"> </span><span class="n">pg_get_expr</span><span class="p">(</span><span class="n">d</span><span class="o">.</span><span class="n">adbin</span><span class="p">,</span><span class="w"> </span><span class="n">d</span><span class="o">.</span><span class="n">adrelid</span><span class="p">),</span><span class="w"> </span><span class="n">a</span><span class="o">.</span><span class="n">attnotnull</span><span class="p">,</span><span class="w"> </span><span class="n">a</span><span class="o">.</span><span class="n">atttypid</span><span class="p">,</span><span class="w"> </span><span class="n">a</span><span class="o">.</span><span class="n">atttypmod</span>
<span class="w"> </span><span class="no">FROM</span><span class="w"> </span><span class="n">pg_attribute</span><span class="w"> </span><span class="n">a</span><span class="w"> </span><span class="no">LEFT</span><span class="w"> </span><span class="no">JOIN</span><span class="w"> </span><span class="n">pg_attrdef</span><span class="w"> </span><span class="n">d</span>
To clarify, it's the SELECT statement that is contained in the output twice.
Source of the input:
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels