Changli Gao
257dceff5e
THRIFT-4160 (pt. 2): Fix wrong numActiveProcessors_ when failing to notify any IO thread
...
Client: cpp
This closes #1239
We should decrease numActiveProcessors_ when failing to notify any
IO thread.
2017-04-05 19:29:24 -04:00
James E. King, III
7f5a8c28bc
THRIFT-4164: update openssl cleanup to match current requirements and document TSSLSocketFactory lifetime requirements
...
Client: cpp
This closes #1235
2017-04-04 09:36:38 -04:00
James E. King, III
00d4252392
THRIFT-3978: tighten up pthread mutex implementation, removing asserts and replacing them with exceptions
...
Client: cpp
This closes #1228
2017-04-04 09:32:45 -04:00
Changli Gao
7e7a1a7c10
TSocket: Don't close connections when failing to read/write
...
Client: cpp
Sockets maybe registered to a event base of libevent, so the
following epoll_ctl(2) may fail due to EBADF, or may
delete other sockets. Chaos occurs.
This closes #1217
2017-04-02 23:37:14 -04:00
Changli Gao
bf42d55189
THRIFT-4161: TNonblockingServer: Fix using uninitialized event_
...
Client: cpp
When there are more than one IO threads, and we have failed to notify
one IO threads, then we have to close the connection. But the event_
in that connection isn't initialized. We should use setIdle() instead.
This closes #1216
2017-04-02 23:30:04 -04:00
Changli Gao
d4fa706dca
THRIFT-4160: Fix use closed(freed) connections in non-blocking server
...
Client: cpp
When failing to add tasks into the thread manager, we close the
corresponding connections, then set the flags of these connections,
which have been already freed.
We should decrease the number of active processors.
This closes #1211
2017-04-02 23:24:54 -04:00
Chris Vasselli
df3223c85d
THRIFT-3859: Add support for Unix Domain Sockets to TSocketServer and TSocketTransport.
...
Client: cocoa
TSocketServer and TSocketTransport have been refactored to support sockets created using either a port or a path.
Existing behavior for port-based socket transport is unchanged by this commit.
This closes #1031
2017-04-02 23:14:29 -04:00
Jens Geyer
90b6304901
THRIFT-4157 outdated readme about Haxe installation on Linux
...
Client: Haxe
Patch: Jens Geyer
This closes #1234
2017-04-02 16:06:08 +02:00
James E. King, III
c6ded922c5
THRIFT-4154: properly close socket whether it is persistent or not on close()
...
Client: php
This closes #1011
This closes #1233
2017-04-01 23:26:54 -04:00
James E. King, III
d5536d1ea0
THRIFT-3730: go server errors are logged twice
...
Client: go
Patch: zhujun2006 <stone1342006 at gmail dot com>
This closes #940
2017-04-01 11:21:12 -04:00
Jim Apple
117a5cca77
THRIFT-4138: Remove undefined behavior imported from Boost
...
Client: C++
There is undefined behavior in boost::lexical_cast that was fixed in
https://github.com/boostorg/lexical_cast/issues/21 , but that fix is
only available in recent Boost releases. This patch removes all uses
of lexical_cast instead.
That removes the last undefined behavior, so this patch also makes
ubsan.sh unconditionally fail on undefined behavior.
This closes #1232
2017-04-01 10:51:48 -04:00
James E. King, III
5c3de6d3d2
THRIFT-4140: fix unsafe call to gmtime
...
Client: C++
Patch: Adriaan Schmidt <adriaan.schmidt@siemens.com>
This closes #1231
2017-04-01 10:46:25 -04:00
tpcwang
bede86a032
THRIFT-3944 TSSLSocket has dead code in checkHandshake
...
Client: C++
This closes #1110
2017-04-01 10:14:16 -04:00
James E. King, III
7bc943196d
THRIFT-4151: disable pthread concurrency analysis code in standard builds
...
Client: C++
This closes #1229
2017-03-31 21:25:20 -04:00
Chao Sun
c063b30ecd
THRIFT-4147: Rust: protocol should accept transports with non-static lifetime
...
Client: rs
This closes #1226
2017-03-30 17:28:58 -04:00
Flier Lu
1187060183
THRIFT-4113: export thrift::mem::TBufferTransport
...
Client: rs
This closes #1218
2017-03-30 17:25:10 -04:00
James E. King, III
177c37ce85
THRIFT-4069: perl library cleanup - namespaces, versioning, exception fixes
...
Client: perl
This closes #1220
2017-03-30 17:09:04 -04:00
kufd
1360270eb8
THRIFT-4126: implement required fields validation in php extension when validate compiler option is enabled
...
Client: php
This closes #1215
2017-03-30 16:42:11 -04:00
Jim Apple
147c2849af
THRIFT-2026: Eliminate some undefined behavior in C/C++
...
Clients: glib, C++
Patch: Jim Apple <jbapple-impala@apache.org>
This closes #1214
This patch fixes some undefined behavior were found using Clang's
UndefinedBehaviorSanitizer (UBSan). To check for undefined behavior,
run /build/docker/scripts/ubsan.sh. This is run during CI builds, as
well.
The examples of the types of undefined behavior fixed in this commit
are:
1. Enumerations exhibit undefined behavior when they have values
outside of a range dependent on the values of their enumerators, as
specified in C++14's chapter 7.2 ("Enumeration declarations"),
paragraph 8.
2. Left shift of negative values, used in zigzag encoding, is
undefined behavior. See 5.8 ("Shift operators"), paragraph 2 for
C++ and 6.5.7 ("Bitwise shift operators"), paragraph 4 for C99 and
C11.
2017-03-25 08:16:18 -04:00
Jonathan Pearlin
6c08ac72c6
THRIFT-4130: Release connection back to managed pool.
...
Client: C++
This closes #1212
2017-03-22 20:33:20 -04:00
James E. King, III
847fae9388
THRIFT-3959: document that the go simple server is not simple
...
Client: go
Patch: JodeZer <jeffery1993@hotmail.com>
This closes #1213
2017-03-22 15:17:30 -04:00
Changli Gao
75386db8c0
THRIFT-4129: Fix fd leak when failing to dispatch new connections
...
Client: C++
This closes #1210
2017-03-22 15:03:37 -04:00
Yao Jin
6582757752
THRIFT-4029: add MANIFEST.in to include the extension files
...
Client: py
This closes #1206
2017-03-10 06:24:31 -05:00
James E. King, III
07f59971bd
THRIFT-4081: appveyor retooling - added mingw64 build as a second job to the CI build process
...
This closes #1205
2017-03-10 06:18:33 -05:00
Gonzalo Aguilar Delgado
b79396f799
THRIFT-4108: c_glib ssl implementation fixes - remove global ssl context and more
...
Client: glib
This closes #1208
2017-03-06 19:09:06 -05:00
Buğra Gedik
36d1b0dea5
THRIFT-3891 TNonblockingServer configured with more than one IO threads does not always return from serve() upon stop()
...
Client: C++
Patch: additional changes by jking@apache.org to improve the test and stop clean in all cases
This closes #1080
This closes #1196
2017-02-27 23:44:35 -05:00
Christopher Tubbs
5038466e5e
THRIFT-1805 Provide option for handling RTEs
...
Client: Java
Adds a Java option to the generator to generate code which lets Thrift
handle RuntimeExceptions from a service, and present them as
TApplicationException to the client.
This closes #1186
2017-02-27 23:38:44 -05:00
Yao Jin
e2bc972750
THRIFT-4102 remove useless code cause performance problem
...
Client: python
This closes #1203
2017-02-24 10:28:27 -05:00
Håkon Hitland
e66b8fcde3
THRIFT-3984 PHP7 extension causes segfault
...
The PHP 7 extension can sometimes free strings it does not own,
when serializing string map keys, or the name of called methods.
The latter case was somewhat migitated since the double-free has no
effect on interned strings.
Using ZVAL_STR_COPY instead of ZVAL_STR will increment the reference
count, making the following destructor call correct.
Fix memory leak in PHP 7
Fix memory leak when deserializing maps or sets.
zend_hash_update will add its own reference to the key, so we need to
destruct the key zval to not leak.
We don't need to destruct the value, the hash table will take ownership
of it.
This closes #1152
2017-02-23 11:43:45 -05:00
James E. King, III
37aac3bb58
THRIFT-3706: added cross test support for backwards compatible multiplexed server, added c_glib testBinary, fixed a number of glib object reference issues
...
Client: c_glib, java
This closes #1200
2017-02-22 12:46:04 -05:00
Adam Curtis
4361ecc3a1
THRIFT-3801 - Node Thrift client throws exception with multiplexer and responses that are bigger than a single buffer
...
Client: nodejs
This closes #773
This closes #1063
This closes #1202
2017-02-22 11:24:41 -05:00
D. Can Celasun
43fb34df28
THRIFT-4011 Sets of Thrift structs generate Go code that can't be serialized to JSON
...
Client: Go
Patch: D. Can Celasun <dcelasun@gmail.com>
This closes #1156
2017-02-21 22:32:49 +01:00
Gonzalo Aguilar Delgado
bc0082e023
THRIFT-3706: Implement multiplexed protocol client and test client for c_glib; test server for java; integrate into crosstest
...
Client: c_glib
This closes #1191
This closes #1199
2017-02-20 14:04:17 -05:00
James E. King, III
06190874c8
THRIFT-4084: Add a SSL/TLS negotiation check to crossfeature to verify SSLv3 is not active and that at least one of TLSv1.0 through 1.2 are accepted.
...
Client: csharp, d, go, nodejs, perl
This closes #1197
2017-02-20 08:52:11 -05:00
James E. King, III
239233afb6
THRIFT-4077: fix Appveyor warnings (VS2015) in PlatformSocket.h
...
Client: C++
This closes #1198
2017-02-20 08:04:12 -05:00
Vivek Jain
655b9b6ef8
THRIFT-3921: Add ostream operator<< functions for enums (working with THRIFT-4060)
...
Client: C++
This closes #1083
This closes #1194
2017-02-18 14:30:46 -05:00
Aleksey Pesternikov
400b346db2
THRIFT-2504: Add default processor to java multiplexed processor to handle older clients
...
Client: Java
This closes #114
This closes #1195
2017-02-18 13:58:21 -05:00
James E. King, III
377719c2d8
THRIFT-3272 (THRIFT-4066) fix perl SSL authentication support; fixed error in erlang test client using wrong key file and added CA
...
Client: Perl
This closes #1189
2017-02-15 14:33:20 -05:00
James E. King, III
b28160b9c3
THRIFT-2364: use oasis to build thrift for ocaml
...
Client: OCaml
Patch: Spiros Eliopoulos <seliopou@gmail.com>
This closes #1193
2017-02-15 14:23:44 -05:00
James E. King, III
0a660ee285
THRIFT-4084: only join threads if joinable
...
Client: cpp
Patch: Chris Grebeldinger <cgrebeld@gmail.com>
This closes #1188
2017-02-13 18:25:56 -05:00
James E. King, III
b4c190b6ea
THRIFT-4060 add better support in the cpp generator for custom ostream operators on structures
...
Client: C++
This closes #1172
2017-02-13 16:39:59 -05:00
James E. King, III
36628a28e9
THRIFT-3369 Provide SSL/TLS client for c_glib
...
Client: c_glib
Patch: Gonzalo Aguilar Delgado <gaguilar@level2crm.com>
This closes #1185
2017-02-13 15:25:41 -05:00
Nobuaki Sukegawa
e8ba7877ba
THRIFT-4026 TSSLSocket doesn't work with Python < 2.7.9
...
This closes #1166
2017-02-12 21:14:48 +09:00
Nobuaki Sukegawa
4626fd889d
THRIFT-3938 Python TNonblockingServer does not work with SSL
...
This closes #1100
2017-02-12 21:11:36 +09:00
James E. King, III
bff044667c
THRIFT-4075: better support for headers-only boost with mingw
...
Client: C++
This closes #1184
2017-02-11 01:18:03 -05:00
James E. King, III
e1832c3543
THRIFT-3622: remove auto_ptr use in the codebase because it is deprecated
...
Client: C++
This closes #1183
2017-02-10 13:03:10 -05:00
Swati Kumar
3590f1e7ca
THRIFT-4072 php: TCurlClient - Add the possibility to send custom headers
...
Client: php
This closes #1178
2017-02-09 15:12:47 -05:00
James E. King, III
9019b280ea
THRIFT-4065 fix SIGCHLD handling for perl ForkingServer and document restrictions
...
Client: perl
This closes #1176
2017-02-08 20:53:09 -05:00
James E. King, III
3a8bbbd4a6
THRIFT-3896 fix map type with string key can not access deserialized by php extension
...
Client: php
Patch: feidong@anjuke.com
This closes #1062
2017-02-06 12:57:21 -05:00
James E. King, III
a3d6be906b
THRIFT-4068 fix comment in java server socket code
...
Client: Java
Patch: pigbrain <hyundong.lee@nhnent.com>
This closes #1177
2017-02-04 00:23:55 -05:00