Find

Article
· Aug 16, 2024 3m read

Como identificar quais globais temporárias estão consumindo espaço na base de dados IRISTEMP

Rubrica InterSystems FAQ 

Globais temporárias armazenadas nas bases de dados IRISTEMP/CACHETEMP são usadas quando um processo não precisa guardar dados indefinidamente, mas requere a poderosa performance das globais. As bases de dados IRISTEMP/CACHETEMP não são jounralizadas, então usar globais temporárias não cria arquivos de journal.

O sistema usa as bases de dados IRISTEMP/CACHETEMP para armazenamento temporário e estão disponíveis para usuários para o mesmo objetivo.

Para mais informações sobre globais temporárias e a base de dados IRISTEMP, veja o documento a seguir:
Globais Temporárias e a Base de Dados IRISTEMP

As globais usadas como temporárias são:

1. Globais temporáriass de sistema (^IRIS.Temp*, ^%cspSession, ^CacheTemp*, ^mtemp*, etc.)
2. Globais temporárias mapeadas para IRISTEMP/CACHETEMP pelo usuário
3. 
Globais privadas por processo  (^||name, ^|"^"|name, ^["^"]name, ^["^",""]name, etc. )
4. Tabela de GLOBAL TEMPORÁRIA

 -> A definição da tabela é persistente (disponível para todos os processos) e os dados da tabela são guardados em globais privadas por processo (duram apenas pela duração do processo)

Os tamanhos de 1 e 2 podem ser checados usando a utilidade ^%GSIZE.

USER>do ^%GSIZE

Directory name: c:\intersystems\iris\mgr\user\ => c:\intersystems\iris\mgr\iristemp\
                                               // Especifique a pasta da base de dados iristemp
All Globals? No => yes       // Sim para mostrar todas as globais: 34 itens selecionados
34 available globals
Show details?? No => No   // Não para não mostrar informações detalhadas
Device:
Right margin: 80 =>

3,4 Globais privadas por processo podem ser vistas usando a utilidade ^GETPPGINFO.

Para mais informações sobre a utilidade ^GETPPGINFO, veja os documentos a seguir:
Sobre a utilidade ^GETPPGINFO [IRIS]
Sobre a utilidade ^GETPPGINFO

O exemplo que se segue lista as globais privadas por processo de todos os processos atuais:

 set ^||flintstones(1)="Fred"
 set ^||flintstones(2)="Wilma"
 znspace "%SYS"
 do ^GETPPGINFO("*")

Outro método é exibir os conteúdos de processos individuais que usam globais privadas por processo em grandes quantidades.

A seguir, uma amostra que exibe o número de blocos de globais privadas por processo que sejam maiores ou iguais a 20, de cada processo.

 set ns=$namespace
 znspace "%SYS"
 
 // Somente incluídos os processos com mais blocos PPG que o número total de processos
 set st=##class(%SQL.Statement).%New()
 set status=st.%PrepareClassQuery("%SYS.ProcessQuery","AllFields")
 set rs=st.%Execute()
 while rs.%Next() {
    set pid=rs.%Get("Pid") // ID do processo
    set cnt=rs.%Get("PrivateGlobalBlockCount") // Número total de blocos PPG
    
    // Quando o número de blocos PPG por processo é 0 ou mais, os conteúdos são exibidos (o exemplo a seguir mostra 20 ou mais blocos).
    if cnt > 20 {
       set rs2=##class(%ResultSet).%New("%SYS.ProcessQuery:PPG")
       // "N" Não retorna subscritos de um PPG, somente o nome da raiz
       // "B" Returna o número de blocos usados pelo PPG (precisa da opção "N")
       do rs2.Execute("*",pid,"NB")
       for {
          quit:'rs2.Next()
          write cnt_" PID:"_pid_", PPG name "_rs2.GetData(1)_" is using "_rs2.GetData(3)_" disc blocks",!
       }
    }
 }
 
 znspace ns
Discussion (0)1
Log in or sign up to continue
InterSystems Official
· Aug 16, 2024

Alerta: Corrupção do Banco de Dados com Bancos de Dados de Vários Volumes após Truncamento

Alerta: Corrupção do Banco de Dados com Bancos de Dados de Vários Volumes após Truncament

A InterSystems corrigiu um defeito que pode causar corrupção de banco de dados ou erros <DISKHARD> com bancos de dados multivolume em circunstâncias extremamente raras. Somente bancos de dados que foram truncados estão em risco.
 

