Ir para o conteúdo

 Voltar a OpenACS: Des...
Tela cheia

Upgrade OpenACS Debian 3.1 32 bits

16 de Abril de 2013, 13:32 , por Desconhecido - | 1 Pessoa seguindo este artigo.
Visualizado 45 vezes

Prezado Eduardo e demais colaboradores,

Boa tarde.  Pretendo atualizar o dotlrn2.1.1 compilado e suas dependências para um  SO mais novo, SGBD e dotlrn mais recentes. O cenário atual é o seguinte: dois servidores Debian, ambos 32 bits virtualizados (VMware): versão 3.1 dotlrn 2.11, que batizamos de coptec, todos os pacotes compilados e noutro versão 6.0 com Postgresql 8.1.

Para fins de testes e homologação, o servidor para o qual desejo a atualização (se possível, é claro) é um outro Debian AMD64 bits, VIRTUALBOX, com 2 GB de RAM. Aparentemente, a versão instalada e configurada por apt-get foi bem sucedida. Apontando tudo para localhost, escutando, inclusive em todas as interfaces (0.0.0.0) para acesso remoto, tanto o banco Postgresql-8.4 pelo PGADMIN III quanto a aplicação dotlrn2.5 acessada pelo browser funcionaram de acordo, cuja a interface é muito agradável (tema ZEN). 

