Re: Building qpid proton proactor on linux 2.6...

2018-09-06 Thread Cliff Jansen
Have you tried the libuv proactor implementation for Proton-C?  See
qpid-proton/c/CMakeLists.txt.

The current release of libuv claims to be fully supported on "Linux >=
2.6.32 with glibc >= 2.12".

If libuv works for you, that might be the easiest solution.

On Thu, Sep 6, 2018 at 4:26 AM,   wrote:
>
> Hi,
>
> I am trying to port a project which was implemented using qpid-proton-cpp 
> from a fairly recent Fedora linux kernel to an older RHEL linux 2.6.
>
> The older kernel is required because the end user unfortunately only runs the 
> older linux kernel, and due to company policy they cannot upgrade in the near 
> future.
>
> Unfortunately when we try to build on linux kernel 2.6 there are dependency 
> issues which relate to the older kernel not including support for timerfd 
> which is used in qpid-proton-proactor.
>
> We did also encounter some other build issues with some of the cpp templates 
> in proton-cpp due to bugs in the older GNU compiler version which we fixed 
> using workarounds, but getting the proactor to work on the older kernel looks 
> like it will be less than trivial without timerfd.
>
> I do see what appears to be an older implementation for IO etc named reactor 
> as opposed to proactor in the proton c implementations, but unfortunately the 
> cpp container implementation which we are using does not seem to have an 
> implementation using reactor instead of proactor?
>
> Is there any way around this - is it possible to use container without having 
> timerfd support in the kernel?
>
> Performance isn't important for us in this so a simple socket read loop would 
> be fine - just I am not sure how to shoehorn that into what we have already 
> implemented using container...?
>
> Thanks
> N
>
> -
> To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org
> For additional commands, e-mail: users-h...@qpid.apache.org
>

-
To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org
For additional commands, e-mail: users-h...@qpid.apache.org



[RESULT] [VOTE] Release Apache Qpid Proton 0.25.0

2018-09-06 Thread Robbie Gemmell
There were 5 binding +1 votes, and no other votes received. The vote has passed.

I will add the files to the dist release repo and create the final tag
shortly. The website will be updated after the release has had time to
sync to the mirrors.

Robbie

-
To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org
For additional commands, e-mail: users-h...@qpid.apache.org



Re: Building qpid proton proactor on linux 2.6...

2018-09-06 Thread Ted Ross
timerfd can be fairly easily replaced with a socketpair, where one
socket is used in the poll/select and the other is used to signal
activation.  To wake up the poll/select, write a character into the
signal socket.  You will need to be sure to read the characters out of
the select socket to make sure you don't get a full buffer and
back-pressure.

-Ted

On Thu, Sep 6, 2018 at 7:26 AM,   wrote:
>
> Hi,
>
> I am trying to port a project which was implemented using qpid-proton-cpp 
> from a fairly recent Fedora linux kernel to an older RHEL linux 2.6.
>
> The older kernel is required because the end user unfortunately only runs the 
> older linux kernel, and due to company policy they cannot upgrade in the near 
> future.
>
> Unfortunately when we try to build on linux kernel 2.6 there are dependency 
> issues which relate to the older kernel not including support for timerfd 
> which is used in qpid-proton-proactor.
>
> We did also encounter some other build issues with some of the cpp templates 
> in proton-cpp due to bugs in the older GNU compiler version which we fixed 
> using workarounds, but getting the proactor to work on the older kernel looks 
> like it will be less than trivial without timerfd.
>
> I do see what appears to be an older implementation for IO etc named reactor 
> as opposed to proactor in the proton c implementations, but unfortunately the 
> cpp container implementation which we are using does not seem to have an 
> implementation using reactor instead of proactor?
>
> Is there any way around this - is it possible to use container without having 
> timerfd support in the kernel?
>
> Performance isn't important for us in this so a simple socket read loop would 
> be fine - just I am not sure how to shoehorn that into what we have already 
> implemented using container...?
>
> Thanks
> N
>
> -
> To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org
> For additional commands, e-mail: users-h...@qpid.apache.org
>

-
To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org
For additional commands, e-mail: users-h...@qpid.apache.org



qpid-proton-cpp decoder.cpp - possible bug?

2018-09-06 Thread nmk
Hi,

Around line 180, decoder.cpp has the following:


decoder& decoder::operator>>(scalar& x) {
    internal::state_guard sg(*this);
    type_id got = pre_get();
  
    if (!type_id_is_scalar(got))
        throw conversion_error("expected scalar, found "+type_name(got));

    x.set(pn_data_get_atom(pn_object()));
    sg.cancel();                // No error, no rewind
    return *this;
}


When our client code is talking to a 3rd party system's broker, we find that 
the scalar in argument "x" is coming through from the other party as type NULL 
in some cases - which causes the throw in the above method to get triggered and 
then disconnects us from the broker.

However, if we comment out the if/throw from the code in decoder.cpp, 
everything then appears to be workding 100% correctly.

Is there a correct way to do this without removing the throw? - it seems that 
if the check is there it must have a purpose, so by removing the check I am 
probably opening myself up to some other issues further down the line?

Thanks
N

-
To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org
For additional commands, e-mail: users-h...@qpid.apache.org



Building qpid proton proactor on linux 2.6...

2018-09-06 Thread nmk


Hi,

I am trying to port a project which was implemented using qpid-proton-cpp from 
a fairly recent Fedora linux kernel to an older RHEL linux 2.6.

The older kernel is required because the end user unfortunately only runs the 
older linux kernel, and due to company policy they cannot upgrade in the near 
future.

Unfortunately when we try to build on linux kernel 2.6 there are dependency 
issues which relate to the older kernel not including support for timerfd which 
is used in qpid-proton-proactor.

We did also encounter some other build issues with some of the cpp templates in 
proton-cpp due to bugs in the older GNU compiler version which we fixed using 
workarounds, but getting the proactor to work on the older kernel looks like it 
will be less than trivial without timerfd.

I do see what appears to be an older implementation for IO etc named reactor as 
opposed to proactor in the proton c implementations, but unfortunately the cpp 
container implementation which we are using does not seem to have an 
implementation using reactor instead of proactor?

Is there any way around this - is it possible to use container without having 
timerfd support in the kernel?

Performance isn't important for us in this so a simple socket read loop would 
be fine - just I am not sure how to shoehorn that into what we have already 
implemented using container...?

Thanks
N

-
To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org
For additional commands, e-mail: users-h...@qpid.apache.org