Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [ecf-dev] Pass by reference semantics

Thanks for the frank input / advice!

My use case is to provide "cloud" services that can be substituted for "local" services.  The challenge is I wrote the local services first and in a couple of methods relied on the contents of the parameter being updated in the method.  I will need to rethink those methods to take into consideration your input.

My first thought is to change the client to call a thin local facade instead of directly calling the remote service.  In the local facade I can simulate the expected behavior by using the return value of the remote service.

The other approach is to change the interface and client code to use a return value in both local and client services.


From: wim.jongman@xxxxxxxxx
Date: Wed, 8 Apr 2015 22:47:02 +0200
To: ecf-dev@xxxxxxxxxxx
CC: ecf-dev@xxxxxxxxxxx
Subject: Re: [ecf-dev] Pass by reference semantics

I agree. I wanted to say:

"Forget it unless the 'fallacies of distributed computing' do not apply to you."

but I decided not to say that.

Cheers,

Wim


On Apr 8, 2015, at 22:08, Scott Lewis <slewis@xxxxxxxxxxxxx> wrote:
On 4/8/2015 12:20 PM, Timothy Vogel wrote:
I am using the r_osgi provider for remote services.  One of the service characteristics is passByValue.  Is pass by reference an option with this or with any provider? 

passByReference is an option, but of course the provider must support it.   None of the existing providers that I know of support passByReference.  

Are there any recommended patterns for implementing roll-your-own pass by reference if it is not supported?

With ECF, it is of course possible to roll-your-own passByReference provider.  

The most ubiquitous technology that I know of that does pass by reference is Java RMI, which has quite a few other problems (some related to pass-by-reference) that would prevent me from recommending it as the technical basis of a RS provider.   I'm sure others are aware of other pass-by-reference systems and so hopefully they will speak up.

One thing to say:  from my chair the notion of pass-by-reference itself is controversial within distributed systems design and development.   My interpretation is that some feel that because of the inherent problems of reliability/failure detection, distributed garbage collection, distributed consensus, and other things that pass-by-reference requires/introduces, it doesn't make for a great basis for reliable distributed applications.

Scott



ecf-dev mailing list
ecf-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/ecf-dev

_______________________________________________ ecf-dev mailing list ecf-dev@xxxxxxxxxxx To change your delivery options, retrieve your password, or unsubscribe from this list, visit https://dev.eclipse.org/mailman/listinfo/ecf-dev

Back to the top