Encontrar

Pregunta
· 21 feb, 2025

SQL Table - Data Cleanup

Hi Community,

I've created a method in my File Service to do a cleanup for every file load. Currently, I've set it to delete data when LastUpdated date is greater than maxdate. However, I want to do a cleanup for every new file load. Any suggestions or advice on how to do this? Thanks!

 

Method Cleanup()
{

   Set tMaxDate = ""
   &SQL(SELECT Max(LastUpdated) into :tMaxDate
   FROM MC_Table_Data.Patient) 
 

   &SQL(DELETE MC_Table_Data.Patient WHERE LastUpdated<:tMaxDate)
}

Comentarios (0)1
Inicie sesión o regístrese para continuar
Artículo
· 21 feb, 2025 Lectura de 4 min

Controlando o IRISTEMP: Pare de Deixar Que Ele Ocupe Todo o Seu Armazenamento!

Introdução: Quando o IRISTEMP Armazena Dados Demais

Então, você verificou seu servidor e viu que o IRISTEMP está crescendo demais. Não precisa entrar em pânico. Vamos investigar o problema antes que seu armazenamento acabe.

Passo 1: Confirmar o Problema de Crescimento do IRISTEMP

Antes de assumir que o IRISTEMP é o problema, vamos verificar seu tamanho real.

Verificar o Espaço Livre

Execute o seguinte comando no terminal IRIS:

%SYS>do ^%FREECNT

Quando solicitado, digite:

Database directory to show free space for (*=All)? /<your_iris_directory>/mgr/iristemp/

Se a saída mostrar muito pouco espaço livre, o IRISTEMP está enchendo seu armazenamento como um armário superlotado. Mas se o espaço livre estiver bom, mas o arquivo de banco de dados IRISTEMP (IRIS.DAT) ainda for enorme (que é provavelmente por isso que você está aqui), significa que os dados temporários já foram limpos. Nesse caso, sua missão é ficar de olho nas coisas, seguir os passos abaixo para pegá-lo em flagrante na próxima vez e recuperar esse espaço precioso.

Passo 2: Identificar o que está usando o IRISTEMP

Execute ^%GSIZE para encontrar Globais Grandes

%SYS>do ^%GSIZE

Siga as instruções:

Directory name: /<your_iris_dir>/mgr/iristemp/

All Globals? No => yes

33 items selected from
33 available globals

1) Get exact packing details
2) Get block counts only
3) Use fast stochastic estimate

Please select an option:  3 => 3

Exemplo de saída:

        Global              Blocks          Bytes Used Packing
      ----------- ---------------- ------------------- -------
      IRIS.Temp.Ensemble
                                1                  60      1 %
      IRIS.Temp.MARIO
                               50             360,960     88 %
      IRIS.Temp.RecompileInfo
                                1                  84      1 %

Se você vir algo desconhecido, especialmente relacionado a ISC ou SQL, pode ser que consultas SQL estejam usando muito espaço. Verifique com os desenvolvedores do aplicativo para ver o que essas consultas estão fazendo e se elas podem ser otimizadas. Às vezes, adicionar um índice ou remover uma cláusula ORDER BY desnecessária pode fazer uma grande diferença.

Passo 3: Verificar Globais Privadas de Processo (PPGs)

Globais Privadas de Processo (PPGs) podem não ser liberadas corretamente por alguns processos. Execute:

%SYS>DO ^GETPPGINFO

Exemplo de saída:

