Este artigo est� escrito em Ingl�s e Portugu�s
English version:
My articles backlog keeps increasing, but there are things I can't miss. One of them is the availability of another fixpack of Informix.
The latest one is 11.70.xC3. I spot it on FixCentral a couple of days ago and PDF documentation is already available. InfoCenter is also updated.
As usual there are big news and smaller ones. It really depends on your needs and cares. The follwoing is a straight copy/paste from its release notes:
- Administration
- Automatic read-ahead operations
- Configuring the server response to low memory
- Reserving memory for critical activities
- Connection Manager enhancements
- Enhancements to the OpenAdmin Tool
- Embeddability
- Managing message logs in embedded and enterprise environments
- Developing
- Built-in SQL compatibility functions for string manipulation and trigonometric support
- High availability clusters and Enterprise Replication
- Automatically connecting to a grid
- Code set conversion for Enterprise Replication
- Enhancements to the Informix Replication plug-in for OAT
- Security
- Non-root installations support shared-memory and stream-pipe connections
- Retaining numbers for audit log files
- Restrict operating system properties for mapped users
- Time Series data
- Simplified handling of time series data
- Informix TimeSeries plug-in for OAT
The possibility of configuring read ahead automatically is great. Let's be honest: How many of us ever really mastered the traditional configuration? Personally I can tell you that a few years ago I tried it in a very controlled environment and I gave up. I could not spot any difference in my tests and over the years I've seen contradictory statements on how it should be setup. So it's a great pleasure to see it can be automatic now.
Server response in a low memory situation is also a great new feature. In cases where I have more than one instance on the same server I insist on setting up SHMTOTAL so that I can isolate any issue caused by excessive memory consumption. This prevents the situation from affecting other instances.
But even so it was usual to see undesirable behaviors on the instance consuming too much memory. And this is easy to understand, because to fix something (rollback, monitor etc.) you still need memory. If you've run out of it, your ability to solve it is constrained.
What IBM did now is give you the ability to reserve some memory, to deal with lack of memory. Seems pretty obvious right? But IBM did more. When you hit the pre-configured thresholds the engine can automatically run some tasks that will allow it to free some memory. So, again, more automation, easier to use in embedded scenarios and more robustness
Connection manager suffered some big changes. Sincerely I need more time to figure them out, but the idea is that a unique connection manager can be used to deal with different needs (high availability, grid, server sets and ER. The configuration file has changed.
As usual, OAT has been changed to accommodate the server side improvements. Several new options are available to deal with log file rotation, low memory conditions setup, lock monitoring (inspired on a plugin initially created by me which is available on the IIUG software repository) and a new plugin to handle TimeSeries.
Several new SQL functions were introduced. This is something that could be solved (most of them could be easily created), but that hurt the new users experience and portability efforts. I would like to see much more in this area...
One interesting new feature is the possibility to configure ER between servers with different codesets. This opens some interesting possibilities for example if you need to convert the codeset of a large database.
Timeseries was also improved, revealing it's one very important aspect of the latests releases.
Finally several security related changes, like improvements for servers in "non-root" installations and for instances configured with mapped users.
I usually concentrate only on the server side improvements, but this time I want to mention a trivial, but long desired change in Client SDK: It now includes dbaccess, the simple but very handy tool. Of course people would like to see a fancy GUI tool on Windows (or even other environments using Java), but that would be much harder, and would certainly increase the footprint.
This is a quick solution for a long lasting problem: the client did not include any query tool. I would vote for the inclusion of other traditional "server side" tools like dbschema and dbload.
Vers�o Portuguesa
O meu atraso na escrita de artigos continua a aumentar, mas h� algumas coisas que n�o posso deixar passar. Uma delas � a disponibilidade de outro fixpack Informix.
O �ltimo � o 11.70.xC3. Encontrei-o h� dois dias no site FixCentral e a documenta��o em PDF j� est� dispon�vel. O InfoCenter tamb�m j� est� actualizado
Como de costume h� grandes novidades e pequenas novidades. Tudo depende das necessidades e preocupa��es de cada um. O seguinte � a tradu��o t�o fiel quanto poss�vel das novidades especificadas nas notas deste fixpack:
- Administra��o
- Opera��es autom�ticas de read-ahead
- Configura��o da reac��o do servidor a situa��es de escassez de mem�ria
- Reservar mem�ria para actividades criticas
- Melhorias no Connection Manager
- Melhorias no OpenAdmin Tool
- Funcionalidades de inclus�o da base de dados em ambientes fechados
- Gest�o de logs de mensagens em ambientes embebidos e empresariais
- Desenvolvimento
- Fun��es SQL de compatibilidade e manipula��o de strings e suporte trigonom�trico
- Clusters de alta disponibilidade e Enterprise Replication
- Conex�o autom�tica a uma grid
- Convers�o de mapas de caracteres para Enterprise Replication
- Melhorias no plugin de replica��o Informix para o OAT
- Seguran�a
- Instala��es Non-root suportam conex�es shared-memory e stream-pipe
- Reten��o de n�meros para os logs de audit
- Restri��o de propriedades de sistema operativo para utilzadores mapeados
- Dados Time Series
- Gest�o simplificada de dados Time Series
- Plugin do OAT para Informix TimeSeries
A possibilidade de configurar o read ahead automaticamente parece-me �ptima! Sejamos honestos: Quantos de n�s conseguiram realmente dominar a configura��o tradicional? Pessoalmente posso dizer que h� alguns anos atr�s tentei num ambiente bastante controlado e desisti. N�o consegui identificar diferen�as sens�veis nos meus testes, e ao longo dos anos vi indica��es contradit�rias sobre como isto deveria ser configurado. Por isso � com muita satisfa��o que vejo que agora pode ser automatizado.
Poder configurar a reac��o do servidor em situa��es de escassez de mem�ria � outra excelente melhoria. Em ambientes onde tenha mais que uma inst�ncia por servidor, eu insisto em definir o SHMTOTAL, para que possa isolar qualquer problema causado por excesso de consumo de mem�ria. Isto previne que a situa��o afecte as outras inst�ncias (ou no limite a pr�pria m�quina). Mas mesmo assim era habitual vermos comportamentos n�o desejados numa inst�ncia que consumisse muita mem�ria. E isto � f�cil de entender, porque para corrigir alguma coisa (efectuar um rollback, monitorizar etc.) � necess�ria mem�ria. Se j� a esgot�mos, a capacidade de resolver o problema � afectada.
O que a IBM fez agora foi dar-nos a capacidade de reservar alguma mem�ria para lidar com a falta de mem�ria. Parece bastante �bvio, certo? Mas a IBM fez mais. Quando atingimos os limites pr�-configurados, o motor pode automaticamente executar algumas tarefas que lhe permitir�o libertar mem�ria. Portanto, mais uma vez, mais automatiza��o o que torna mais f�cil usar o Informix em ambientes embebidos e aumenta a robustez.
O Connection Manager sofreu grandes altera��es. Sinceramente necessito de mais tempo para as analisar, mas a ideia � que um �nico connection manager pode ser usado para lidar com diferentes necessidades (alta disponibilidade, grid, server sets, e Enterprise Replication). O formato do ficheiro de configura��o foi alterado.
Como vem sendo habitual, o Open Admin Tool (OAT) foi alterado para acomodar as melhorias introduzidas no servidor. Novas op��es est�o dispon�veis para lidar com rota��o de ficheiros de log, configura��o de condi��es de escassez de mem�ria, monitoriza��o de locks (inspirado num plugin inicialmente criado por mim e dispon�vel no reposit�rio do IIUG) e um novo plugin para lidar com TimeSeries.
V�rias novas fun��es SQL foram introduzidas. Isto � algo que poderia ser resolvido pelo utilizador (a maioria destas podia ser facilmente criada), mas isso dificultava a vida a novos utilizadores e tinha impacto na portabilidade de aplica��es. Gostaria de ver muito mais evolu��o neste aspecto...
Uma funcionalidade interessante � a possibilidade de configurar Enterprise Replication (ER) entre bases de dados que utilizem diferentes mapas de caracteres.
Isto abre possibilidades interessanes se por exemplo necessitar-mos de converter um mapa de caracteres de uma base de dados grande.
O TimeSeries tamb�m foi melhorado, revelando que � um dos aspectos mais importantes das �ltimas vers�es.
Finalmente, algumas mudan�as na �rea de seguran�a, como melhorias em servidores instalados como "non-root" e para inst�ncias configuradas com utilizadores mapeados.
Habitualmente concentro-me apenas nas melhorias do lado do servidor, mas desta vez tenho de mencionar um mudan�a trivial, mas h� muito desejada no Client SDK: Passou a incluir o dbaccess, a ferramenta simples, mas muito �til de interroga��o da base de dados. Claro que todos gostar�amos de ver uma ferramenta gr�fica nos ambientes Windows (ou mesmo em todos os ambientes, baseado em Java por exemplo), mas a verdade � que isso necessitaria de um esfor�o muito maior e iria aumentar significativamente a dimens�o do cliente.
Isto � uma solu��o r�pida para um problema que existia h� muito tempo: o cliente n�o inclu�a nenhuma ferramenta de interroga��o da base de dados. Eu votaria a favor da inclus�o de outras ferramentas "tradicionais" do servidor como o dbschema e dbload.