Comments (7)
It could be that we're attached to the debugger as well, making it a bit slower.
I'd try to use the extension to see if it helps.
from mirrord.
Thanks for reporting this! This seems to happen because of idle_timeout
. The internal proxy component (part that runs on your machine) aggregates "layer" (the part that loads into your local process) connections. When there are no connections for a said duration, it cleans up. I assume the issue is that sometimes the reload time > idle_timeout which means that until the new connection is established the internal proxy already dies.
You can control that timeout by setting
"internal_proxy": {"idle_timeout": 10}
The timeout is in seconds, and by default it is 5 seconds. Can you try increasing it and seeing if it happens again?
from mirrord.
Actually I increased the idle_timeout
to 1200 (20 minutes) but the issue can still be reproduced. It usually happens if I have a compilation error in my VSCode IDE when writing some code. I use autosave feature of VSCode and the IDE compile the code everytime the file is saved automatically.
Also, the performance in VSCode is greatly impact, much slower, compare to using mirrord exec bash
then run the Quarkus application in the terminal. So I guess because Quarkus is executed using launch configuration in VSCode, so the application is executed by mirrord but from a process that VSCode created. VSCode can control mirrord
from its spawned process, hence it can kill mirrord execution.
I haven't tried with manul saving (manual compilation) in VSCode but I doubt it will work, since there is less synchronization happening.
from mirrord.
Can you attach the same log as above reproduced with the new idle timeout please?
from mirrord.
Sure, this is the trace log
And the configuration is
"internal_proxy": {
"log_destination": "/tmp/internal_proxy.log",
"log_level": "mirrord=trace",
"idle_timeout": 1200
}
from mirrord.
I see it fails on accessing /workspace
because it tries to read it from remote.
Can you try to add it to local path?
{
"feature": {
"fs": {
"mode": "read",
"local": ["/workspace.+"]
}
}
}
from mirrord.
I tried with the above configuration, Quarkus process did not get killed this time but the performance of VSCode is much slower or freeze for code completion, suggestion, compare to not using that configuration. Sometimes the VSCode debugger is even terminated while I write some code.
Increasing the memory of Java language server helped with the slowing / freezing of VSCode (not entirely) but I don't need to do that if I use mirrord
to open a new shell and run Quarkus in development mode within that shell.
Do you think using the mirrord
VSCode extension can help with this issue ?
from mirrord.
Related Issues (20)
- Traffic mirroring not working when uvicorn is reloading on source changes HOT 1
- Add preprocessing to headers before running filter HOT 2
- Layer timeout on intproxy communication (outgoing connect timeout in the agent)
- Error when running mirrord: /usr/local/bin/mirrord: cannot execute: required file not found HOT 1
- mirrord layer/ cli support Alpine/musl
- compatability issue with IDE HOT 5
- possible gRPC streaming issue HOT 2
- Add agent name to operator status
- Web Browsing not working - Segmentation fault with microsocks HOT 1
- Add VSCode extension to codium HOT 1
- Authenticate agent connection
- Change port stealing configuration behavior
- Provide explanation before session start HOT 6
- mirrord exec fs-mode local doesn't apply
- Process crashes on DNS timeout
- agent stays when passing mirrord a non-existing executable HOT 2
- mirrord VPN alpha
- Can't override with local postgresql on node
- Install.sh broken for version 3.98.1 HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mirrord.