Skip to content

DPL: support multiplexing of dangling outputs#4426

Merged
ktf merged 1 commit into
AliceO2Group:devfrom
ktf:fix-output-proxy
Sep 24, 2020
Merged

DPL: support multiplexing of dangling outputs#4426
ktf merged 1 commit into
AliceO2Group:devfrom
ktf:fix-output-proxy

Conversation

@ktf
Copy link
Copy Markdown
Member

@ktf ktf commented Sep 24, 2020

No description provided.

@ktf ktf requested a review from a team as a code owner September 24, 2020 09:15
@ktf
Copy link
Copy Markdown
Member Author

ktf commented Sep 24, 2020

@ironMann o2-dpl-raw-proxy --dangling-outputs-policy fairmq seems well behaved with this. I am also changing the name of the channel to "downstream", since that's what you called it in the JIRA ticket. I think it makes sense.

@matthiasrichter I am changing the behaviour to have single channel for all the outputs. If needed, the old behaviour can be provided again by improving the decideChannel method with some policy.

@ironMann
Copy link
Copy Markdown
Contributor

Thanks.
For my understanding: the o2-dpl-raw-proxy will now a spawn a channel ( called "downstream") where (S)TFs are exiting DPL?
The output proxy component is now deprecated?

@ktf
Copy link
Copy Markdown
Member Author

ktf commented Sep 24, 2020

Not a channel (yet) but a separate device. Yes, the o2-dpl-output-proxy should be effectively unneeded. Basically once this PR (and the associated one for the input proxy) will be merged, all you will need is the data processing workflow itself.

@ktf
Copy link
Copy Markdown
Member Author

ktf commented Sep 24, 2020

I mean: a separate device with a "downstream" channel.

@ktf ktf merged commit b44870e into AliceO2Group:dev Sep 24, 2020
@ktf
Copy link
Copy Markdown
Member Author

ktf commented Sep 24, 2020

Already tested on macOS. @MichaelLettrich are the macs working fine?

@ironMann
Copy link
Copy Markdown
Contributor

@kft, Still I cannot specify endpoints for input and output channels. See bellow. It seems that the channel specified second is always reported as an error.

 o2-dpl-raw-proxy --session default -b --dangling-outputs-policy fairmq --channel-config name=readout-proxy,type=pull,method=connect,address=ipc:///tmp/stfb-to-dpl,transport=shmem,rateLogging=1 name=downstream,type=push,method=bind,address=ipc:///tmp/dpl-to-stfs,rateLogging=1,transport=shmem
...
[299132:internal-dpl-output-proxy]: [16:51:33][ERROR] Unhandled exception reached the top of main: no corresponding output channel found for input 'downstream', device shutting down.
[299132:internal-dpl-output-proxy]: [16:51:33][INFO] Process 299132 is exiting.
[INFO] QUIT_REQUESTED

@ktf
Copy link
Copy Markdown
Member Author

ktf commented Sep 24, 2020

I will check. Can you verify that with the default path it works? I think you can force the folder with $TMPDIR.

@ktf ktf deleted the fix-output-proxy branch September 24, 2020 16:25
@ktf
Copy link
Copy Markdown
Member Author

ktf commented Sep 24, 2020

The actual syntax is:

stage/bin/o2-dpl-raw-proxy --session default --dangling-outputs-policy fairmq --readout-proxy '--channel-config name=readout-proxy,type=pull,method=connect,address=ipc:///tmp/stfb-to-dpl,transport=shmem,rateLogging=1' --internal-dpl-output-proxy '--channel-config name=downstream,type=push,method=bind,address=ipc:///tmp/dpl-to-stfs,rateLogging=1,transport=shmem'

I.e. you need to specify via --internal-dpl-output-proxy '...' the options that pertain only to that device.

@ironMann
Copy link
Copy Markdown
Contributor

@ktf Thanks! this works. lets continue at O2-588

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants