Forum OpenACS Q&A: OpenFTS and ETP: wrong link

Collapse
Posted by Yves Goldberg on

I'm running openacs 5.0 final and have installed openfts. and testing.


  • New content (or old content after editing it) in lars blog shows up ok in Search.

  • New content (or old content after editing it) in ETP (Edit-This-Page) shows up but with bad link:

    For example: I do a search (http://www.goldberg.be/search/ on the word "work" and get 4 results (one from lars-blogger and 3 from ETP). the link in one of the ETP answer is:

    "http://www.goldberg.be/search/www.goldberg.be/yves/ygol/index" and it should be www.goldberg.be/yves/ygol/index.
    the application adds "www.goldberg.be/search/" before the actual link.
  • I have 3 questions:

  • How to correct the linking in search results for ETP?
  • Is there a way to re-index everything (to include old content)?
  • How to index forum posts so it shows in Openfts' search?


  • Thanks for your help.
    Yves.
    Collapse
    Posted by Yves Goldberg on
    I got the following error message in my log but I don't know what it means. It seems related to openfts though:

    ========================================================
    [23/Jan/2004:04:58:22][1856.1097866544][-sched:21-] Error: no current connection
    no current connection
        while executing
    "ns_conn $var"
        ("-get" arm line 24)
        invoked from within
    "switch -- $flag {
        -connected_p {
          return [info exists ad_conn(request)]
        }

        -set {
          set ad_conn($var) [lindex $args 2]
        }

      ..."
        (procedure "ad_conn" line 12)
        invoked from within
    "ad_conn session_id"
        (procedure "ad_get_client_property" line 4)
        invoked from within
    "ad_get_client_property -default 0 acs-lang translator_mode_p"
        (procedure "lang::util::translator_mode_p" line 5)
        invoked from within
    "lang::util::translator_mode_p"
        (procedure "lang::message::lookup" line 68)
        invoked from within
    "lang::message::lookup $locale $message_key {} {} 0 0"
        (procedure "lc_get" line 9)
        invoked from within
    "lc_get -locale $locale "d_fmt""
        ("x" arm line 3)
        invoked from within
    "switch -exact -- $percent_modifier {
                x {
                    append transformed_string $done_portion
                    set to_process "[lc_get -locale $locale "d_fmt"]$remaining"
    ..."
        (procedure "lc_time_fmt" line 87)
        invoked from within
    "lc_time_fmt $row(posting_date_ansi) "%x %X""
        (procedure "forum::message::get" line 16)
        invoked from within
    "forum::message::get -message_id $message_id -array message"
        (procedure "forum::message::datasource" line 11)
        invoked from within
    "forum::message::datasource $object_id"
        (procedure "AcsSc.ftscontentprovider.datasource.forums_message" line 1)
        invoked from within
    "AcsSc.ftscontentprovider.datasource.forums_message 974"
        ("uplevel" body line 1)
        invoked from within
    "uplevel $func_and_args"
        (procedure "apply" line 3)
        invoked from within
    "apply $proc_name $arguments"
        (procedure "acs_sc_call" line 6)
        invoked from within
    "acs_sc_call FtsContentProvider datasource [list $object_id] $object_type"
        ("UPDATE" arm line 6)
        invoked from within
    "switch $event {
                INSERT {
                    set object_type [acs_object_type $object_id]
                    if {[acs_sc_binding_exists_p FtsCont..."
        ("uplevel" body line 3)
        invoked from within
    "uplevel 1 $code_block "
        ("1" arm line 1)
        invoked from within
    "switch $errno {
                    0 {
                        # TCL_OK
                    }
                    1 {
                        # TCL_ERROR
                  ..."
        ("while" body line 20)
        invoked from within
    "while { [db_getrow $db $selection] } {
                incr counter
                if { [info exists array_val] } {
                    unset array_val
            ..."
        ("uplevel" body line 5)
        invoked from within
    "uplevel 1 $code_block "
        invoked from within
    "db_with_handle -dbn $dbn db {
            set selection [db_exec select $db $full_statement_name $sql]

            set counter 0
            while { [db_getrow $..."
        (procedure "db_foreach" line 36)
        invoked from within
    "db_foreach search_observer_queue_entry {} {

            switch $event {
                INSERT {
                    set object_type [acs_object_type $object_id]..."
        (procedure "search_indexer" line 9)
        invoked from within
    "search_indexer"
        ("eval" body line 1)
        invoked from within
    "eval [concat [list $proc] $args]"
        (procedure "ad_run_scheduled_proc" line 42)
        invoked from within
    "ad_run_scheduled_proc {t f 30 search_indexer {} 1074846473 0 f}"
    ============================================================

    Collapse
    Posted by Yves Goldberg on
    Ola Hansson gave me the answer to question 1 ( https://openacs.org/forums/message-view?message_id=157923 )

    Thank you.

    Collapse
    Posted by Jade Rubick on
    Yves, that looks like a bug to me. Someone is using ad_conn in a proc, but it's being called when there is no connection.
    Collapse
    Posted by Yves Goldberg on
    Thanks Jade.

    In ACS Service contracts I've uninstalled:

    Contract  Implementation  Label  Owner
    =======================================
    FtsContentProvider :: forums_message :: forums_message :: forums :: Install

    And the precedent error message doesen't show anymore in error.log.

    I have a new one though :) =>
    Warning: template::form::check_elements: MISSING FORMWIDGET: search:search:formbutton:ok

    but it doesn't seems too serious.

    cheers.
    Yves.