/[rserv]/doc/eRserver.ChangeLog
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Annotation of /doc/eRserver.ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations)
Tue Aug 5 09:52:38 2003 UTC (20 years, 10 months ago) by dpavlin
Branch: MAIN
CVS Tags: before_onlytables, before_multmaster, r_0_3, HEAD
rserv 0.2 changes by Nélio Alves Pereira Filho

1 dpavlin 1.1
2     NĆ©lio Alves Pereira Filho
3     nelio@ime.usp.br
4    
5     +-------------------------------------------------------------------------+
6     | AlteraƧƵes na distribuiĆ§Ć£o padrĆ£o do RServ (PostgreSQL-Contrib) |
7     +-------------------------------------------------------------------------+
8    
9     Data: Mon Apr 29 15:32:03 BRT 2002
10    
11    
12     No novo pacote, os seguintes arquivos estĆ£o inclusos:
13    
14     eRserver/bin/ApplySnapshot
15     eRserver/bin/CleanLog
16     eRserver/bin/GetSyncID
17     eRserver/bin/InitRservTest
18     eRserver/bin/MasterAddTable
19     eRserver/bin/MasterDelTable
20     eRserver/bin/MasterInit
21     eRserver/bin/MasterRemove
22     eRserver/bin/MasterSync
23     eRserver/bin/PrepareSnapshot
24     eRserver/bin/Replicate
25     eRserver/bin/RservTest
26     eRserver/bin/SlaveAddTable
27     eRserver/bin/SlaveDelTable
28     eRserver/bin/SlaveInit
29     eRserver/bin/SlaveRemove
30     eRserver/share/RServ.pm
31     eRserver/doc/README.rserv
32     eRserver/doc/eRserver.ChangeLog
33     eRserver/lib/rserv.so
34    
35    
36    
37     + Novos arquivos:
38    
39     eRserver/bin/MasterDelTable:
40     elimina-se uma tabela do sistema de replicaĆ§Ć£o (master).
41     eRserver/bin/MasterRemove:
42     elimina-se todo o sistema de replicaĆ§Ć£o, preservando as
43     outras informaƧƵes da base de dados (master).
44     eRserver/bin/SlaveDelTable:
45     elimina-se uma tabela do sistema de replicaĆ§Ć£o (slave).
46     eRserver/bin/SlaveRemove:
47     elimina-se todo o sistema de replicaĆ§Ć£o, preservando as
48     outras informaƧƵes da base de dados (slave).
49     eRserver/doc/eRserver.ChangeLog:
50     este arquivo.
51    
52    
53    
54     + AlteraƧƵes em arquivos existentes:
55    
56    
57     eRserver/bin/ApplySnapshot:
58     - correĆ§Ć£o de uso de variĆ”vel
59     eRserver/bin/MasterInit
60     - opĆ§Ć£o de se passar o caminho para o shared object
61     rserv.so (opcional).
62     - alteraĆ§Ć£o nas queries feitas no BD para se criar as tabelas.
63     Foram criadas FK entre as tabelas _rserv_.*, de modo a manter
64     a integridade das informaƧƵes aĆ­ contidas.
65     - criaĆ§Ć£o da view _rserv_human_log_ para auxiliar a manutenĆ§Ć£o e
66     visualizaĆ§Ć£o do funcionamento do replicador.
67     - criaĆ§Ć£o da view _rserv_daily_log_ para auxiliar a manutenĆ§Ć£o das
68     transaƧƵes que ocorrem diariamente e seu processo de replicaĆ§Ć£o.
69     eRserver/bin/PrepareSnapshot:
70     - opĆ§Ć£o para se passar o hostname do slave (obrigatĆ³ria).
71     - correĆ§Ć£o para receber um nome de arquivo como parĆ¢metro.
72     eRserver/bin/Replicate:
73     - alteraĆ§Ć£o para determinar o snapshot correto para o slave
74     quando em um ambiente com mĆŗltiplos slaves.
75     eRserver/bin/SlaveInit:
76     - opƧƵes para possibilitar a conexĆ£o com a base servidora.
77     - apĆ³s as configuraƧƵes do slave, adiciona uma entrada no servidor
78     na tabela _rserv_servers_ com seus dados.
79     eRserver/share/RServ.pm:
80     - criaĆ§Ć£o da funĆ§Ć£o GetSlaveId, que retorna o identificador de
81     um dado servidor slave.
82     - alteraĆ§Ć£o de query na funĆ§Ć£o PrepareSnapshot, para evitar a
83     duplicidade de informaƧƵes e replicaƧƵes.
84    
85    
86    
87     +-------------------------------------------------------------------------+
88     | Testes Realizados no modelo de ReplicaĆ§Ć£o e no rServ |
89     +-------------------------------------------------------------------------+
90    
91     +++ SimulaĆ§Ć£o de Falhas aleatĆ³rias durante a execuĆ§Ć£o da replicaĆ§Ć£o.
92     De acordo com a lĆ³gica interna deste modelo de replicaĆ§Ć£o, foram
93     simuladas possĆ­veis falhas durante sua execuĆ§Ć£o. As falhas eram
94     semelhantes a um situaĆ§Ć£o de queda de conexĆ£o, que poderia ocorrer em
95     vĆ”rias partes do processo.
96    
97     Resultado: o programa se mostrou muito estĆ”vel, pois estava preparado
98     para lidar com tais situaƧƵes. Nenhuma informaĆ§Ć£o foi perdida
99     e/ou corrompida.
100    
101    
102     +++ SimulaĆ§Ć£o de um nĆŗmero muito grande de inserƧƵes concorrentes na base, com
103     o mecanismo de replicaĆ§Ć£o ativado uma vez por minuto, para mais de uma base.
104     Especificamente, foram 10 processos concorrentes, cada um realizando 500
105     inserƧƵes, sendo que todas deveriam ser replicadas para duas bases.
106    
107     Resultado: As inserƧƵes sĆ£o efetuadas corretamente. Devido ao fato da
108     replicaĆ§Ć£o ocorrer simultaneamente para mais de uma base,
109     ocorria uma interferĆŖncia de um processo no outro, que resultava
110     em um erro de replicaĆ§Ć£o.
111    
112     ResoluĆ§Ć£o: Associar valores Ćŗnicos e independentes para cada processo de
113     replicaĆ§Ć£o.
114    
115    
116     +++ CĆ”lculo de limites do rserv, quando utilizado muitas vezes.
117     De acordo com a lĆ³gica interna, certos contadores sĆ£o utilizados e estes
118     poderiam comprometer a replicaĆ§Ć£o, desde que seus limites fossem estourados.
119    
120     Resultado: pelos limites dos contadores, um sistema em produĆ§Ć£o mĆ”xima
121     rServ (uma replicaĆ§Ć£o por minuto) pode funcionar por mais de
122     4000 anos.
123    
124    
125     +++ Teste de replicaĆ§Ć£o de uma tabela do servidor que nĆ£o foi configurada no
126     cliente.
127    
128     Resultado: houve a indicaĆ§Ć£o de erro por parte do rserv, pois este se
129     baseava somente na configuraĆ§Ć£o do servidor.
130    
131     ResoluĆ§Ć£o: no momento de se preparar a lista de alteraƧƵes a serem
132     replicadas, hĆ” uma consulta tanto na configuraĆ§Ć£o do servidor
133     como na do cliente, a fim de trocar as informaƧƵes somente das
134     tabelas desejadas.
135    
136    
137     +++ ExecuĆ§Ć£o simultĆ¢nea do processo de replicaĆ§Ć£o para a mesma base.
138    
139     Resultado: erro aletĆ³rio.
140    
141     ResoluĆ§Ć£o: verificaĆ§Ć£o inicial se algum processo de replicaĆ§Ć£o jĆ” estĆ”
142     sendo executado.
143    
144    
145    
146     +--------------------------------------------------------------------------+
147     | AlteraƧƵes no DataBase existente para contemplar exigĆŖncias do rServ |
148     +--------------------------------------------------------------------------+
149    
150     Como descrito na documentaĆ§Ć£o do rserv, Ć© necessĆ”rio existir um campo Ćŗnico
151     por tabela. Tal campo Ć© usado para identificar a linha e questĆ£o e fazer as
152     atualizaƧƵes necessĆ”rias.
153     Para contemplar tal exigĆŖncia, foi criado um campo chamado 'id', com tipo
154     serial em cada tabela, com a restriĆ§Ć£Ć£o de nĆ£o poder ser null.

  ViewVC Help
Powered by ViewVC 1.1.26