UiPath Documentation
orchestrator
2023.10
false

Guía de instalación de Orchestrator

Última actualización 28 de abr. de 2026

Antes de actualizar

Asegúrate de realizar estos pasos antes de actualizar a 2023.4+. Ayudan a garantizar que, una vez finalizada la actualización, pueda empezar en poco tiempo y sin problemas.

  1. Haz una copia de seguridad de tu base de datos para eliminar cualquier riesgo de pérdida de datos.
  2. Ejecute el siguiente script de mantenimiento de la base de datos antes de la actualización.

Este script elimina todas las subvenciones caducadas o consumidas de la base de datos. Esto ayuda a acelerar la clave principal [identity].[PersistedGrants] y la recreación del índice y, como tal, la migración de la base de datos.

DECLARE @Now DATETIME2 = GETUTCDATE()
DECLARE @ConsumedGrantsGracePeriod DATETIME2 = DATEADD(hour, -2, @Now)

DECLARE @ConsumedDeleted int = 1
DECLARE @ExpiredDeleted int = 1
DECLARE @BatchSize int = 500
DECLARE @ConsumedBatchesDeleted int = 0
DECLARE @ExpiredBatchesDeleted int = 0

SET LOCK_TIMEOUT 0
SET DEADLOCK_PRIORITY LOW

WHILE (@ConsumedDeleted=1 OR @ExpiredDeleted=1)
BEGIN

  IF @ConsumedDeleted=1
  BEGIN
    BEGIN TRY
      DELETE TOP(@BatchSize) FROM [identity].[PersistedGrants] WHERE [ConsumedTime] IS NOT NULL AND [ConsumedTime] < @ConsumedGrantsGracePeriod AND [Type] <> 'reference_token'
      IF @@ROWCOUNT = 0
        SET @ConsumedDeleted=0
      ELSE
        SET @ConsumedBatchesDeleted = @ConsumedBatchesDeleted + 1
    END TRY
    BEGIN CATCH
      PRINT 'Failed to delete consumed grants'
    END CATCH
  END

  IF @ExpiredDeleted=1
  BEGIN
    BEGIN TRY
      DELETE TOP(@BatchSize) FROM [identity].[PersistedGrants] WHERE [Expiration] < @Now AND [Type] <> 'reference_token'
      IF @@ROWCOUNT = 0
        SET @ExpiredDeleted=0
      ELSE
        SET @ExpiredBatchesDeleted = @ExpiredBatchesDeleted + 1
    END TRY
    BEGIN CATCH
      PRINT 'Failed to delete expired grants'
    END CATCH
  END

  PRINT 'Consumed batches deleted: ' + CONVERT(nvarchar(32), @ConsumedBatchesDeleted)
  PRINT 'Expired batches deleted: ' + CONVERT(nvarchar(32), @ExpiredBatchesDeleted)

  -- Wait for 10 seconds between deletes
  IF (@ExpiredDeleted=1 OR @ConsumedDeleted=1)
    WAITFOR DELAY '00:00:05.000'

END
DECLARE @Now DATETIME2 = GETUTCDATE()
DECLARE @ConsumedGrantsGracePeriod DATETIME2 = DATEADD(hour, -2, @Now)

DECLARE @ConsumedDeleted int = 1
DECLARE @ExpiredDeleted int = 1
DECLARE @BatchSize int = 500
DECLARE @ConsumedBatchesDeleted int = 0
DECLARE @ExpiredBatchesDeleted int = 0

SET LOCK_TIMEOUT 0
SET DEADLOCK_PRIORITY LOW

WHILE (@ConsumedDeleted=1 OR @ExpiredDeleted=1)
BEGIN

  IF @ConsumedDeleted=1
  BEGIN
    BEGIN TRY
      DELETE TOP(@BatchSize) FROM [identity].[PersistedGrants] WHERE [ConsumedTime] IS NOT NULL AND [ConsumedTime] < @ConsumedGrantsGracePeriod AND [Type] <> 'reference_token'
      IF @@ROWCOUNT = 0
        SET @ConsumedDeleted=0
      ELSE
        SET @ConsumedBatchesDeleted = @ConsumedBatchesDeleted + 1
    END TRY
    BEGIN CATCH
      PRINT 'Failed to delete consumed grants'
    END CATCH
  END

  IF @ExpiredDeleted=1
  BEGIN
    BEGIN TRY
      DELETE TOP(@BatchSize) FROM [identity].[PersistedGrants] WHERE [Expiration] < @Now AND [Type] <> 'reference_token'
      IF @@ROWCOUNT = 0
        SET @ExpiredDeleted=0
      ELSE
        SET @ExpiredBatchesDeleted = @ExpiredBatchesDeleted + 1
    END TRY
    BEGIN CATCH
      PRINT 'Failed to delete expired grants'
    END CATCH
  END

  PRINT 'Consumed batches deleted: ' + CONVERT(nvarchar(32), @ConsumedBatchesDeleted)
  PRINT 'Expired batches deleted: ' + CONVERT(nvarchar(32), @ExpiredBatchesDeleted)

  -- Wait for 10 seconds between deletes
  IF (@ExpiredDeleted=1 OR @ConsumedDeleted=1)
    WAITFOR DELAY '00:00:05.000'

END
  1. Migra tus carpetas clásicas a carpetas modernas, para garantizar ejecuciones ininterrumpidas. Estos son los cambios que puedes esperar en este punto del proceso de eliminación de carpetas clásicas.

¿Te ha resultado útil esta página?

Conectar

¿Necesita ayuda? Soporte

¿Quiere aprender? UiPath Academy

¿Tiene alguna pregunta? Foro de UiPath

Manténgase actualizado