terraform-provider-postgresql icon indicating copy to clipboard operation
terraform-provider-postgresql copied to clipboard

Fix schema support for RedShift

Open sean- opened this issue 8 years ago • 3 comments

@apparentlymart

Related to #12 , can you run the following for me in psql?

SELECT * FROM pg_catalog.pg_namespace n;
\d pg_catalog.pg_namespace

Reported by @apparentlymart in https://github.com/terraform-providers/terraform-provider-postgresql/pull/12#issuecomment-317067820

sean- avatar Jul 21 '17 18:07 sean-

Unfortunately I already shut down the redshift cluster I was working in for the testing of #12. I'll try to get another one spun up later to look at this, when I have a good block of time to wait for it to boot up!

apparentlymart avatar Jul 21 '17 19:07 apparentlymart

@apparentlymart It's not a high priority for me. I'd take input from any RedShift user, tbh, but it's not something I'm motivated to take huge amounts of initiative to tackle. The fixes are pretty straight forward but require the above input. Whenever is convenient. Thanks!

sean- avatar Jul 21 '17 21:07 sean-

Hi @sean-,

I came across this ticket. I'm very keen to manage schema and user permissions for Redshift with Terraform, so please let me know what I can to do help.

Here's the output you requested. I've redacted internal names.

cheers, jml

memrise=> SELECT * FROM pg_catalog.pg_namespace n;
      nspname       | nspowner |                                                                                                                nspacl
--------------------+----------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 pg_toast           |        1 |
 pg_internal        |        1 |
 pg_temp_1          |        1 |
 pg_catalog         |        1 | {rdsdb=UC/rdsdb,=U/rdsdb}
 public             |        1 | {rdsdb=UC/rdsdb,=UC/rdsdb}
 information_schema |        1 | {rdsdb=UC/rdsdb,=U/rdsdb}
 pg_temp_9          |        1 |
 pg_temp_10         |        1 |
 pg_temp_11         |        1 |
 pg_temp_12         |        1 |
 pg_temp_13         |        1 |
 pg_temp_14         |        1 |
 pg_temp_16         |        1 |
 pg_temp_15         |        1 |
 pg_temp_17         |        1 |
 pg_temp_18         |        1 |
 pg_temp_19         |        1 |
 pg_temp_20         |        1 |
 pg_temp_21         |        1 |
 pg_temp_22         |        1 |
 pg_temp_23         |        1 |
 pg_temp_24         |        1 |
 pg_temp_25         |        1 |
 pg_temp_27         |        1 |
 pg_temp_26         |        1 |
 pg_temp_28         |        1 |
 pg_temp_30         |        1 |
 pg_temp_32         |        1 |
 pg_temp_31         |        1 |
 pg_temp_29         |        1 |
 pg_temp_34         |        1 |
 pg_temp_35         |        1 |
 pg_temp_33         |        1 |
 pg_temp_38         |        1 |
 pg_temp_39         |        1 |
 pg_temp_42         |        1 |
 pg_temp_41         |        1 |
 pg_temp_43         |        1 |
 pg_temp_44         |        1 |
 pg_temp_36         |        1 |
 pg_temp_45         |        1 |
 pg_temp_47         |        1 |
 pg_temp_46         |        1 |
 pg_temp_40         |        1 |
 pg_temp_37         |        1 |
 pg_temp_6          |        1 |
 admin              |      100 |
 pg_temp_5          |        1 |
 pg_temp_7          |        1 |
 pg_temp_2          |        1 |
 pg_temp_4          |        1 |
 pg_temp_8          |        1 |
 pg_temp_3          |        1 |
 dev                |      103 |
      nspname       | nspowner |
      nspname       | nspowner |
                       nspacl

