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
Fixing action move tests #1473
Fixing action move tests #1473
Conversation
Future serialization is really getting out of hand :/ Those changes also mean a breaking change for user code, correct? |
After going through the requested changes, the only difference between waiting directly in the future serialization code and the currently mechanism in place is the creation of a new thread. This is an important difference and not having such a separate 'waiting' thread might lead to deadlocks. A proper solution could be to have various serialization passes with special archive types. The one checking for non-ready futures could have a shared state to which the non ready futures register themselves. Instead of a buffer, the result of this serialization would a future that marks the completion of all futures which are about to be serialized. This avoids the need for a special trait completely. The same mechanism can be employed to calculate the exact size needed in a buffer to serialize a parcel at hand, again, without the need for a special trait. |
With all that said above, this doesn't affect this pull request as it fixes a problem we have right now. So I think it is good to be merged. |
I agree.
No changes in user code are required.
I'd prefer that as well, although I seem to remember that we agreed its not possible because of the limited amount of network connection we have available (are those still acquired before serialization?). If it is possible now, I'd be happy to remove all of that |
I'm not sure to understand. Could you elaborate, please?
This would mean introducing a lot of overhead in most situations to be able to resolve single cases. |
On 04/22/2015 02:19 PM, Hartmut Kaiser wrote:
Should be possible now, but probably needs to be tested extensively |
possible deadlock in the parcelport due to a limited number of
We already have a overhead for that single case. But I certainly agree |
This scheme would work for vanilla serialization function in user code only (i.e. only for things like |
Is the keyword 'should', or are we sure of that? |
We didn't have a single deadlock in distributed for quite some time now due |
Does that mean we could get rid of the whole serialize_as_future business? Let's create a ticket for that. |
This fixes the action move test count problems introduced recently