bugGNU Octave - Bugs: bug #47299, lookfor without doc-cache...

 
 

bug #47299: lookfor without doc-cache extremely slow, many warnings

Submitter:  Mike Miller <mtmiller>
Submitted:  Sun 28 Feb 2016 07:41:29 PM UTC
   
 
Category:  Octave Function Severity:  1 - Wish
Priority:  5 - Normal Item Group:  Performance
Status:  None Assigned to:  None
Originator Name:  Open/Closed:  * Closed
Release:  * dev Operating System:  * Any
Fixed Release:  None Planned Release:  None
* Mandatory Fields

Add a New Comment Rich Markup
   

Tue 01 Mar 2016 07:15:48 PM UTC, comment #4: 

I may have been thinking of bug #44336, though that may not be exactly the same issue.

John W. Eaton <jwe>
Group administrator
Tue 01 Mar 2016 06:30:28 PM UTC, comment #3: 

Yes, I must have interrupted an initial lookfor followed by another and the warning state was not reset as you point out. Starting over and waiting for it to finish shows no warnings, so this can be closed. I can't seem to find this other bug report though.

Mike Miller <mtmiller>
Group Member
Mon 29 Feb 2016 09:00:27 PM UTC, comment #2: 

The weirdness with warnings is apparently due to bugs with the way that the warning state is handled when reset.  The lookfor function tries to set all warnings off, then they are reset with unwind_protect.  I don't see warnings if I do the following when I first start Octave:


more off
lookfor svd


but that takes a long time, and if I interrupt it (thus triggering the unwind_protect block that attempts to reset the warning state) then try the lookfor command again, then I start to see warnings.  If I interrupt again, I continue to see warnings, but this time with stack trace info for each warning that was not previously displayed.

I think we already have a bug report about warning state not being handled correctly.

John W. Eaton <jwe>
Group administrator
Mon 29 Feb 2016 12:56:16 AM UTC, comment #1: 

The slowness is expected.  I notice it particularly when using run-octave because it ends up using the slow path even though the doc-cache exists (this is with docs enabled).  The doc-cache does perform correctly after 'make install'.

Warnigs are a concern; I'd rather not see those.  The ones quoted do look pretty minor.

Rik <rik5>
Group administrator
Sun 28 Feb 2016 07:41:29 PM UTC, original submission:  

The lookfor function normally relies on the doc-cache file that contains an index of all function docstrings.

When Octave is built with --disable-docs, the doc-cache file is not built and the lookfor function falls back to pulling the docstrings straight out of every function in the symbol table.

I just tested this and it is extremely slow (understandable for what it's doing), and produces a lot of the following warning messages:


warning: concatenation of different character string types may have unintended consequences
warning: Octave language extension used: OP used as operator near ...
warning: Octave language extension used: bare newline inside parentheses near ...


I'm not at all sure at the moment what's causing these warnings, but it would probably be useful to improve the experience for people who rely on lookfor since there are screenfuls of these warning messages before any useful output is shown.

Mike Miller <mtmiller>
Group Member

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by jwe (Posted a comment)
  • -email is unavailable- added by rik5 (Posted a comment)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only group members can vote.

     

    Follow 4 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2019-06-08 rik5 Open/ClosedOpen Closed
    2019-02-26 mtmiller Carbon-CopyRemoved 80942 -
    2016-03-01 jwe Open/ClosedClosed Open
    2016-03-01 rik5 Open/ClosedOpen Closed

    Back to the top

    Powered by Savane 3.13-758e.
    Corresponding source code