%SYS> DO ^GETPPGINFO("*")
Process ID: 303 --> Total PPG Block count 10840
  ^||%t uses 10838 blocks (maxblock #1926355)
  ^||TempQuery uses 2 blocks (maxblock #115489)
  Highest block #: 1926355
Process ID: 33456 --> Total PPG Block count 45343
  ^||MARIOtest uses 45343 blocks (maxblock #1927313)
  Highest block #: 1927313

Se um processo estiver usando muito espaço de PPG, ele pode estar travado ou não funcionando como esperado. Você deve investigar com os desenvolvedores do aplicativo para verificar se os PPGs são conhecidos e se há algo quebrado no código. Da mesma forma, se o PPG não for conhecido e parecer código interno da InterSystems (por exemplo, ^||%t), é melhor você abrir um caso de suporte WRC pedindo ajuda.

Torne-se um especialista em GETPPGINFO lendo a documentação oficial.

Passo 4: Corrigir o Problema

Opção 1: Parar o Processo

Uma vez que você identificou o processo consumindo o IRISTEMP, se você sabe o que ele está fazendo e considera seguro, você pode usar o Portal de Gerenciamento do Sistema ou o terminal para pará-lo. Do terminal, você pode encontrar o trabalho e terminá-lo:

%SYS>do ^JOBEXAM

Encontre o número do trabalho e execute:

%SYS>DO ^RESJOB
 
Force a process to quit InterSystems IRIS
 
Process ID (? for status report): 7732

Process ID (? for status report):
 
%SYS>

⚠️ Pare um processo apenas se você o conhecer e tiver certeza de que é seguro fazê-lo!

Opção 2: Reiniciar o IRISTEMP e Definir Limites

Para limpar o IRISTEMP, pare o Iris, remova seu arquivo IRIS.DAT e reinicie:

iris stop <instance_name>
rm /<iris_directory>/mgr/iristemp/IRIS.DAT
iris start <instance_name>

Para impedir que ele cresça demais, defina um limite na sua configuração do IRIS:

[Startup]
MaxIRISTempSizeAtStart=5000

Consulte a documentação oficial sobre MaxIRISTempSizeAtStart para obter mais detalhes. Além disso, há outros artigos com mais detalhes na comunidade: Como Reduzir o IRISTEMP

Opção 3: Versão antiga? Atualize!

Se você estiver executando uma versão antiga do Iris, atualize! Por exemplo, lembro-me de termos corrigido um bug na versão 2021.1.1+ onde o IrisTemp podia crescer descontroladamente. Atualizar e estar nas versões de manutenção mais recentes é a melhor maneira de evitar bugs conhecidos.

Conclusão: Mantenha o IRISTEMP Sob Controle

Seguindo estes passos, você pode:
✅ Encontrar o que está usando o IRISTEMP com ^%GSIZE e ^GETPPGINFO
✅ arar processos conhecidos que ocupam muito espaço PPG
✅ ecuperar o espaço definindo limites ou recriando o banco de dados IrisTemp.

Atualizar! Isto é sempre recomendado!

Ao fazer isto, você pode manter o IRISTEMP sob controle e evitar problemas de armazenamento. 🚀

Comentarios (0)1
Inicie sesión o regístrese para continuar
Pregunta
· 21 feb, 2025

Problem sending Mail via smtp-mail.outlook.com / OAUTH2 as SMTP or JSON

Hi,

I do have the problem to send mails to outlook after getting the new OAUTH2 token. 

 I have no problem getting the token, but after I got the token I try to send the mail thru smtp but authorization failed , please see my try to send the token thru the %Net.Authenticator mechanism %Net.SASL.XOAUTH2

Is this ok?

Or is there an other method to authenticate using the needed bearer method instead of user/pwd with the authenticator? 

 

 ....code to get the token is working..

...   set s=##class(%Net.SMTP).%New()
    
    set m=##class(%Net.MailMessage).%New()
    
    set auth=##class(%Net.Authenticator).%New() 
    set auth.UserName="user@..."
    
    set meth=##class(%Net.SASL.XOAUTH2).%New()
    set meth.MechanismName="XOAUTH2"
    set meth.AccessToken=".....the token i got from Microsoft....sadfsafasdfasdfasdfasdfsdfs...."
    
    set auth.Mechanism=meth

    set auth.ServiceName="smtp"
    
    set s.authenticator=auth
    set s.port=587
    set s.SSLConfiguration="ISC.FeatureTracker.SSL.Config"
    set s.UseSTARTTLS=1

           
    set m.Subject=SUBJECT                     
    set m.Charset="iso-8859-1"
    set m.IsHTML=1
    ...etc all other smtp properties....
    

Comentarios (0)1
Inicie sesión o regístrese para continuar
Artículo
· 21 feb, 2025 Lectura de 3 min

How to shoot a good video for the article contest bonus - Part 3 What to consider during editing

Hello Community:

Let's go with the last article on how to record yourselves for the Article Contest video bonus.

I'm not going to go into how to do very specific things in editing because it varies depending on the program you use. The keyboard shortcuts and menus are different, but the concept is the same. You are going to use a programme to organise the recorded material, remove the excess and give it structure. Many of these softwares are free (Capcut, Canva and if I'm not mistaken DaVinci had a free version). I've been editing with Adobe Premiere for almost ten years now (wow, I'm getting old), so if you have any questions about this software, feel free to write to me.

Here are some concrete tips:

ORGANISE YOURSELF AND GET ALL THE MATERIAL BEFORE YOU START

This is the advice of years of work. Once you open the programme it's non-stop editing (until dinner time, that is). I'm a fan of doing things one at a time, so the first thing to do is to collect all the material. Once you have everything organised in folders on your computer: music, video clips, screenshots? open the programme and get started.

THE SCRIPT IS YOUR FRIEND AGAIN

Let's remember the importance of structure. Doing a quick read through of the script again is worthwhile. Remember: an introduction with a hook, a step-by-step development and a closing that answers the question of the introduction. Now is the time to execute it.

REMOVE WITHOUT FEAR. ELIMINATES NOISE.

One thing you realise over time is that you think everything you've recorded is worthwhile. This is often not correct. Take away without fear. It has to be fluid, dynamic. Remove a 5-second pause if you're silent thinking about how to say something. If you can't be seen on camera while you're speaking, you can remove the noises and mumbling, i.e. cut the audio track so that everything is much cleaner.

A question that may help you: does this part really interest whoever is watching the video? If not, remove it. If it doesn't, remove it. I'm not talking about gags or jokes, I'm talking about redundancies, silences or loading times.

FREE IMAGE LIBRARIES

Have you thought about it? There are free image libraries where you can take images to make your video more attractive. Be careful because in the small print it usually says that you have to mention where the images have been taken from. Here are some of them:

BALANCED MUSIC AND AUDIO

This is an important point. Adding music will add a layer of depth and relax the viewer. It is important that it does not cover your voice. You can find free music in libraries, just like in the images.

CHECK IT BEFORE EXPORTING

Do not be overconfident. Before exporting, take a look at it. Give it a play. It will save you time. It has already happened to me many times that I have had to open the programme again and change things because I said ‘I'll export and I'll check it later’. It's not the most efficient thing to do.


This concludes the tips for the video bonus. I wish you all the best of luck in the English contest and I encourage you to keep the Spanish contest in mind in May.

See you soon :)

