def handle(self, *args, **options):

        self.object_class_file = options["object_class_file"]

        logger.info("OBJECT CLASS FILE: {}".format(self.object_class_file))

        with Timer("Load object classes"):

            try:
                with transaction.atomic():
                    self._perform_load()
                    t = Timer("Commit transaction")
                    t.log_starting_message()
                t.log_success_message()
            except Exception:
                logger.error("ALL CHANGES ROLLED BACK DUE TO EXCEPTION")
                raise

            try:
                self._vacuum_tables()
            except Exception:
                logger.error(
                    "CHANGES WERE SUCCESSFULLY COMMITTED EVEN THOUGH VACUUMS FAILED"
                )
                raise
Example #2
0
    def handle(self, *args, **options):

        self.agency_file = options["agency_file"]
        self.force = options["force"]

        logger.info("AGENCY FILE: {}".format(self.agency_file))
        logger.info("FORCE SWITCH: {}".format(self.force))
        logger.info("MAX CHANGE LIMIT: {}".format(
            "unlimited" if self.force else "{:,}".format(MAX_CHANGES)))

        with Timer("Load agencies"):
            try:
                with transaction.atomic():
                    self._perform_load()
                    t = Timer("Commit agency transaction")
                    t.log_starting_message()
                t.log_success_message()
            except Exception:
                logger.error("ALL CHANGES ROLLED BACK DUE TO EXCEPTION")
                raise

            try:
                self._vacuum_tables()
            except Exception:
                logger.error(
                    "CHANGES WERE SUCCESSFULLY COMMITTED EVEN THOUGH VACUUMS FAILED"
                )
                raise
    def handle(self, *args, **options):

        self.full_reload = options["full_reload"]
        logger.info("FULL RELOAD SWITCH: {}".format(self.full_reload))

        with Timer("Load subawards"):
            try:
                with transaction.atomic():
                    self._perform_load()
                    t = Timer("Commit subaward transaction")
                    t.log_starting_message()
                t.log_success_message()
            except Exception:
                logger.error("ALL CHANGES ROLLED BACK DUE TO EXCEPTION")
                raise