[GitHub] thrift issue #1497: Do not call workSocket() in TNonblockigServer without en...

2018-03-11 Thread bgedik
Github user bgedik commented on the issue:

https://github.com/apache/thrift/pull/1497
  
@jeking3 There is already a Jira item: 
https://issues.apache.org/jira/browse/THRIFT-4465

Btw, it makes sense that the fix resolves the framed transport failures. 
Because the bug was about the transition from the frame size reading to the 
frame content reading.


---


[jira] [Commented] (THRIFT-4465) TNonblockingServer throwing THRIFT LOGGER: TConnection::workSocket(): THRIFT_EAGAIN (unavailable resources)

2018-03-11 Thread ASF GitHub Bot (JIRA)

[ 
https://issues.apache.org/jira/browse/THRIFT-4465?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16394659#comment-16394659
 ] 

ASF GitHub Bot commented on THRIFT-4465:


Github user bgedik commented on the issue:

https://github.com/apache/thrift/pull/1497
  
@jeking3 There is already a Jira item: 
https://issues.apache.org/jira/browse/THRIFT-4465

Btw, it makes sense that the fix resolves the framed transport failures. 
Because the bug was about the transition from the frame size reading to the 
frame content reading.


> TNonblockingServer throwing THRIFT LOGGER: TConnection::workSocket(): 
> THRIFT_EAGAIN (unavailable resources)
> ---
>
> Key: THRIFT-4465
> URL: https://issues.apache.org/jira/browse/THRIFT-4465
> Project: Thrift
>  Issue Type: Bug
>  Components: C++ - Library
>Affects Versions: 0.11.0
>Reporter: Buğra Gedik
>Priority: Critical
>
> Once I upgraded to 0.11.0, I'm getting the following error occasionally:
> THRIFT LOGGER: TConnection::workSocket(): THRIFT_EAGAIN (unavailable 
> resources)
> I tracked this to the following change: 
> [https://github.com/apache/thrift/commit/808d143245f4f5c30600fab31cf9db854cbf5b48#diff-fe8fec8ec38ea35df64cfcc305e3ab08]
>   
> {code:java}
> // Work the socket right away
> - // workSocket();
> + workSocket();
> {code}
> While adding SSL support, @dthaluru has re-activated the above line. From my 
> own testing, this causes occasional THRIFT_EAGAIN exceptions. It seems like 
> this is due to calling workSocket() too early and the socket gets a read call 
> in non-blocking mode before it has data.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[GitHub] thrift issue #1497: Do not call workSocket() in TNonblockigServer without en...

2018-03-11 Thread jeking3
Github user jeking3 commented on the issue:

https://github.com/apache/thrift/pull/1497
  
Cool so that last test run was without the fix (I thought it had it, but it 
only had my fixes to TestServer.cpp), and adding your fix seems to have taken 
care of the header failures somehow:
```
root@1dcb0ce83732:/thrift/src# test/test.py --server cpp --client cpp 
--regex='.*framed.*-ip.*'
Apache Thrift - Integration Test Suite
Sun Mar 11 19:39:18 2018

===
server-client:  protocol: transport:   result:
cpp-cpp compact   framed-ipsuccess
cpp-cpp multi-binary  framed-ip-sslsuccess
cpp-cpp compact   framed-ip-sslsuccess
cpp-cpp multi-binary  framed-ipsuccess
cpp-cpp multihframed-ipsuccess
cpp-cpp multihframed-ip-sslsuccess
cpp-cpp multih-header framed-ip-sslsuccess
cpp-cpp multih-header framed-ipsuccess
cpp-cpp multij-json   framed-ip-sslsuccess
cpp-cpp multij-json   framed-ipsuccess
cpp-cpp json  framed-ip-sslsuccess
cpp-cpp json  framed-ipsuccess
cpp-cpp multicframed-ipsuccess
cpp-cpp multicframed-ip-sslsuccess
cpp-cpp multic-compactframed-ip-sslsuccess
cpp-cpp multic-compactframed-ipsuccess
cpp-cpp multij-json   framed-ip-sslsuccess
cpp-cpp multij-json   framed-ipsuccess
cpp-cpp multijframed-ip-sslsuccess
cpp-cpp multijframed-ipsuccess
cpp-cpp headerframed-ip-sslsuccess
cpp-cpp headerframed-ipsuccess
cpp-cpp multic-compactframed-ip-sslsuccess
cpp-cpp multic-compactframed-ipsuccess
cpp-cpp multi-binary  framed-ip-sslsuccess
cpp-cpp multi-binary  framed-ipsuccess
cpp-cpp multi framed-ipsuccess
cpp-cpp multi framed-ip-sslsuccess
cpp-cpp multih-header framed-ip-sslsuccess
cpp-cpp multih-header framed-ipsuccess
cpp-cpp binaryframed-ipsuccess
cpp-cpp binaryframed-ip-sslsuccess

===
No unexpected failures.
```


---


[GitHub] thrift issue #1497: Do not call workSocket() in TNonblockigServer without en...

2018-03-11 Thread jeking3
Github user jeking3 commented on the issue:

https://github.com/apache/thrift/pull/1497
  
You need to create a Jira ticket in the THRIFT project 
(https://issues.apache.org/jira/projects/THRIFT/issues) that describes the bug 
and resolution so that I can merge it.

---

I was able to test these changes out by making some changes to the cpp 
TestServer for crosstest which I will check in today.  I changed my local 
tests.json file to add "--server-type=nonblocking" to each cpp server and 
changed some code to make additional cases work:

```
root@8d560c4cc0fa:/thrift/src# test/test.py --server cpp --client cpp 
--regex='.*framed.*-ip.*'
Apache Thrift - Integration Test Suite
Sun Mar 11 14:49:02 2018

===
server-client:  protocol: transport:   result:
cpp-cpp compact   framed-ipsuccess
cpp-cpp multi-binary  framed-ipsuccess
cpp-cpp compact   framed-ip-sslsuccess
cpp-cpp multihframed-ip-sslsuccess
cpp-cpp multihframed-ipsuccess
cpp-cpp multi-binary  framed-ip-sslsuccess
cpp-cpp multih-header framed-ipsuccess
cpp-cpp multih-header framed-ip-sslsuccess
cpp-cpp multij-json   framed-ip-sslsuccess
cpp-cpp multij-json   framed-ipsuccess
cpp-cpp json  framed-ipsuccess
cpp-cpp json  framed-ip-sslsuccess
cpp-cpp multicframed-ipsuccess
cpp-cpp multicframed-ip-sslsuccess
cpp-cpp multic-compactframed-ipsuccess
cpp-cpp multic-compactframed-ip-sslsuccess
cpp-cpp multij-json   framed-ip-sslsuccess
cpp-cpp multij-json   framed-ipsuccess
cpp-cpp headerframed-ip
failure(-6)
cpp-cpp multijframed-ipsuccess
cpp-cpp multijframed-ip-sslsuccess
cpp-cpp headerframed-ip-ssl
failure(-6)
cpp-cpp multic-compactframed-ipsuccess
cpp-cpp multic-compactframed-ip-sslsuccess
cpp-cpp multi-binary  framed-ip-sslsuccess
cpp-cpp multi-binary  framed-ipsuccess
cpp-cpp multi framed-ip-sslsuccess
cpp-cpp multi framed-ipsuccess
cpp-cpp multih-header framed-ip-sslsuccess
cpp-cpp multih-header framed-ipsuccess
cpp-cpp binaryframed-ip-sslsuccess
cpp-cpp binaryframed-ipsuccess

===
```
(I think you can ignore the header failures)


---


[jira] [Created] (THRIFT-4515) Gracefully shutdown cross-test servers to fully test teardown

2018-03-11 Thread James E. King, III (JIRA)
James E. King, III created THRIFT-4515:
--

 Summary: Gracefully shutdown cross-test servers to fully test 
teardown
 Key: THRIFT-4515
 URL: https://issues.apache.org/jira/browse/THRIFT-4515
 Project: Thrift
  Issue Type: Improvement
  Components: Test Suite
Affects Versions: 0.11.0
Reporter: James E. King, III


The cross test suite kills the server process after the client is done, see 
test/crosstest/run.py:_scoped, the process is killed.  In the C++ TestServer 
code at the end of main it sits in a TIGHT while loop unnecessarily causing CPU 
usage and slowing down the system.

There should be a signal (like SIGUSR1) that each server waits for, and on 
receiving that signal stops the thrift server cleanly.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (THRIFT-4515) Gracefully shutdown cross-test servers to fully test teardown

2018-03-11 Thread James E. King, III (JIRA)

 [ 
https://issues.apache.org/jira/browse/THRIFT-4515?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

James E. King, III reassigned THRIFT-4515:
--

Assignee: James E. King, III

> Gracefully shutdown cross-test servers to fully test teardown
> -
>
> Key: THRIFT-4515
> URL: https://issues.apache.org/jira/browse/THRIFT-4515
> Project: Thrift
>  Issue Type: Improvement
>  Components: Test Suite
>Affects Versions: 0.11.0
>Reporter: James E. King, III
>Assignee: James E. King, III
>Priority: Major
>
> The cross test suite kills the server process after the client is done, see 
> test/crosstest/run.py:_scoped, the process is killed.  In the C++ TestServer 
> code at the end of main it sits in a TIGHT while loop unnecessarily causing 
> CPU usage and slowing down the system.
> There should be a signal (like SIGUSR1) that each server waits for, and on 
> receiving that signal stops the thrift server cleanly.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[GitHub] thrift issue #1497: Do not call workSocket() in TNonblockigServer without en...

2018-03-11 Thread jeking3
Github user jeking3 commented on the issue:

https://github.com/apache/thrift/pull/1497
  
What's the Jira ticket ID for this work?


---


[GitHub] thrift issue #1497: Do not call workSocket() in TNonblockigServer without en...

2018-03-11 Thread jeking3
Github user jeking3 commented on the issue:

https://github.com/apache/thrift/pull/1497
  
Wow, haven't seen a green build in a while.  Of course, none of the cross 
tests exercise nonblocking code. :(  Would be nice to add this as another 
matrix option.


---


[jira] [Assigned] (THRIFT-4301) configuring --without-python and --without-py3 still invokes py3 tests in make cross

2018-03-11 Thread James E. King, III (JIRA)

 [ 
https://issues.apache.org/jira/browse/THRIFT-4301?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

James E. King, III reassigned THRIFT-4301:
--

Assignee: (was: James E. King, III)

> configuring --without-python and --without-py3 still invokes py3 tests in 
> make cross
> 
>
> Key: THRIFT-4301
> URL: https://issues.apache.org/jira/browse/THRIFT-4301
> Project: Thrift
>  Issue Type: Bug
>  Components: Test Suite
>Affects Versions: 0.10.0
> Environment: docker:ubuntu
>Reporter: James E. King, III
>Priority: Major
>
> I ran configure using --without-py3 and the make cross test command line 
> included py3 in the server and client.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Resolved] (THRIFT-4085) Add .NET Core to the make cross standard test suite

2018-03-11 Thread James E. King, III (JIRA)

 [ 
https://issues.apache.org/jira/browse/THRIFT-4085?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

James E. King, III resolved THRIFT-4085.

   Resolution: Fixed
 Assignee: James E. King, III
Fix Version/s: 0.12.0

This was resolved by https://github.com/apache/thrift/pull/1469

> Add .NET Core to the make cross standard test suite
> ---
>
> Key: THRIFT-4085
> URL: https://issues.apache.org/jira/browse/THRIFT-4085
> Project: Thrift
>  Issue Type: Improvement
>  Components: Test Suite
>Affects Versions: 0.10.0
> Environment: Docker Images, Travis CI
>Reporter: James E. King, III
>Assignee: James E. King, III
>Priority: Major
> Fix For: 0.12.0
>
>
> .NET Core is not part of a standard make cross.  It should be enabled and run 
> with every build once there is a docker image with it inside.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)