Cache flush

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

Cache flush

nophead
It seems that Flush Caches still does not flush everything (Win 2012.01.11).

I created a global variable: exploded in my config file that is included in all other files. It affects my screw and nut modules, which are also included everywhere. When I reloaded my main file it only affected screws in a couple of modules I had changed recently. When I did a cache flush and F5 it took a long time to re-render everything, but still only two modules had exploded screws. I had to close openscad to get it to affect everything.
Reply | Threaded
Open this post in threaded view
|

Re: Cache flush

kintel
Administrator
On Jan 28, 2012, at 15:04 PM, nop head wrote:

> It seems that Flush Caches still does not flush everything (Win 2012.01.11).
>
Could you post an example?

 -Marius


Reply | Threaded
Open this post in threaded view
|

Re: Cache flush

nophead
I just tried it again and it worked this time. The only thing different is that the previous instance of openscad had been open for several days.

On 28 January 2012 16:22, Marius Kintel <[hidden email]> wrote:
On Jan 28, 2012, at 15:04 PM, nop head wrote:

> It seems that Flush Caches still does not flush everything (Win 2012.01.11).
>
Could you post an example?

 -Marius

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad

Reply | Threaded
Open this post in threaded view
|

Re: Cache flush

nophead
The other thing I noticed was it was possible to have two versions of the same module. If I load the file with the module it correctly sees the changed configuration but it I loaded a file that used it then it used the old configuration.

On 28 January 2012 17:27, nop head <[hidden email]> wrote:
I just tried it again and it worked this time. The only thing different is that the previous instance of openscad had been open for several days.


On 28 January 2012 16:22, Marius Kintel <[hidden email]> wrote:
On Jan 28, 2012, at 15:04 PM, nop head wrote:

> It seems that Flush Caches still does not flush everything (Win 2012.01.11).
>
Could you post an example?

 -Marius

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad


Reply | Threaded
Open this post in threaded view
|

Re: Cache flush

kintel
Administrator
In reply to this post by nophead
On Jan 28, 2012, at 18:27 PM, nop head wrote:

> I just tried it again and it worked this time. The only thing different is that the previous instance of openscad had been open for several days.
>
Thanks - I'll see if I can spot anything obvious.

 -Marius


Reply | Threaded
Open this post in threaded view
|

Re: Cache flush

kintel
Administrator
In reply to this post by nophead
On Jan 28, 2012, at 15:04 PM, nop head wrote:
>
> I created a global variable: exploded in my config file that is included in all other files. It affects my screw and nut modules, which are also included everywhere. When I reloaded my main file it only affected screws in a couple of modules I had changed recently. When I did a cache flush and F5 it took a long time to re-render everything, but still only two modules had exploded screws. I had to close openscad to get it to affect everything.

I looked a bit at this from a theoretical viewpoint and it sounds like you're being hit by the dependency tracking problem of use'd modules, which you reported back in August. I'll make a github issue out of that one, so it's better visible.

 -Marius


Reply | Threaded
Open this post in threaded view
|

Re: Cache flush

nophead
Yes but I would expect cache flush to sort it out, which it seems to most of the time, although it is not much better than quitting and reloading.

What doesn't seem right is if I load a file with a changed module in it then it shows the new version but doesn't update the cached version, so if I go back to another file that uses it it sees the old version.

On 29 January 2012 23:08, Marius Kintel <[hidden email]> wrote:
On Jan 28, 2012, at 15:04 PM, nop head wrote:
>
> I created a global variable: exploded in my config file that is included in all other files. It affects my screw and nut modules, which are also included everywhere. When I reloaded my main file it only affected screws in a couple of modules I had changed recently. When I did a cache flush and F5 it took a long time to re-render everything, but still only two modules had exploded screws. I had to close openscad to get it to affect everything.

I looked a bit at this from a theoretical viewpoint and it sounds like you're being hit by the dependency tracking problem of use'd modules, which you reported back in August. I'll make a github issue out of that one, so it's better visible.

 -Marius

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad

Reply | Threaded
Open this post in threaded view
|

Re: Cache flush

nophead
If that worked I could manually update the dependent modules opening them.

On 29 January 2012 23:24, nop head <[hidden email]> wrote:
Yes but I would expect cache flush to sort it out, which it seems to most of the time, although it is not much better than quitting and reloading.

What doesn't seem right is if I load a file with a changed module in it then it shows the new version but doesn't update the cached version, so if I go back to another file that uses it it sees the old version.


On 29 January 2012 23:08, Marius Kintel <[hidden email]> wrote:
On Jan 28, 2012, at 15:04 PM, nop head wrote:
>
> I created a global variable: exploded in my config file that is included in all other files. It affects my screw and nut modules, which are also included everywhere. When I reloaded my main file it only affected screws in a couple of modules I had changed recently. When I did a cache flush and F5 it took a long time to re-render everything, but still only two modules had exploded screws. I had to close openscad to get it to affect everything.

I looked a bit at this from a theoretical viewpoint and it sounds like you're being hit by the dependency tracking problem of use'd modules, which you reported back in August. I'll make a github issue out of that one, so it's better visible.

 -Marius

_______________________________________________
OpenSCAD mailing list
[hidden email]
http://rocklinux.net/mailman/listinfo/openscad


Reply | Threaded
Open this post in threaded view
|

Re: Cache flush

kintel
Administrator
In reply to this post by nophead
Hi,

Yesterday, I fixed this issue: https://github.com/openscad/openscad/issues/78
It was related to path handling of nested includes and uses of files in libraries.
I'm not sure this is related to your problems, but it could be.

Anyway, I'm rewriting the module cache handling and dependency tracking to also support dependency tracking of included files. I expect your problems to be replaced with new ones when that's done ;)

 -Marius

On Jan 28, 2012, at 15:04 PM, nop head wrote:

> It seems that Flush Caches still does not flush everything (Win 2012.01.11).
>
> I created a global variable: exploded in my config file that is included in all other files. It affects my screw and nut modules, which are also included everywhere. When I reloaded my main file it only affected screws in a couple of modules I had changed recently. When I did a cache flush and F5 it took a long time to re-render everything, but still only two modules had exploded screws. I had to close openscad to get it to affect everything.
> _______________________________________________
> OpenSCAD mailing list
> [hidden email]
> http://rocklinux.net/mailman/listinfo/openscad