Entretanto, quando trouxe na unha legado dotlrn2.1.1 e seus content-repository bem como restaurei o SGBD Postgresql8.1 (apenas dados) em um novo SGDB, aliás o mesmo de produção, tive diversos problemas.  Entretanto, após pesquisar e debater muito no site original (http://openacs.org/forums/message-view?message_id=4030454) e seguindo orientações deste http://www.openacs.org/forums/message-view?message_id=243862, a partir da linha de comando, digitei:

 /usr/sbin/aolserver4-nsd -u www-data -g www-data -b 0.0.0.0:8081 -s dotlrn -t /etc/aolserver4/conf.d/dotlrnupd.tcl

Ou seja: usei a versão mais recente dotlrn2.5 sobre a minha base de dados legado, aproveitando o dotlrn original, alterando apenas algumas diretivas no arquivo dotlrn.tcl e, claro, renomeando-o. Os erros de campos faltantes nas tabelas foram sendo corrigidos a medida do possível. Entretanto, por não ter onde procurar por mais recursos e o pouco conhecimento de que disponho neste framework há outros erros, que anexo a seguir (somente os erros e não os 151k do log), para os quais peço a ajuda de vocês, que ocorrem após digitar http://meu_ip:8081/dotlrn/.

...... 

 [16/Apr/2013:13:23:03][18435.18446744072070629120][-main-] Error: Error sourcing /usr/share/dotlrn/packages/xowiki/tcl/xowiki-procs.tcl:

[16/Apr/2013:13:23:14][18435.18446744072070629120][-main-] Notice: Watchdog: wd_mail_errors scheduled to run every 1440 minutes.

[16/Abr/2013:13:25:52][18435.18446744071926609664][-default:0-] Error: rp_report_error: Error rendering error page (!)

"template::adp_parse /usr/share/dotlrn/packages/acs-tcl/lib/page-error {stacktrace {invalid command name "::Generic::package_id_from_package_key"

"ad_parse_template -params $params "/packages/acs-tcl/lib/page-error""

"set rendered_page [ad_parse_template -params $params "/packages/acs-tcl/lib/page-error"]"

[16/Abr/2013:13:25:52][18435.18446744071926609664][-default:0-] Error: GET http://meu_ip:8081/?

[16/Abr/2013:13:25:57][18435.18446744071930812160][-default:2-] Error: rp_report_error: Error rendering error page (!)

"template::adp_parse /usr/share/dotlrn/packages/acs-tcl/lib/page-error {stacktrace invalid\ command\ name\ \"template::head::add_meta\"\n\ \ \ \ while\..."

"ad_parse_template -params $params "/packages/acs-tcl/lib/page-error""

"set rendered_page [ad_parse_template -params $params "/packages/acs-tcl/lib/page-error"]"

[16/Abr/2013:13:25:57][18435.18446744071930812160][-default:2-] Error: GET http://meu_ip:8081/register/?return%5furl=%2fdotlrn%2f

 

Em arquivo de 151k , estes são os erros que se repetem até a interrupção do serviço (kill -9). Não instalei o daemontools por que o serviço está com estes erros mas pretendo colocar em produção da forma acadêmica, svc -d ou -u e etc...

Caso necessitem, posso anexar o arquivo de log inteiro.

 

Obrigado. 

 

 

 

Autor: Erico Guimarães


44 comentários

  • 12cf2da8b1a1753868c7e20816b7dab5?only path=false&size=50&d=404Eduardo Santos(usuário não autenticado)
    18 de Abril de 2013, 12:46

     

    Érico,

    A sua versão do OpenACS, salvo algum engano, é 5.2 certo? Essa versão não é compatível com o PostgreSQL 8.1: http://openacs.org/xowiki/openacs-compatibility-matrix

    O erro que você mostrou é referente à ausência do XoTCL na sua instalação. Se você instalou o AOLServer via apt-get, você também vai ter que instalar a linguagem XoTCL e o pacote do OpenACS.

    Veja aqui: http://openacs.org/xowiki/xotcl

    Além disso, se houver customizações, existe grande possibilidade de elas não funcionarem corretamente. 

    • 3d6b6c4426cdbfc6b1bd2cf27c84857e?only path=false&size=50&d=404Erico Guimarães(usuário não autenticado)
      18 de Abril de 2013, 18:59

       

      Eduardo,

      Obrigado pela sua contumaz atenção. Ambos os pacotes xotcl e openacs foram instalados por apt-get bem sucedidos. Não sei dizer se houve customizações. O tema criado chama-se tupi. Após rodar a aplicação dotlrn2.5, instalada por apt-get e suas dependências, com SGBD Postgresql-8.4.9 em um servidor Debian AMD 64bits, depois de fuçar muito em arquivos .sh e .tcl, consegui finalmente rodar a aplicação coptec, legado de um sistema Debian 3.1 32 bits, dotlrn2.1.1; todo ele compilado,  no ambiente deste Servidor Debian AMD64 bits, fazendo os seguintes workarounds na estrutura dotlrn2.5 instalada:

      Fiz um backup dos diretórios originais no servidor da aplicação /var/lib/aolserver/coptec_comunidades_new/ bem como do servidor de banco de dados Postgresql;
      Fiz o restore de ambos novo novo servidor Debian AMD64 Bits.

      Copiei o diretório /usr/share/dotlrn/ para /usr/share/coptec (nome de minha aplicação). Ficou assim:

      root@coptecvirtual:/usr/share/coptec# ls -la
      total 48
      drwxr-xr-x   7 www-data www-data 4096 Abr 17 20:26 .
      drwxr-xr-x 113 root     root     4096 Abr 16 19:37 ..
      drwxr-xr-x   3 www-data www-data 4096 Abr 16 19:38 apm-workspace
      drwxr-xr-x   2 www-data www-data 4096 Abr 16 19:37 bin
      -rw-r--r--   1 www-data www-data 7445 Abr 16 19:37 ChangeLog
      lrwxrwxrwx   1 www-data www-data   59 Abr 17 20:26 content-repository-content-files -> /var/lib/aolserver/coptec/content-repository-content-files/
      lrwxrwxrwx   1 www-data www-data   48 Abr 16 19:38 content-repository-content-files-orig -> /var/lib/dotlrn/content-repository-content-files
      lrwxrwxrwx   1 www-data www-data   11 Abr 16 19:45 etc -> /etc/coptec
      -rw-r--r--   1 www-data www-data 4182 Abr 16 19:38 install.xml
      lrwxrwxrwx   1 www-data www-data   26 Abr 16 19:47 log -> /var/log/aolserver4/coptec
      lrwxrwxrwx   1 www-data www-data   51 Abr 17 19:00 packages -> /var/lib/aolserver/coptec_comunidades_new/packages/
      -rw-r--r--   1 www-data www-data 1911 Abr 16 19:37 readme.txt
      drwxr-xr-x   3 www-data www-data 4096 Abr 16 19:38 rss
      drwxr-xr-x   2 www-data www-data 4096 Abr 16 19:37 tcl
      lrwxrwxrwx   1 www-data www-data   45 Abr 17 13:24 www -> /var/lib/aolserver/coptec_comunidades_new/www
      drwxr-xr-x  11 www-data www-data 4096 Abr 16 19:37 www-orig
      root@coptecvirtual:/usr/share/coptec#
      A estrutura do diretório packages -> /var/lib/aolserver/coptec_comunidades_new/packages/ foi modificada em apenas um pacote, destacado em negrito:

      .................................................
      drwxr-xr-x   5 www-data www-data 4096 Dez 21  2006 xml-rpc
      lrwxrwxrwx   1 www-data www-data   52 Abr 17 18:54 xotcl-core -> ../../../../../usr/share/dotlrn/packages/xotcl-core/
      drwxr-xr-x   7 www-data www-data 4096 Dez 21  2006 xotcl-core-old
      drwxr-xr-x   5 www-data www-data 4096 Mar  4  2008 xotcl-request-monitor
      drwxr-xr-x   7 www-data www-data 4096 Nov  4  2008 xowiki
      root@coptecvirtual:/usr/share/coptec/packages#

      Copiei e alterei os arquivos /etc/aolserver/conf.d/dotlrn.sh e coptec.sh para coptec.sh e config.tcl para coptec.tcl, alterando portas, nome de serviço, database, localhost, homedir e etc...
      A linha comando usada para subir o serviço bem como o resultado foi a seguinte:

      root@coptecvirtual:/usr/share/coptec/log# /usr/sbin/aolserver4-nsd -u www-data -g www-data -b 0.0.0.0:8080 -s coptec -t /etc/aolserver4/conf.d/coptec.tcl &
      [1] 16508
      root@coptecvirtual:/usr/share/coptec/log# [18/Apr/2013:18:17:59][16508.18446744073701123840][-main-] Notice: prebind: bound: 0.0.0.0:8080
      [18/Apr/2013:18:17:59][16509.18446744073701123840][-main-] Notice: nsd.tcl: starting to read config file...
      [18/Apr/2013:18:18:00][16509.18446744073701123840][-main-] Notice: nsd.tcl: using threadsafe tcl: 1
      [18/Apr/2013:18:18:00][16509.18446744073701123840][-main-] Notice: nsd.tcl: finished reading config file.
      ^C
      [1]+  Concluído 

      Quando digito a URL X.X.​X.X:​8080​, o browser produz o seguinte erro:

      Erro do Servidor

      Houve um erro processando sua requisição.

      Retornar a página anterior ao erro

      invalid command name "::Generic::package_id_from_package_key"
      while executing
      "::Generic::package_id_from_package_key xotcl-request-monitor"
      invoked from within
      "set ::package_id [::Generic::package_id_from_package_key xotcl-request-monitor]"
      invoked from within
      "::thread::send $tid $initcmd"
      (procedure "do" line 35)
      ::throttle ::xotcl::THREAD->do
      invoked from within
      "::throttle do throttler throttle_check 10.152.9.121 10.152.9.121 / 1366319972:922342 */* {}"
      ::throttle->throttle_check
      invoked from within
      "my throttle_check $requestor $pa $url [ns_conn start] [ns_guesstype $url] $community_id"
      (procedure "check" line 6)
      ::throttle->check
      invoked from within
      "my check"
      (procedure "postauth" line 4)
      ::throttle->postauth
      invoked from within
      "$proc $why"
      Mas consigo navegar nos menus Mudar o idioma, membros conectados e login. Inclusive faço o login com o meu usuário e senha restaurados do Postgresql.  Entretanto, quando eu clico no link página principal,  sou direcionado para a página principal do ambiente de produção. Sei que isto está vindo do SGBD restaurado  em localhost mas não sei em qual tabela pois já aconteceu isto uma vez mas eu não lembro onde eu corrigi na unha.

      Finalmente , os erros no arquivo de log são basicamente dois: um no xowiki :

      [18/Apr/2013:18:18:08][16509.18446744073701123840][-main-] Error: Error sourcing /usr/share/coptec/packages/xowiki/tcl/xowiki-procs.tcl:

      invalid command name "::Generic::CrClass"

          while executing

      "::Generic::CrClass create Page -superclass ::Generic::CrItem  -pretty_name "XoWiki Page" -pretty_plural "XoWiki Pages"  -table_name "xowiki_page" -id_..."

          (in namespace eval "::xowiki" script line 6)

          invoked from within

      "namespace eval ::xowiki {

        #

        # create classes for different kind of pages

        #

        ::Generic::CrClass create Page -superclass ::Generic::CrItem \

         ..."

          (file "/usr/share/coptec/packages/xowiki/tcl/xowiki-procs.tcl" line 9)

          invoked from within

      "source $__file "

      [18/Apr/2013:18:18:08][16509.18446744073701123840][-main-] Notice: Loaded packages/xowiki/tcl/xowiki-procs.tcl.

      [18/Apr/2013:18:18:08][16509.18446744073701123840][-main-] Notice: Loading packages/xowiki/tcl/xowiki-sc-procs.tcl...

      ...........

      ........

      ...... 

      E depois este erro após a digitação da URL: 

      [18/Apr/2013:18:19:34][16509.18446744073560049408][-default:0-] Error: GET  http://10.152.8.68:8080/?

      referred by ""

      invalid command name "::Generic::package_id_from_package_key"

          while executing

      "::Generic::package_id_from_package_key  xotcl-request-monitor"

          invoked from within

      "set ::package_id [::Generic::package_id_from_package_key  xotcl-request-monitor]"

          invoked from within

      "::thread::send $tid $initcmd"

          (procedure "do" line 35)

          ::throttle ::xotcl::THREAD->do

          invoked from within

      "::throttle do throttler throttle_check 10.152.9.121 10.152.9.121 / 1366319972:922342 */* {}"

          ::throttle->throttle_check

          invoked from within

      "my throttle_check $requestor $pa $url  [ns_conn start] [ns_guesstype $url] $community_id"

          (procedure "check" line 6)

          ::throttle->check

          invoked from within

      "my check"

          (procedure "postauth" line 4)

          ::throttle->postauth

          invoked from within

      "$proc $why"

      [18/Abr/2013:18:20:26][16509.18446744073543239424][-sched:26-] Notice: dbdrv: opening database 'postgres:localhost:5432:unico'

      [18/Abr/2013:18:20:26][16509.18446744073543239424][-sched:26-] Notice: Opening unico on localhost

      [18/Abr/2013:18:20:26][16509.18446744073539036928][-sched:15-] Notice: dbdrv: opening database 'postgres:localhost:5432:unico'

      [18/Abr/2013:18:20:26][16509.18446744073539036928][-sched:15-] Notice: Opening unico on localhost

      .........

      .........

      E ao final do arquivo de log, ele repete sempre este warning:

      ....

       Warning: search::dequeue: invalid: called with object_id= event_date=2008-08-14 09:04:26.796559-03 event=UPDATE

         search::dequeue -object_id {} -event_date {2008-08-14 09:04:26.796559-03} -event UPDATE

      invoked from within

         search::indexer

      invoked from within

         ad_run_scheduled_proc {t f 300 search::indexer {} 1366319902 0 f}

      [18/Abr/2013:18:23:22][16509.18446744073543239424][-sched:31-] Warning: search::dequeue: invalid: called with object_id= event_date=2008-11-18 14:02:54.376102-02 event=UPDATE

         search::dequeue -object_id {} -event_date {2008-11-18 14:02:54.376102-02} -event UPDATE

      invoked from within

         search::indexer

      invoked from within

         ad_run_scheduled_proc {t f 300 search::indexer {} 1366319902 0 f}

      ..........

      .......... 

      Não sei se procedi da forma correta pois não consegui atualizar conforme orientação nos fóruns, principalmente através do Gustaf, um dos mantenedores. Talvez o proxy daqui não permita o acesso ao site do openacs.org, embora consiga acessá-lo normalmente. Tentei em repositório local mas não fui bem sucedido. 

      Se ao menos eu pudesse aproveitar somente o meu content-repository e os dados do SGBD (são mais de 10.000 usuários em mais de 150 comunidades, que crescem a cada dia!)  e usar o tema padrão zen do dotlrn2.5 eu ficaria muito satisfeito. 

      Obrigado.

       

      • 12cf2da8b1a1753868c7e20816b7dab5?only path=false&size=50&d=404Eduardo Santos(usuário não autenticado)
        18 de Abril de 2013, 21:24

         

        Érico,

        O erro que você está tendo é devido a duas coisas:

        1 - Alteração do modelo de dados do OpenACS entre a sua versão antiga (5.2) e a versão atual (5.7). Muitas mudanças foram implementadas, e essa chamada package_id_from_key não é mais utilizada.

        2 - Erro na instalação do pacote xotcl-core e versão do XoWiki.

        Há ainda o problema de que a última versão estável do XoWiki está marcada com o branch 5.3 do OpenACS, gerando um problema grande ao utilizar as versões do HEAD. E também há uma grande mudança no modelo de dados para suporte ao PostgreSQL 8.4 que só foi implementada no 5.7. Veja: http://openacs.org/forums/message-view?message_id=3804765

        Eu te recomendo utilizar as versões do xowiki e xotcl-core aqui do Portal, que eu me lembro de serem as últimas estáveis com garantia de funcionamento. 

        • 3d6b6c4426cdbfc6b1bd2cf27c84857e?only path=false&size=50&d=404Erico Guimarães(usuário não autenticado)
          19 de Abril de 2013, 17:32

           

          Eduardo,

          Você deve ter percebido que eu misturei o dotlrn2.5 (deste,  eu não usei nem o www e nem o packages,  a não ser o xotl-core, com o diretório de minha aplicação /var/lib/aolserver.  Isto porque eu tentei seguir a receita:

          Go to /acs-admin/install/ and click "Upgrade Your System" in "Install from OpenACS Repository". Mas deu erro. ?!

          A minha dúvida é que usei o apt-get para instalar todos os pacotes relativos ao ambiente do dotlrn25, inclusive o xotcl. Terei então que desinstalá-lo para usar o que vc recomendou? o xowiki realmente terei que instalar na unha. No apt-get não rola.

           Se puder, mande o link. 

           abraços

           

Oportunidade de Trabalho com OpenACS

9 de Dezembro de 2011, 16:07, por Desconhecido

Domí­nio do ambiente Linux em modo Shell;



Fundamentos de desenvolvimento e criação de comunidades virtuais com o framework OpenACS

28 de Outubro de 2010, 16:51, por Desconhecido

Durante o Latinoware, que será realizado em Foz do Iguaçu entre os dias 10 e 12 de Novembro, será realizada uma oficina sobre desenvolvimento em OpenACS. A oficina é parte da iniciativa de compartilhamento do Projeto Software Público Internacional, e conta com apoio da organização.



Oficina sobre OpenACS em Belo Horizonte

19 de Novembro de 2008, 9:43, por Desconhecido

No dia 27 de novembro de 2008, será realizado durante o Encontro Mineiro de Software Livre, uma oficina para formação de desenvolvedores OpenACS. A oficina tem por objetivo introduzir a ferramenta na cidade e atender a uma demanda crescente por especialistas na área.



Treinamento em OpenACS em Brasília tem sua aula inaugural

10 de Novembro de 2008, 9:43, por Desconhecido

Fruto de uma paceria entre a Lupa Treinamento e a Secretaria de Logística e Tecnologia da Informação do Ministério do Planejamento, começou no último Sábado o terceiro treinamento em OpenACS realizado em Brasília.



Instalacao do OACS 5.3 em Debian e Ubuntu

29 de Janeiro de 2008, 16:52, por Desconhecido

Acaba http://cognovis.de/developer/ou de sair do forno...