Du bruger DROP med CASCADE-indstillingen. Så enhver dråbe tabeller med referentiel integritet vil også droppe den underordnede tabel, der er knyttet til den overordnede tabel.
For at fejlfinde, hvis det faktisk er det, der sker, skal du, før du kører din kode, tage et øjebliksbillede af eksisterende tabeller med deres OID (jeg tror, pg_tables eller pg_relations skal have denne information). Kør koden, og kontroller OID'et for fejlmeddelelsen med øjebliksbilledet for tabelnavnet.
Edit:Det kan være fordi, hvordan planer cachelagres i PostgreSQL (altså i Redshift) for funktioner. Dette er en dokumenteret fejl indtil 8.2, så du vil måske søge efter en rettelse til den. Planen vil blive cachelagret i henhold til den første udførelse af funktionen, men for den anden udførelse ville nogle af objekterne have fået nye OID'er på grund af at blive genskabt.http://merlinmoncure.blogspot.ie/2007/09/as-previously-stated-postgresql-8.html
http://www.postgresql.org/exampleage-id.org/mes @sqldat.com