[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Octave-bug-tracker] [bug #31080] User scripts or functions created duri

From: Rik
Subject: [Octave-bug-tracker] [bug #31080] User scripts or functions created during a session are not found
Date: Sat, 04 Jan 2014 23:05:35 +0000
User-agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:26.0) Gecko/20100101 Firefox/26.0

Follow-up Comment #20, bug #31080 (project octave):

This is all down to the same root cause which is that the directory timestamp
is not updated when the directory itself is changed (such as by the addition
of a new file).  On FAT filesysems, the directory timestamp is not updated
period.  You can work around that by manually using touch.exe to change the
timestamp of the directory.  Things are a bit better on NTFS systems, in that
directories which are modified have their timestamp updated.  But, this being
Microsoft, there are exceptions to that as well.  The root of the file tree is
apparently special and just isn't updated.  I tried creating new files, new
directories, using touch.exe and the timestamp of the root node is never

The easiest way to see this is from within Octave.  Use

finfo = stat ('e:\')

and replace 'e' by whatever drive letter you are using.

So, the situation just sort of sucks on Microsoft file systems.

It's probably possible to disable the caching code in Octave (make sure this
is only on Windows machines), but the performance hit might be unacceptable. 
Basically, any time a function wasn't already compiled and in the symbol
table, Octave would need to do a full search of every single directory on the
path.  This would also happen everytime someone entered a typo as well like
'dirt' for 'dir' since Octave couldn't know that you didn't mean to call a
function that it doesn't know about.


Reply to this item at:


  Message sent via/by Savannah

reply via email to

[Prev in Thread] Current Thread [Next in Thread]