--------------------+----------+-----------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------------
--------------------
 pg_toast           |        1 |
 pg_internal        |        1 |
 pg_temp_1          |        1 |
 pg_catalog         |        1 | {rdsdb=UC/rdsdb,=U/rdsdb}
 public             |        1 | {rdsdb=UC/rdsdb,=UC/rdsdb}
 information_schema |        1 | {rdsdb=UC/rdsdb,=U/rdsdb}
 pg_temp_9          |        1 |
 pg_temp_10         |        1 |
 pg_temp_11         |        1 |
 pg_temp_12         |        1 |
 pg_temp_13         |        1 |
 pg_temp_14         |        1 |
 pg_temp_16         |        1 |
 pg_temp_15         |        1 |
 pg_temp_17         |        1 |
 pg_temp_18         |        1 |
 pg_temp_19         |        1 |
 pg_temp_20         |        1 |
 pg_temp_21         |        1 |
 pg_temp_22         |        1 |
 pg_temp_23         |        1 |
 pg_temp_24         |        1 |
 pg_temp_25         |        1 |
 pg_temp_27         |        1 |
 pg_temp_26         |        1 |
 pg_temp_28         |        1 |
 pg_temp_30         |        1 |
 pg_temp_32         |        1 |
 pg_temp_31         |        1 |
 pg_temp_29         |        1 |
 pg_temp_34         |        1 |
 pg_temp_35         |        1 |
 pg_temp_33         |        1 |
 pg_temp_38         |        1 |
 pg_temp_39         |        1 |
 pg_temp_42         |        1 |
 pg_temp_41         |        1 |
 pg_temp_43         |        1 |
 pg_temp_44         |        1 |
 pg_temp_36         |        1 |
 pg_temp_45         |        1 |
 pg_temp_47         |        1 |
 pg_temp_46         |        1 |
 pg_temp_40         |        1 |
 pg_temp_37         |        1 |
 pg_temp_6          |        1 |
 admin              |      100 |
 pg_temp_5          |        1 |
 pg_temp_7          |        1 |
 pg_temp_2          |        1 |
 pg_temp_4          |        1 |
 pg_temp_8          |        1 |
 pg_temp_3          |        1 |
 dev                |      103 |
 pg_temp_50         |        1 |
 pg_temp_48         |        1 |
 pg_temp_52         |        1 |
 pg_temp_54         |        1 |
 pg_temp_53         |        1 |
 pg_temp_55         |        1 |
 pg_temp_56         |        1 |
 pg_temp_58         |        1 |
 pg_temp_60         |        1 |
 pg_temp_59         |        1 |
 pg_temp_49         |        1 |
 redacted_schema_1              |      109 |
 redacted_schema_2     |      100 |
 redacted_name_1     |      104 | {redacted_username_1=UC/redacted_username_1,"group redacted_group_name_1=U/redacted_username_1","group power_users=U/redacted_username_1"}
 redacted_name_2  |      103 | {redacted_username_2=UC/redacted_username_2,"group developers=UC/redacted_username_2","group readonly=U/redacted_username_2","group power_users=U/redacted_username_2","group readonly_power_users=U/redacted_username_2"}
 models             |      103 | {redacted_username_2=UC/redacted_username_2,redacted_username_1=U/redacted_username_2,"group developers=UC/redacted_username_2","group readonly=U/redacted_username_2","group redacted_group_name_3=U/redacted_username_2","group readonly_power_users=U/redacted_username_2"}
...
 pg_temp_51         |        1 |
 pg_temp_61         |        1 |
 pg_temp_72         |        1 |
 pg_temp_65         |        1 |
 pg_temp_73         |        1 |
 pg_temp_74         |        1 |
 pg_temp_77         |        1 |
 pg_temp_66         |        1 |
 pg_temp_81         |        1 |
 pg_temp_68         |        1 |
 pg_temp_67         |        1 |
 pg_temp_82         |        1 |
 pg_temp_83         |        1 |
 pg_temp_129        |        1 |
 pg_temp_132        |        1 |
 pg_temp_133        |        1 |
 pg_temp_70         |        1 |
 pg_temp_79         |        1 |
 pg_temp_80         |        1 |
 pg_temp_89         |        1 |
 pg_temp_92         |        1 |
 pg_temp_93         |        1 |
 pg_temp_122        |        1 |
 pg_temp_123        |        1 |
 pg_temp_124        |        1 |
 pg_temp_125        |        1 |
 pg_temp_126        |        1 |
 pg_temp_103        |        1 |
 pg_temp_117        |        1 |
 pg_temp_130        |        1 |
 pg_temp_71         |        1 |
 pg_temp_69         |        1 |
 pg_temp_75         |        1 |
 pg_temp_76         |        1 |
 pg_temp_78         |        1 |
 pg_temp_114        |        1 |
 pg_temp_112        |        1 |
 pg_temp_113        |        1 |
 pg_temp_115        |        1 |
 pg_temp_116        |        1 |
 pg_temp_127        |        1 |
 pg_temp_131        |        1 |
 pg_temp_121        |        1 |
 pg_temp_134        |        1 |
 pg_temp_137        |        1 |
 pg_temp_136        |        1 |
 pg_temp_63         |        1 |
 pg_temp_84         |        1 |
 pg_temp_85         |        1 |
 pg_temp_90         |        1 |
 pg_temp_91         |        1 |
 pg_temp_94         |        1 |
 pg_temp_95         |        1 |
 pg_temp_96         |        1 |
 pg_temp_99         |        1 |
 pg_temp_98         |        1 |
 pg_temp_101        |        1 |
 pg_temp_100        |        1 |
 pg_temp_86         |        1 |
 pg_temp_97         |        1 |
 pg_temp_87         |        1 |
 pg_temp_57         |        1 |
 pg_temp_62         |        1 |
 pg_temp_64         |        1 |
 pg_temp_88         |        1 |
...
 spectrum           |      103 | {redacted_username_2=UC/redacted_username_2,"group redacted_group_name_4=U/redacted_username_2"}
...
(172 rows)

jml avatar Mar 04 '19 07:03 jml