EUDAT-B2SAFE / B2SAFE-core

B2SAFE service core code for EUDAT project
Other
14 stars 20 forks source link

Is there a list somewhere on possible ways to start replication? #10

Closed mhellmic closed 10 years ago

mhellmic commented 10 years ago

I know of only one, putting a .replicate file into a designated irods folder (with content: pid;localpath;remotepath).

Is that still uptodate, and are there other methods to invoke replication that are available now or planned for the near future?

ccacciari commented 10 years ago

On 09/09/2014 10:55 AM, mhellmic wrote:

I know of only one, putting a .replicate file into a designated irods folder (with content: ;;).

Is that still uptodate, and are there other methods to invoke replication that are available now or planned for the near future?


Reply to this email directly or view it on GitHub: https://github.com/EUDAT-B2SAFE/B2SAFE-core/issues/10

Hi,

the best practices for replication are described in the following doc: https://github.com/EUDAT-B2SAFE/B2SAFE-core/blob/master/docs/administrator.guide.pdf

under chapter "Best Practices" -> Replication.

Regards, Claudio

mhellmic commented 10 years ago

Hi, thanks for the link!

In best practices, I have found what the preferred rule to use for replication is, but is there a preferred way to trigger this rule, too? Is it called automatically after any PUT? (because it's installed at acPostProcPut?)

Does a client have to provide any additional information that the file itself, e.g. the target of the replication (*target_of_transfered_file)?

ccacciari commented 10 years ago

You can find various examples related to the B2Safe rules here: https://github.com/EUDAT-B2SAFE/B2SAFE-core/tree/master/rules

In particular, you can test the replication running: irule -F testEUDATTransferSingleFile.r

after having set, inside the rule file testEUDATTransferSingleFile.r, the replica source: Path="/DATACENTER/PHANreplica/k7.test" and the replica target: replicaPath="/DATACENTER2/JUELICHreplica/k7.test"

The correct deployment of the B2Safe core module is mandatory to get it working.

Then, if this first test works, you can automatize it, triggering any put event with acPostProcPut inside the rule set core.re.

Since it includes the PID management, that rule checks if the source data object is already registered with a PID and stops the replication if it is not the case.

Regards, Claudio

On 09/11/2014 04:05 PM, mhellmic wrote:

Hi, thanks for the link!

In best practices, I have found what the preferred rule to use for replication is, but is there a preferred way to trigger this rule, too? Is it called automatically after any PUT? (because it's installed at acPostProcPut?)

Does a client have to provide any additional information that the file itself, e.g. the target of the replication (*target_of_transfered_file)?


Reply to this email directly or view it on GitHub: https://github.com/EUDAT-B2SAFE/B2SAFE-core/issues/10#issuecomment-55268167

mhellmic commented 10 years ago

Then, if this first test works, you can automatize it, triggering any put event with acPostProcPut inside the rule set core.re.

When I do this, does it figure out by itself the replication path for the file I upload? Are there any config variables to treat on the server?

ccacciari commented 10 years ago

On 09/11/2014 05:40 PM, mhellmic wrote:

Then, if this first test works, you can automatize it, triggering any put event with acPostProcPut inside the rule set core.re.

When I do this, does it figure out by itself the replication path for the file I upload? Are there any config variables to treat on the server?

the source path is available, server side, using the variable $objPath. Obviously you need to provide the destination, or a mechanism to "build" the destination path, starting from the file name.


Reply to this email directly or view it on GitHub: https://github.com/EUDAT-B2SAFE/B2SAFE-core/issues/10#issuecomment-55282834

mhellmic commented 10 years ago

the source path is available, server side, using the variable $objPath. Obviously you need to provide the destination, or a mechanism to "build" the destination path, starting from the file name.

Ok, one mechanism to provide the destination that I know is to provide a .replicate file, which has the destination path in them. Now I recently heard there may be other mechanisms that don't require such file to be put and I wonder for one, if they really exist, and if yes, how they work.

The ultimate reason is that I'd like to find out what the http-api and b2share have to do to put files in b2safe and trigger a replication.

ccacciari commented 10 years ago

I see. Since we are moving towards a architectural topic, I will close the github issue and answer directly via mailing list.

On 09/11/2014 07:40 PM, mhellmic wrote:

the source path is available, server side, using the variable $objPath. Obviously you need to provide the destination, or a mechanism to "build" the destination path, starting from the file name.

Ok, one mechanism to provide the destination that I know is to provide a .replicate file, which has the destination path in them. Now I recently heard there may be other mechanisms that don't require such file to be put and I wonder for one, if they really exist, and if yes, how they work.

The ultimate reason is that I'd like to find out what the http-api and b2share have to do to put files in b2safe and trigger a replication.


Reply to this email directly or view it on GitHub: https://github.com/EUDAT-B2SAFE/B2SAFE-core/issues/10#issuecomment-55300262