Commit Graph

479 Commits

Author SHA1 Message Date
Alex Volanis
7004a61e44 THRIFT-(1418|1507|3983|4120|4178|4259|4294): Multiple issues
Client: java

THRIFT-4294: Java Configure Fails for Ant >= 1.10
THRIFT-4259: Thrift does not compile due to Ant Maven task errors
THRIFT-4178: Java libraries missing from package when using cmake
THRIFT-3983: libthrift is deployed on central with pom packaging
             instead of jar
THRIFT-1507: Maven can't download resource from central when behind
             a proxy and won't use local repository
THRIFT-1418: Compiling Thrift from source: Class
             org.apache.tools.ant.taskdefs.ConditionTask doesn't
             support the nested "typefound" element

Refactor CMake install hook to allow using "sudo make install/fast"
which avoids the THRIFT-1507 and THRIFT-1418 issues.

New Gradle based build system for Thrift Java Library

* Add Gradle 4.4.1 Wrapper artifacts to enable builds
Using the Gradle Wrapper helps normalize the builds on all platforms
so we use a consistent build tool independent of package managers.

The Gradle build logic was partitioned into multiple specific
scripts to simplify understanding and maintenance of the build.

This is now hooked into CMake and Autoconf processing steps
and can build/test/publish to Maven. The README.md was updated
to illustrate the new build options and add some documentation
on the requirements for Maven publication.

Cleaned up the CMake files to reduce reliance on file globbing
which is known to cause confusion when multiple users contribute.

* Fix two minor issues in Javadoc and unit test

Return values were undeclared in Javadoc
Test was asserting on the wrong test object instance

* Create simple runner scripts for cross-check

Using Gradle as a java execution wrapper is too heavy.
I simplified the test client/server execution by using a
three generated scripts in the build directory direcly
callable by the cross-check test harness.

* Cleanup the remaining Ant build scripts

Pulled the Maven Ant task properties out of the Java build
since they are no longer used there.
Deleted the no longer used build.xml and build.properties
files from the Java build.
Made each Ant build own the Maven Ant task details in their
build.properties file.

* Fix the build issue with Java SSL in the ubuntu-trusty container

The latest Trusty JDK7 builds seem to have encountered this issue
because the OpenJDK removed the SunEC algorithms.

* Update the developer info as requested in review

Use the generic Apache Thrift developer list for contact information

* Add Clover Code coverage for easy access by developers

Clover plugin for Gradle was applied and configured which enables
code coverage reports to be available on demand via a command line
option. The documentation in the README.md was enhanced to give
the details of this change and how to take advantage of it.
2018-01-24 12:28:55 -05:00
Stephane Landelle
dda41f37cf Fix generated maven packaging
Client: java

This closes #1430
This closes #1456
This closes #1442
2018-01-04 09:28:19 -05:00
Nobuaki Sukegawa
026c9d032c THRIFT-3686 Java processor should report internal error on uncaught exception
Client: java

This closes #904
This closes #1428
2017-11-30 12:43:26 -05:00
James E. King, III
58402ff6a7 THRIFT-2013: add multiplex server and client test support to cpp language
add multiplex client test support to csharp and java languages
fix a bug in the server-side header protocol factory
fix a bug in the cpp SSL server socket implementation
remove unnecessary sleep in cpp server testOneway

This closes #1414
2017-11-18 21:10:40 -05:00
itegel
847ecf3c1d THRIFT-4378: add set method for stopTimeoutUnit in TThreadPoolServer java lib
modify timeout unit in createDefaultExecutorService from hard coding to read from args
Client: java

This closes #1409
2017-11-02 05:53:09 -07:00
James E. King, III
533405e3f8 THRIFT-4376: fix more high impact coverity defects
Led to the discovery of incorrect lua socket error handling.

This closes #1405
2017-10-29 07:05:47 -04:00
christianc
a39ba7f294 THRIFT-4362 check "read length" in readStringBody(int)
Client: Java

This closes #1398
2017-10-25 08:40:51 -04:00
James E. King, III
9ce1fd9aee THRIFT-4049, THRIFT-4053: when skipping, if field type is invalid, throw a
protocol exception of invalid data instead of doing nothing which could
cause a loop
Client: C++, java