O defeito existe nos seguintes produtos e em quaisquer ofertas da InterSystems baseadas neles:

  • InterSystems IRIS® – 2024.1, 2024.1.1 e 2024.2
  • InterSystems IRIS® for Health – 2024.1, 2024.1.1 e 2024.2
  • HealthShare® Health Connect – 2024.1, 2024.1.1 e 2024.2

Nenhum produto HealthShare Solutions é afetado por esse defeito.

Embora a InterSystems não tenha recebido nenhum relato de clientes sobre esse defeito, recomendamos a seguinte mitigação temporária para evitar o problema:

  • Não trunque bancos de dados multivolume.
  • Não crie um novo volume para um banco de dados de volume único ou multivolume que você tenha truncado desde a última vez que o banco de dados foi montado. Para desabilitar a criação automática, defina o parâmetro de configuração New Volume Threshold = 0. Observe que definir esse parâmetro não impede a criação manual de novos volumes.

A correção para esse defeito é identificada como DP-433375. Ela será incluída em todas as versões futuras e também está disponível via distribuição Ad hoc.

Caso tenha alguma dúvida sobre este alerta, entre em contato com o Centro de Resposta Mundial (WRC - Worldwide Response Center).
 

Discussion (0)1
Log in or sign up to continue
InterSystems Official
· Aug 16, 2024

A versão prévia do desenvolvedor do InterSystems IRIS & IRIS for Health 2024.3 já está disponível

A primeira prévia para desenvolvedores do InterSystems IRIS 2024.3 e do InterSystems IRIS for Health 2024.3 foi publicada no site de prévia para desenvolvedores do WRC. Os contêineres podem ser encontrados em nosso registro de contêineres e são marcados como última prévia.


Esta é uma versão muito inicial no ciclo de lançamento e não há nenhum recurso digno de “destaque” que esteja completo. Eles começarão a chegar em versões de pré-visualização futuras.
 

A documentação inicial pode ser encontrada nos links abaixo

Disponibilidade e Informações do Pacote

Esta versão vem com pacotes de instalação clássicos para todas as plataformas suportadas. Para uma lista completa, consulte o documento Plataformas Suportadas.

Pacotes de instalação e chaves de pré-visualização estão disponíveis no site de download de pré-visualização do WRC ou no site de serviços de avaliação (marque a caixa "Mostrar software de pré-visualização").

Discussion (0)1
Log in or sign up to continue
InterSystems Official
· Aug 16, 2024

InterSystems IRIS & IRIS for Health 2024.3 developer preview ya disponible

La vista previa para desarrolladores de InterSystems IRIS 2024.3 e InterSystems IRIS for Health 2024.3 ha sido publicada en el WRC developer preview siteLos contenedores están disponibles en nuestro container registry están etiquetados como latest-preview.

Esta es una versión muy temprana en el ciclo de lanzamiento y no hay características destacadas que estén completas. Estas comenzarán a aparecer en futuras versiones de vista previa.

La documentación inicial se puede encontrar en los siguientes enlaces.

Disponibilidad e Información de Paquetes

Esta versión incluye paquetes de instalación clásicos para todas las plataformas soportadas. Para una lista completa, consulta el documento de Supported Platforms document.

Los paquetes de instalación y las claves de vista previa están disponibles en preview download site a través de evaluation services website (marca la casilla "Mostrar Software de Vista Previa").

Discussion (0)2
Log in or sign up to continue
Article
· Aug 16, 2024 1m read

Première « recherche vectorielle » sur IRIS

Il existe de nombreux articles communautaires intéressants concernant la « recherche vectorielle sur IRIS » et des exemples dans OpenExchange. Chaque fois que je les vois, je suis ravi de savoir que tant de développeurs essaient déjà les vecteurs sur IRIS !

Mais si vous n'avez pas encore essayé la « recherche vectorielle sur IRIS », donnez-moi une minute 😄 Je crée une classe IRIS - et avec une seule classe IRIS, vous pouvez voir comment vous placez les données vectorielles dans votre base de données IRIS et comment vous les comparez dans votre application.

Vous pouvez voir le code source de OpenExchange « First-Vector-Search-on-IRIS ».

---

(1) Cette classe comprend deux propriétés

  • "feedback" as %String
  • "feedbackv" as %Vector (valeur vectorielle), générée à partir de "feedback".

      

(2) Cette classe possède la méthode « search », qui renvoie les lignes dans l'ordre de « meilleur retour » avec le vecteur de comparaison « feedbackv ».

 

---

Le guide étape par étape est décrit sur la page OpenExchange.

J'espère que mon exemple et d'autres excellents articles de la communauté vous encourageront à essayer la recherche vectorielle sur notre produit !

Discussion (0)1
Log in or sign up to continue