Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Preparations for new Tracing/Replay implementation #257

Merged
merged 10 commits into from Jul 19, 2018

Conversation

2 participants
@daumayr
Copy link
Contributor

commented Jul 12, 2018

This PR contains preparation for the new tracing & replay.
The custom ByteBuffer is only temporary and will be removed in the next PR.
Please note that replay is not functional as of this PR.

Due to the split into two tracing variants, a lot of code moved to different files.

Repository owner deleted a comment from codacy-bot Jul 12, 2018

Repository owner deleted a comment from codacy-bot Jul 12, 2018

@smarr smarr force-pushed the daumayr:Tracing-and-Replay-Prep branch from 504e566 to 25de9c7 Jul 15, 2018

Repository owner deleted a comment from codacy-bot Jul 15, 2018

Repository owner deleted a comment from codacy-bot Jul 15, 2018

@smarr

This comment has been minimized.

Copy link
Owner

commented Jul 15, 2018

After fixing the infrastructure issues (which seemed trivial and I bet it would have been easy to figure out), the Kompos tests are failing.

How do you want to play this? Are you going to look into the issues?

@daumayr daumayr force-pushed the daumayr:Tracing-and-Replay-Prep branch from 25de9c7 to 9d17267 Jul 16, 2018

Repository owner deleted a comment from codacy-bot Jul 16, 2018

Repository owner deleted a comment from codacy-bot Jul 16, 2018

@smarr smarr added this to the v0.7.0 milestone Jul 16, 2018

@smarr smarr added this to To Do in Actor Record & Replay via automation Jul 16, 2018

@smarr smarr added the enhancement label Jul 16, 2018

@@ -150,6 +150,7 @@ protected boolean isTaggedWithIgnoringEagerness(final Class<?> tag) {
}
}

@TruffleBoundary

This comment has been minimized.

Copy link
@smarr

smarr Jul 19, 2018

Owner

Hmm, why did you add a boundary here?
The code looks fine. It should compile, no?

This comment has been minimized.

Copy link
@daumayr

daumayr Jul 19, 2018

Author Contributor

It's probably a relict of changes that are not in this PR.
If I have an issue with this at some point , I'll solve it differently.

This comment has been minimized.

Copy link
@smarr

smarr Jul 19, 2018

Owner

I just wrote a microbenchmark to see whether and how it compiles.
And I looked at the IGV graphs. It compiles surprisingly good, despite the three times bounds checking (SOMns, Java string, char array).

So, I would expect it to be safe to remove the boundary here. (will do)

daumayr added some commits Jul 16, 2018

Cleanup in Files
make stream creation simpler
Remove -atcfg flag and add -sid flag for short ids
The old actor config flags are not used any longer.
msg.getTargetSourceSection());
}
msg.execute();
} finally {

This comment has been minimized.

Copy link
@smarr

smarr Jul 19, 2018

Owner

Is the removal of this finally intentional? Seems to be the safer to use a finally here.

daumayr and others added some commits Jul 16, 2018

Add notion of external messages for replay
External messages are going to be use to represent information coming in from outside of the system.

The capture the external non-determinism.
And adds data wrappers for some of the payload.

This is just an initial change, they are not yet used.
Rename MEDEOR_TRACING to KOMPOS_TRACING
Use the name of the protocol that is supported by this, not the subsystem that implements it.
Optimize tracing
- we know it is a TracingActor at this point, no need for a virtual call to `getId()`
- fix seemingly incorrect sync on fullBuffers
- prefer isEmpty over size()
- fix check for whether there is something in the buffer
- position() should be the correct thing, untested though
- use unsafe to avoid separate byte writes
- avoid synchronizing on a synchronized data structure
- add additional methods to Unsafe dummy.

Signed-off-by: Stefan Marr <git@stefan-marr.de>
Move ActorExecutionTrace to replay package
Signed-off-by: Stefan Marr <git@stefan-marr.de>

@smarr smarr force-pushed the daumayr:Tracing-and-Replay-Prep branch from 9d17267 to b73ddb9 Jul 19, 2018

Fix expected test results
Signed-off-by: Stefan Marr <git@stefan-marr.de>

@smarr smarr merged commit 978df24 into smarr:dev Jul 19, 2018

1 of 2 checks passed

continuous-integration/travis-ci/pr The Travis CI build failed
Details
Codacy/PR Quality Review Up to standards. A positive pull request.
Details

Actor Record & Replay automation moved this from To Do to Done Jul 19, 2018

@smarr smarr changed the title Tracing and replay prep Preparations for new Tracing/Replay implementation Jul 19, 2018

@smarr

This comment has been minimized.

Copy link
Owner

commented Jul 19, 2018

@daumayr ok, it is merged. Looking forward to the other parts.

@daumayr daumayr deleted the daumayr:Tracing-and-Replay-Prep branch Jul 24, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.