This closes #1371
2017-09-24 05:59:35 -07:00
Dmitry Volodin
28eb9d98ef THRIFT-4233: Make THsHaServer.invoker available (get method only) in inherited classes
Client: hs

This closes #1366
2017-09-21 14:55:50 -07:00
Deniss Afonin
d3cda9c2f3 THRIFT-3357: Generate EnumSet/EnumMap where elements/keys are enums
Client: Java

This closes #1253
2017-09-21 13:57:09 -07:00
Johnny-Liao
9ffb41d94c THRIFT-4251: Fix JDK Epoll Bug in Thrift of TThreadedSelectorServer model.
Client: Java

This closes #1313
2017-09-21 12:48:48 -07:00
Thomas Petazzoni
1744cdcb67 configure.ac, Makefile.am: introduce THRIFT variable to support cross-compilation
The thrift build system currently assumes that the thrift compiler is
always available in $(top_builddir)/compiler/cpp/thrift. However, in a
cross-compilation context, this location contains the thrift compiler
built for the target... which obviously will not run on the build
machine.

In order to support such cross-compilation situation, we introduce the
THRIFT variable as a an argument for the configure script (using
AC_ARG_VAR). If not specified, it defaults to the existing value of
using compiler/cpp/thrift from the build directory, but it can be
overridden when calling ./configure.

Note that $(top_builddir) cannot be used within the configure script,
so we simply use `pwd`, which is the same as the top_builddir.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>

This closes #1336
This closes #1350
2017-09-09 07:50:54 -07:00
gx9702
d862c2fd7b THRIFT-4316: fix read size in TByteBuffer.java
Client: java

This closes #1290
2017-09-05 21:33:42 -07:00
Roshan George
3966a56a87 THRIFT-4193 Lower the default maxReadBufferBytes for non-blocking servers
Client: Java
Patch: Roshan George <rgeorge@liveramp.com>

This closes #1264
2017-05-11 01:26:22 +02:00
Deniss Afonin
3311a9b237 THRIFT-4177 fix java deep copy
Client: Java

Java compiler produces deep copy constructor that could make shallow copy accidentally.

This closes #1254
2017-04-19 12:38:14 -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
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
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
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
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
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
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
Tom Davis
34bd992bc3 THRIFT-4062 Remove debug print from TServiceClient
Client: Java
Patch: Tom Davis <tom@recursivedream.com>

This closes #1173
2017-01-31 21:31:58 +01:00
James E. King, III
de3e17ad39 THRIFT-3854 add a way in java to clear TFramedTransport read buffers
Client: Java
Patch: Chris Lockfort <clockfort@palantir.com>

This closes #1164
This closes #1081
2017-01-27 23:36:31 -05:00
James E. King, III
cf25489402 Build fails using Java 1.8 with Ant < 1.9
Client: Java
Patch: Adinata <mail.dieend@gmail.com>

This closes #1060
2017-01-25 20:34:04 -05:00
James E. King, III
55f976e0de THRIFT-4040 Add real cause of TNonblockingServerSocket error to exception
Client: Java
Patch: Dmitry Roenko <savraz@gmail.com>

This closes #1116
2017-01-23 09:06:27 -05:00
BCG
7ab125a253 THRIFT-3301 Java generated code uses imports that can lead to class name collisions with IDL defined types
Client: Java
Patch: Benjamin Gould

This closes #1120
2016-12-03 01:00:52 +01:00
Gary Gregory
84d6af4cf9 THRIFT-3964 Unsupported mechanism type ????? due to dependency on default OS-dependent charset
Client: Java
Patch: Gary Gregory <ggregory@apache.org>

This closes #1134
2016-11-19 16:56:31 +01:00
Gary Gregory
fd832242bb THRIFT-3962 Ant build.xml broken on Windows for Java library
Client: Java
Patch: Gary Gregory <ggregory@apache.org>