Comentarios (0)1
Inicie sesión o regístrese para continuar
Artículo
· 21 feb, 2025 Lectura de 3 min

Cómo grabar un buen vídeo para el concurso de artículos - Parte 3 Qué tener en cuenta durante la edición

Hola Comunidad:

Vamos con el último artículo de cómo grabaros para el bonus de vídeo del Concurso de Artículos. 

No voy a entrar en cómo se hacen en edición cosas muy concretas porque varían según el programa que utilicéis. Los atajos de teclado y menús son diferentes, pero el concepto es el mismo. Vais a utilizar un programa para organizar el material grabado, eliminar lo que sobra y darle estructura. Muchos de estos softwares son gratuitos (Capcut, Canva y si no me equivoco DaVinci tuvo una versión gratuita). Yo edito con Adobe Premiere desde hace ya casi diez años (wow me hago viejo) así que si tenéis dudas de ese programa escribidme sin poblemas.

Ahí van algunos consejos concretos:

ORGANÍZATE Y CONSIGUE TODO EL MATERIAL ANTES DE EMPEZAR

Esto es consejo de años trabajando. Una vez que abrís el programa es para editar sin parar (hasta la hora de la cena, ahí sí se puede). Soy fan de hacer las cosas de una en una, así que primero es recoger todo el material. Una vez tenéis todo organizado en carpetas en el ordenador: música, clips de vídeo, capturas de pantalla... abrís el programa y al lío.

EL GUION VUELVE A SER TU AMIGO

Recordemos la importancia de la estructura. Hacer una lectura rápida del guion otra vez vale la pena. Recordad: una introducción con un gancho, un desarrollo paso a paso y un cierre que responda a la pregunta de a introducción. Es ahora el momento de ejecutarlo.

QUITA SIN MIEDO. ELIMINA RUIDOS.

Una cosa que te das cuenta con el tiempo es que piensas que todo lo que has grabado vale la pena. No suele ser correcto. Quita sin miedo. Tiene que ser fluido, dinámico. Elimina una pausa de 5 segundos si estás callado pensando cómo se decía una cosa. Si no se te ve en cámara mientras hablas puedes eliminar los ruidos y muletillas, es decir, cortar la pista de audio para que esté todo mucho más limpio.

Una pregunta que te puede ayudar: ¿Realmente esta parte le interesa a quién está viendo el vídeo? Si no es así, quítalo. Si no aporta, mejor elimínalo. No hablo de gags o chistes, hablo de redundancias, silencios o tiempos de carga. 

BIBLIOTECAS DE IMAGEN GRATUITAS

¿Lo habíais pensado? Existen bibliotecas de imagen gratuitas donde podéis coger imágenes para dar más empaque a vuestro vídeo. Ojo porque en la letra pequeña suele poner que hay que mencionar de dónde se han obtenido las imágenes. Os dejo algunas:

MÚSICAS Y AUDIOS BALANCEADOS

Es un punto importante. Añadir una música le dará una capa de profundidad y relajará al espectador. Es importante que no tape vuestra voz. Podéis encontrar músicas gratuitas en bibliotecas, igual que en las imágenes.

REVÍSALO ANTES DE EXPORTAR

No os confiéis. Antes de exportar echadle un vistazo. Dadle un play. Os ahorrará tiempo. Ya me ha pasado muchas veces que me ha tocado abrir otra vez el programa y cambiar cosas por decir "exporto y ya lo reviso". No es lo más eficiente.


Con esto terminaríamos los consejos para el bonus de vídeo. Os deseo mucha suerte en el concurso en inglés y os animo a que en mayo tengáis presente el concurso en español.

Nos vemos pronto :) 

Comentarios (0)1
Inicie sesión o regístrese para continuar