← Back to Overview

src/backend/commands/alter.c

Coverage: 5/5 lines (100.0%)
Total Lines
5
modified
Covered
5
100.0%
Uncovered
0
0.0%
키보드 네비게이션
ExecRenameStmt() lines 373-462
Modified Lines Coverage: 0/0 lines (0.0%)
LineHitsSourceCommit
373 - ExecRenameStmt(RenameStmt *stmt) -
374 - { -
375 - switch (stmt->renameType) -
376 - { -
377 - case OBJECT_TABCONSTRAINT: -
378 - case OBJECT_DOMCONSTRAINT: -
379 - return RenameConstraint(stmt); -
380 - -
381 - case OBJECT_DATABASE: -
382 - return RenameDatabase(stmt->subname, stmt->newname); -
383 - -
384 - case OBJECT_ROLE: -
385 - return RenameRole(stmt->subname, stmt->newname); -
386 - -
387 - case OBJECT_SCHEMA: -
388 - return RenameSchema(stmt->subname, stmt->newname); -
389 - -
390 - case OBJECT_TABLESPACE: -
391 - return RenameTableSpace(stmt->subname, stmt->newname); -
392 - -
393 - case OBJECT_TABLE: -
394 - case OBJECT_SEQUENCE: -
395 - case OBJECT_VIEW: -
396 - case OBJECT_MATVIEW: -
397 - case OBJECT_INDEX: -
398 - case OBJECT_FOREIGN_TABLE: -
399 - case OBJECT_PROPGRAPH: 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
400 - return RenameRelation(stmt); -
401 - -
402 - case OBJECT_COLUMN: -
403 - case OBJECT_ATTRIBUTE: -
404 - return renameatt(stmt); -
405 - -
406 - case OBJECT_RULE: -
407 - return RenameRewriteRule(stmt->relation, stmt->subname, -
408 - stmt->newname); -
409 - -
410 - case OBJECT_TRIGGER: -
411 - return renametrig(stmt); -
412 - -
413 - case OBJECT_POLICY: -
414 - return rename_policy(stmt); -
415 - -
416 - case OBJECT_DOMAIN: -
417 - case OBJECT_TYPE: -
418 - return RenameType(stmt); -
419 - -
420 - case OBJECT_AGGREGATE: -
421 - case OBJECT_COLLATION: -
422 - case OBJECT_CONVERSION: -
423 - case OBJECT_EVENT_TRIGGER: -
424 - case OBJECT_FDW: -
425 - case OBJECT_FOREIGN_SERVER: -
426 - case OBJECT_FUNCTION: -
427 - case OBJECT_OPCLASS: -
428 - case OBJECT_OPFAMILY: -
429 - case OBJECT_LANGUAGE: -
430 - case OBJECT_PROCEDURE: -
431 - case OBJECT_ROUTINE: -
432 - case OBJECT_STATISTIC_EXT: -
433 - case OBJECT_TSCONFIGURATION: -
434 - case OBJECT_TSDICTIONARY: -
435 - case OBJECT_TSPARSER: -
436 - case OBJECT_TSTEMPLATE: -
437 - case OBJECT_PUBLICATION: -
438 - case OBJECT_SUBSCRIPTION: -
439 - { -
440 - ObjectAddress address; -
441 - Relation catalog; -
442 - -
443 - address = get_object_address(stmt->renameType, -
444 - stmt->object, -
445 - NULL, -
446 - AccessExclusiveLock, false); -
447 - -
448 - catalog = table_open(address.classId, RowExclusiveLock); -
449 - AlterObjectRename_internal(catalog, -
450 - address.objectId, -
451 - stmt->newname); -
452 - table_close(catalog, RowExclusiveLock); -
453 - -
454 - return address; -
455 - } -
456 - -
457 - default: -
458 - elog(ERROR, "unrecognized rename stmt type: %d", -
459 - (int) stmt->renameType); -
460 - return InvalidObjectAddress; /* keep compiler happy */ -
461 - } -
462 - } -
ExecAlterObjectSchemaStmt() lines 535-610
Modified Lines Coverage: 0/0 lines (0.0%)
LineHitsSourceCommit
535 - ExecAlterObjectSchemaStmt(AlterObjectSchemaStmt *stmt, -
536 - ObjectAddress *oldSchemaAddr) -
537 - { -
538 - ObjectAddress address; -
539 - Oid oldNspOid; -
540 - -
541 - switch (stmt->objectType) -
542 - { -
543 - case OBJECT_EXTENSION: -
544 - address = AlterExtensionNamespace(strVal(stmt->object), stmt->newschema, -
545 - oldSchemaAddr ? &oldNspOid : NULL); -
546 - break; -
547 - -
548 - case OBJECT_FOREIGN_TABLE: -
549 - case OBJECT_SEQUENCE: -
550 - case OBJECT_TABLE: -
551 - case OBJECT_VIEW: -
552 - case OBJECT_MATVIEW: -
553 - case OBJECT_PROPGRAPH: 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
554 - address = AlterTableNamespace(stmt, -
555 - oldSchemaAddr ? &oldNspOid : NULL); -
556 - break; -
557 - -
558 - case OBJECT_DOMAIN: -
559 - case OBJECT_TYPE: -
560 - address = AlterTypeNamespace(castNode(List, stmt->object), stmt->newschema, -
561 - stmt->objectType, -
562 - oldSchemaAddr ? &oldNspOid : NULL); -
563 - break; -
564 - -
565 - /* generic code path */ -
566 - case OBJECT_AGGREGATE: -
567 - case OBJECT_COLLATION: -
568 - case OBJECT_CONVERSION: -
569 - case OBJECT_FUNCTION: -
570 - case OBJECT_OPERATOR: -
571 - case OBJECT_OPCLASS: -
572 - case OBJECT_OPFAMILY: -
573 - case OBJECT_PROCEDURE: -
574 - case OBJECT_ROUTINE: -
575 - case OBJECT_STATISTIC_EXT: -
576 - case OBJECT_TSCONFIGURATION: -
577 - case OBJECT_TSDICTIONARY: -
578 - case OBJECT_TSPARSER: -
579 - case OBJECT_TSTEMPLATE: -
580 - { -
581 - Relation catalog; -
582 - Oid classId; -
583 - Oid nspOid; -
584 - -
585 - address = get_object_address(stmt->objectType, -
586 - stmt->object, -
587 - NULL, -
588 - AccessExclusiveLock, -
589 - false); -
590 - classId = address.classId; -
591 - catalog = table_open(classId, RowExclusiveLock); -
592 - nspOid = LookupCreationNamespace(stmt->newschema); -
593 - -
594 - oldNspOid = AlterObjectNamespace_internal(catalog, address.objectId, -
595 - nspOid); -
596 - table_close(catalog, RowExclusiveLock); -
597 - } -
598 - break; -
599 - -
600 - default: -
601 - elog(ERROR, "unrecognized AlterObjectSchemaStmt type: %d", -
602 - (int) stmt->objectType); -
603 - return InvalidObjectAddress; /* keep compiler happy */ -
604 - } -
605 - -
606 - if (oldSchemaAddr) -
607 - ObjectAddressSet(*oldSchemaAddr, NamespaceRelationId, oldNspOid); -
608 - -
609 - return address; -
610 - } -
ExecAlterOwnerStmt() lines 839-929
Modified Lines Coverage: 5/5 lines (100.0%)
LineHitsSourceCommit
839 - ExecAlterOwnerStmt(AlterOwnerStmt *stmt) -
840 - { -
841 - Oid newowner = get_rolespec_oid(stmt->newowner, false); -
842 - -
843 - switch (stmt->objectType) -
844 - { -
845 - case OBJECT_DATABASE: -
846 - return AlterDatabaseOwner(strVal(stmt->object), newowner); -
847 - -
848 - case OBJECT_SCHEMA: -
849 - return AlterSchemaOwner(strVal(stmt->object), newowner); -
850 - -
851 - case OBJECT_TYPE: -
852 - case OBJECT_DOMAIN: /* same as TYPE */ -
853 - return AlterTypeOwner(castNode(List, stmt->object), newowner, stmt->objectType); -
854 - break; -
855 - -
856 - case OBJECT_FDW: -
857 - return AlterForeignDataWrapperOwner(strVal(stmt->object), -
858 - newowner); -
859 - -
860 - case OBJECT_FOREIGN_SERVER: -
861 - return AlterForeignServerOwner(strVal(stmt->object), -
862 - newowner); -
863 - -
864 - case OBJECT_EVENT_TRIGGER: -
865 - return AlterEventTriggerOwner(strVal(stmt->object), -
866 - newowner); -
867 - -
868 - case OBJECT_PUBLICATION: -
869 - return AlterPublicationOwner(strVal(stmt->object), -
870 - newowner); -
871 - -
872 - case OBJECT_SUBSCRIPTION: -
873 - return AlterSubscriptionOwner(strVal(stmt->object), -
874 - newowner); -
875 - -
876 - /* Generic cases */ -
877 - case OBJECT_AGGREGATE: -
878 - case OBJECT_COLLATION: -
879 - case OBJECT_CONVERSION: -
880 - case OBJECT_FUNCTION: -
881 - case OBJECT_LANGUAGE: -
882 - case OBJECT_LARGEOBJECT: -
883 - case OBJECT_OPERATOR: -
884 - case OBJECT_OPCLASS: -
885 - case OBJECT_OPFAMILY: -
886 - case OBJECT_PROCEDURE: -
887 - case OBJECT_PROPGRAPH: 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
888 - case OBJECT_ROUTINE: -
889 - case OBJECT_STATISTIC_EXT: -
890 - case OBJECT_TABLESPACE: -
891 - case OBJECT_TSDICTIONARY: -
892 - case OBJECT_TSCONFIGURATION: -
893 - { -
894 - ObjectAddress address; -
895 - -
896 646 if (stmt->relation) 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
897 - { 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
898 28 Relation relation; 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
899 - 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
900 28 address = get_object_address_rv(stmt->objectType, 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
901 - stmt->relation, 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
902 - NIL, 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
903 - &relation, 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
904 - AccessExclusiveLock, 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
905 - false); 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
906 28 relation_close(relation, NoLock); 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
907 - } 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
908 - else 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
909 - { 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
910 618 address = get_object_address(stmt->objectType, 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
911 - stmt->object, 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
912 - NULL, 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
913 - AccessExclusiveLock, 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
914 - false); 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
915 - } 86c14eaWIP: SQL Property Graph Queries (SQL/PGQ)
916 - -
917 - AlterObjectOwner_internal(address.classId, address.objectId, -
918 - newowner); -
919 - -
920 - return address; -
921 - } -
922 - break; -
923 - -
924 - default: -
925 - elog(ERROR, "unrecognized AlterOwnerStmt type: %d", -
926 - (int) stmt->objectType); -
927 - return InvalidObjectAddress; /* keep compiler happy */ -
928 - } -
929 - } -