This closes #1126
2016-11-10 22:56:47 +01:00
Nobuaki Sukegawa
b0dadbde6a THRIFT-3902 TFramedTransport.open throws NullPointerException
This closes #1105
2016-10-03 01:04:31 +09:00
Nobuaki Sukegawa
73d16378c5 More make dist entries 2016-03-19 23:53:05 +09:00
Nobuaki Sukegawa
400ae6e76e THRIFT-3449 TBaseAsyncProcessor fb.responseReady() never called for oneway functions 2016-03-18 23:53:41 +09:00
Tyler Treat
1d4a4393c9 THRIFT-3743 Java JSON protocol left in incorrect state when an exception is thrown during read or write operations
This closes #952
2016-03-18 22:37:02 +09:00
Josh Elser
b3a42dd050 THRIFT-3479 Avoid returning a message to a client on TException. 2016-03-18 22:37:02 +09:00
Nobuaki Sukegawa
a8765276d8 THRIFT-3680 Java async processor fails to notify errors to clients
This closes #903
2016-03-18 22:35:39 +09:00
Nobuaki Sukegawa
c3072227c0 Follow-up THRIFT-3112: key.cancel when error 2016-03-18 22:34:38 +09:00
John Sirois
bd964c7f34 THRIFT-3112 [Java] AsyncMethodCallback should be typed in generated AsyncIface
The parametrization brings the existing actual parametrization with
client call implementation objects to the fore and so this change
also fixes that parametrization to be a simple parametrization over
the return type as is done in the server-side AsyncProcessor code.

NB: This is a breaking change in both generated code and the client
libs.

This closes #840
2016-03-18 22:33:38 +09:00
Nobuaki Sukegawa
ce283d5664 THRIFT-3679 Add stdout log to testBinary in Java test server
Client: Test (Java)
Patch: Nobuaki Sukegawa

This closes #899
2016-02-27 16:55:55 +09:00
Nobuaki Sukegawa
3b4c5fadfd THRIFT-3678 Fix javadoc errors on JDK 8
Client: Java
Patch: Nobuaki Sukegawa

This closes #898
2016-02-27 16:55:55 +09:00
Nobuaki Sukegawa
aa7d0d5f2a THRIFT-3677 Improve CMake Java build
This closes #897
2016-02-27 16:55:55 +09:00
Roshan George
949e242ec8 THRIFT-2877 Generate hashCode using primitives and static utility methods
Client: Java
Author: Roshan George <roshan@arjie.com>

The TBaseHelper.hashCode methods are the Java 8 implementations of hashCode for
those types.

This closes #448
2016-02-14 22:47:19 +09:00
Jens Geyer
4733c4c535 THRIFT-3605 Have the compiler complain about invalid arguments and options
Client: Compiler (general)
Patch: Jens Geyer

This closes #862
2016-02-14 11:10:42 +01:00
Marc Breslow
3bf3ebfec3 THRIFT-2157 generated code would cause ClassCastException
Client: Java
Patch: Marc Breslow <marc.breslow@devfactory.com>

This closes #822
2016-01-28 23:05:03 +01:00
Nobuaki Sukegawa
fc07084ada THRIFT-3542 Add length limit support to Java test server
This closes #788
2016-01-13 20:25:26 +09:00
BCG
3ab9f2b5ee THRIFT-3521 : TSimpleJSONProtocolTest is not deterministic (fails when run on JDK 8)
Client: Java Test
Patch: BCG

This closes #772
2016-01-06 11:54:53 +09:00
BCG
2aaae8a604 THRIFT-3486 - Java generated getFieldValue is incompatible with setFieldValue for binary values
Client: Java
Patch: BCG

This closes #743
2016-01-03 02:55:16 +09:00
Tom Lee
4f6138b7a2 THRIFT-3484 Consolidate temporary buffers in Java's TCompactProtocol
Client: Java
Patch: Tom Lee

This closes #738
2015-12-11 00:18:01 +09:00
Tom Lee
9d0f752abc THRIFT-3432 Add the TByteBuffer transport for Java
Client: Java
Patch: Tom Lee

This closes #705
2015-12-11 00:18:01 +09:00
Keith Turner
3143bfbe15 THRIFT-3478 restore method to THsHaServer
This closes #735
2015-12-08 20:11:20 +01:00
Tom Lee
9caf6d63c6 THRIFT-3435 Separate package for fullcamel thrift
Client: Java Test
Patch: Tom Lee

This closes #708
2015-12-06 10:11:19 +09:00